File Naming and Folder Structure for Product Images That Scale

A practical system for naming and storing product image files: folder structure, naming conventions, version control, and what to keep versus delete.
At ten products, a naming system feels like a chore. At a hundred, it saves you entire evenings. You know the scene: a client asks for the version from two days ago, and you're staring at a folder of four hundred files named "image (37) copy." Here's a file naming convention for product photos and a storage setup that lets you find the right shot in seconds.
Folder structure that survives scale
Keep it simple: one folder per project or client, a subfolder per product, and inside that, three buckets: source files, generations, and final. Source files are whatever the client handed you. Generations cover everything you produced, including the rejects. Final is what actually shipped. Dump all three into one pile and files start disappearing fast.
Naming files so you can actually find them
A good filename answers three questions without opening it: which product, what kind of shot, which version. Something like `honey-cream_hero_v2`. Adding a date helps if you're working the same product over weeks. What matters more than the exact format is consistency: use the same pattern across every project, so search works by typing a pattern instead of hunting for it by eye.
Versions instead of overwriting
Never save over an old file. The final shot a client asks to revert to is almost always the one that got overwritten. A new version means a new file with the number bumped up, and rejected variants don't get deleted right away. They move into a separate folder and stay there until the project wraps.
What to keep and what to clear out
Keep: client source files, finals, and prompts that produced a result worth reusing. Clear out: obvious rejects once a project is delivered, and in-progress variants older than a few months. Prompts are worth saving in a text file right next to the output, because recreating a good shot without the exact prompt on hand is nearly impossible, especially if the seed wasn't locked. There's more on that in our piece on reproducibility and seeds.
I'll admit I didn't build this system out of love for order. I built it after losing an approved version and having to recreate it from memory. A file system isn't about tidiness, it's insurance. If you're generating through Flami, it helps to keep outputs organized by product right from the card link.
FAQ
How should I organize folders for product shoots?
One folder per project or client, a subfolder per product, and inside that, three categories: source files, generations, and final. Mixing these three categories together is exactly where missing files start.
How do I name files so they're easy to find later?
A name should answer three questions at a glance: which product, what type of shot, which version. Keep the format identical across every project. That way search works by pattern, not by eyeballing a folder.
Why keep the rejected variants at all?
Because clients often ask to go back to a previous version, and it's usually the one that got overwritten. Save new versions as separate numbered files, and keep rejects in their own folder until the project is done.
Should I save my prompts too?
Yes, ideally in a text file next to the output. Recreating a good shot without the exact prompt saved is nearly impossible, especially without a locked seed, and rewriting the prompt from scratch takes longer than saving it once would have.
About the author
Ryan Mitchell
Reviewer at Flami
Read next
Where to Find Clients for Product Listing Design: Five Channels That Actually Work
AI Image Generation for Social Media: What Works and What Looks Cheap
Batch Generation: How to Build a 100-Item Product Catalog Without Losing Your Mind
Veo 3.1 vs Kling 3.0 vs Runway: I ran the same product videos through all three