How to rename product images by SKU
Marketplaces, wholesale customers and photo libraries often want product images named after the SKU, like FH-BWL-01-1.jpg, not IMG_4031.jpg. Store platforms keep whatever name the photo was uploaded with, or an ID. Here is what your export gives you, how to rename for free, and a faster way.
Before you start
- Your products have SKUs in your store, or you’re happy with the fallback names below.
- You know whether you want a folder per product or every file in one folder.
- You’ll keep the spreadsheet that maps new names to products and original links.
- SKUThe image’s own row or variation, else the product’s
- Image orderThe image’s place in the product’s list
- JoinedSKU, a dash, the number, the file’s own type
- FH-BWL-01-1.jpgIn the product’s folder, or one shared folder
Where the SKU is in your export
- Shopify:
Variant SKU. A product without one falls back to its handle. - Squarespace:
SKU. A product without one falls back to its URL slug, or its product ID when the URL is empty. - WooCommerce:
SKU. Variations have their own SKU, so a variation’s image can carry it; a product without a SKU falls back to its ID. - Webflow: a collection only has SKUs if you added a field for them; a column named
SKUis used, otherwise the item slug, or the item ID when the slug is empty. - Wix:
sku. A product without one uses its first variant’s SKU, then its name, then a short product ID.
| Platform | SKU column1 | Without a SKU2 |
|---|---|---|
| Shopify | Variant SKU | Handle |
| Squarespace | SKU | URL slug, then product ID |
| WooCommerce | SKU (variations have their own) | Product ID |
| Webflow | A field named SKU, if you added one | Item slug, then item ID |
| Wix | sku | First variant’s SKU, then name, then a short ID |
- SKU column is where Parcel reads the SKU in your export.
- Without a SKU is the name Parcel uses instead, so every file still says which product it belongs to.
The free manual method
- Export your products and open the CSV in a spreadsheet.
- Put each image link on its own row next to its product’s SKU, in the order the images appear.
- Build the new name in a new column: the SKU, a dash, the image’s number, and the extension, such as
FH-BWL-01-1.jpg,FH-BWL-01-2.jpg. - Download the images, then rename them with a bulk-rename tool, matching each file to its row by its original name.
The matching step is where mistakes creep in: two products sharing a photo, a file name that changed when it was uploaded, or a download that silently failed.
Rules for good SKU file names
- Number each product’s images in the order the export lists them, so
-1is usually the main image. In a Shopify export, a variant image with no image position can come first; check the first file for those products. - Use the variation’s own SKU for a variation’s image when it has one.
- Leave out characters file systems don’t allow, such as
/ \ : * ? " < > |. - If two products share a SKU, add a suffix so no file overwrites another.
- Keep a spreadsheet that maps each new name to the product and the original link.
Free method
Downloads/
- IMG_4031.jpg
- IMG_4032.jpg
- bowl-final.png
- 41f28c_62eda5…~mv2.jpg
- …
Upload names and IDs: nothing says which product a file belongs to.
Parcel
parcel-1a2b3c4d.zip
- FH-BWL-01-1.jpg
- FH-BWL-01-2.jpg
- FH-BWL-01-3.png
- FH-MUG-02-1.jpg
- manifest.csv
With Single folder chosen: every file named by SKU and image order, plus the list that maps each name back.
The faster way: Parcel
Upload your export to Parcel and choose SKU file names. Every saved image comes back named by SKU and numbered in the order your export lists them, with a folder per product if you want one; products without a SKU fall back as listed above. The ZIP includes an image details spreadsheet (manifest.csv) with each file’s new name, product, SKU and original link, and a report of anything that could not be downloaded. Links Parcel can’t use, such as images hosted on another website, are counted on screen before you export; save those by hand. Up to 25 products is free; larger catalogs are a one-time $9, $19, or $39. No subscription.
- 10,000images per export
- 20 MBlargest single image
- 300 MBof images, free export
- 1 GBof images, paid export
Files stay available for 24 hours after the export is ready.
If something goes wrong
- Some files are named by handle, slug or ID
- Those products have no SKU in the export, so Parcel uses the fallback shown in the table above. Add SKUs in your store and export again if you need SKU names everywhere.
- Two products share a SKU
- With a folder per product, each keeps its name in its own folder. In a single folder, the second file gets
-2added so nothing is overwritten. - A number is missing
- Numbers follow the export’s image order. If an image failed to download, its number is skipped rather than reused; check
failed-downloads.csv. - File names look different from the SKU
- Characters file systems don’t allow, such as
/or?, become a dash, and very long names are shortened. The manifest shows each file’s product and SKU exactly as exported.
Questions
Can my store platform rename image files by SKU?
Not in bulk. Store platforms keep the name each photo was uploaded with, or an ID. You rename the files after downloading them, by hand or with Parcel.
What does the number after the SKU mean?
The image’s place in the product’s list in your export: -1 for the first, -2 for the second, and so on. It is usually the main image first.
Do variation photos get the variation’s SKU?
Where the export ties a photo to a variation (Shopify variant images, WooCommerce variations) and the variation has its own SKU, Parcel names the photo with it; otherwise it uses the product’s SKU.
How do I match new names to the old files?
manifest.csv lists every saved image’s new file name next to its product, SKU and original link.
Parcel is an independent tool, not affiliated with Shopify, Squarespace, WooCommerce, Webflow, Wix or Amazon.