How to export product images from Shopify

You want to export product images from Shopify, and you assumed it would be a button somewhere in admin. It is not. Shopify gives you a product CSV export, but that file only holds image URLs, not the actual image files. So you end up with a spreadsheet full of links and no folder of pictures. Frustrating, right?
This post covers every working way to pull your images out: the manual CSV plus download route, a couple of free workarounds, and the app method that does it in one click. It also covers the files people forget until they are gone, namely product videos, 3D models and the Content > Files library. I will be honest about where each method breaks, because some of these “free” routes cost you an entire afternoon.
Quick answer up front: if you have more than 50 products, skip the manual route and use an export app. If you have a handful, the CSV trick is fine. The rest of this post explains why.
In this post
- Why Shopify has no native image export
- Method 1: product CSV plus bulk URL download
- Method 2: manual right-click (small catalogs only)
- Method 3: an export app (the fast way)
- It is not just images any more
- Keep your file names SEO-friendly on the way out
- Frequently asked questions
- Related reading
Why Shopify has no native image export
Shopify stores your images on its own CDN. When you export a product CSV (Products, then Export), the file lists the public CDN URL of each image in the “Image Src” column. That is the closest thing to a native export, and it is genuinely useful as a manifest. But it is a list of addresses, not the files themselves.
Why does Shopify do it this way? Honestly, because most merchants never need the raw files back. The image already lives on the CDN, so Shopify has no reason to zip them up for you. That logic falls apart the moment you are migrating platforms, backing up a catalog, or handing assets to a designer. Then you need actual files.
Three situations where you really do need the files, not the links:
- Migration: moving to a new store, a new theme build, or off Shopify entirely.
- Backup: you want a local copy before a big bulk edit or a risky app install.
- Reuse: sending product shots to a marketplace, a print catalog, or an ad team.
Method 1: product CSV plus bulk URL download
This is the free, no-app route. It works, but it has steps. Here is the flow:
- Go to Products in admin, click Export, choose “All products” and “Plain CSV file”.
- Open the CSV. Find the “Image Src” column. Every image URL is there, one row per image.
- Copy that column into a plain text file, one URL per line.
- Feed that list to a bulk downloader. On Mac or Linux, a one-line
wget -i urls.txtin Terminal does it. On Windows, a browser extension like a bulk image downloader works.
Where it bites you: the downloaded files keep Shopify’s CDN names, which often look like red-shirt_a1b2c3.jpg with a random hash. You lose the clean original names. And the CSV lists main product images plus extra gallery images all mixed together, so sorting which file belongs to which product is manual work. For 20 products, fine. For 2,000, you will lose a day.
One more gotcha. If your CSV has any curly quotes or broken rows, the URL list breaks too. Run the file through our free Shopify CSV validator first if the download throws errors halfway through.
Method 2: manual right-click (small catalogs only)
Open each product, right-click each image, Save image as. That is the whole method. It is not clever, but for a 10-product store it is faster than setting up anything else.
The catch is obvious: it does not scale, and you will grab the displayed size, not always the full-resolution original. If image quality matters (and it does, Shopify supports up to a 20 megapixel, 4472 by 4472 source), pull from the CSV URL instead, which points to the original upload. Speaking of quality, if you have ever hit the upload size wall, our guide on the Shopify 25 MP image limit error explains the real ceiling.
Method 3: an export app (the fast way)
If your catalog is past a few dozen products, an export app is the only sane option. A dedicated tool like Export Product Images zips every image, video and 3D model in your catalog and lets you filter by collection, vendor, or tag, rename files into SEO-friendly names on the way out, and keep your folder structure intact. One job, one ZIP, done.
We built that app after watching too many merchants fight the CSV route, so I am biased. But the math is simple: when a job that takes a script-savvy developer 30 minutes takes a store owner half a day, the app pays for itself on the first export. The features that actually matter in any export app, ours or otherwise:
- Filtering: export one collection, not the whole store.
- Rename on export: turn hashed CDN names back into readable, keyword-rich file names.
- Metadata: a CSV that maps each file back to its product, SKU, and alt text.
- Full resolution: the original upload, not a resized display copy.
Exporting is only half the story. The reverse trip matters too: if you are moving images into a store, that is a different workflow, and matching files to the right products by SKU is where most people get stuck. If you ever need to push images back up, plan the file names before you do.
If your colours live as separate products rather than variants of one product, Rubik Combined Listings groups them into a single listing with swatches instead. Free to install, 5.0 stars across 78 reviews.
It is not just images any more
Here is the part that has changed, and most export guides have not caught up. Your store does not only hold photos. It holds product videos, 3D models for the AR viewer, and a Content > Files library full of PDFs, spec sheets, size charts and images that may not be attached to a single product. All of that is store data you paid for. All of it is equally stuck.
As of September 2026, CS Export Product Images downloads all of it, not just the photos: product images, product videos, 3D models as GLB or USDZ, and the whole Content > Files library including PDFs.
- Product files: images are on by default, videos and 3D models are a checkbox each, so a routine export stays lean unless you ask for more.
- Content > Files: a separate job that pulls the Files section of your admin, filtered by file type and upload date.
- The reference filter: all files, only files used on products, only files used by metaobjects of one definition, or only the files used nowhere at all.
That last filter deserves a moment. Every store over a couple of years old has a Files library stuffed with orphans: the hero banner from a 2024 campaign, three versions of a size guide, a PDF nobody links to. Shopify gives you no way to see which is which. The reference filter does, and you can pull them down before you clean house.
One caveat, because I would rather say it than have you find out mid-migration. Videos you embedded from YouTube or Vimeo are not exported. Shopify never stored a file for those, it stored a link, so there is nothing to hand you. Only media genuinely uploaded to your store comes down. The step-by-step is in our guide to bulk exporting product images, videos and 3D models.
Keep your file names SEO-friendly on the way out
Here is a step most people skip. Your exported files are a chance to fix bad names. Google reads image file names as a ranking signal, and IMG_4823.jpg tells it nothing. navy-merino-wool-sweater.jpg tells it everything.
If you are exporting to re-import (a migration, say), rename during export and you carry clean names into the new store for free. Want the full method? Our catalog and swatch guides touch on naming, and you can sanity-check your current library with the free Shopify product image audit tool before you export.
And if your store leans heavily on color or style variants, your image strategy is bigger than just export. Showing the right photo per variant is its own problem. Rubik Variant Images handles that on the product page, and if you sell each color as a separate product, Rubik Combined Listings links them with swatches on collection pages. Worth knowing before you export and restructure.
Frequently asked questions
Can I export product images from Shopify without an app?
Yes. Export a product CSV from the Products page, copy the “Image Src” column into a text file, and run that URL list through a bulk downloader (such as wget -i on Mac or Linux, or a browser bulk-download extension). It works, but file names keep Shopify’s hashed CDN format and you sort products manually. Practical for small catalogs, painful past 50 products.
Does the Shopify CSV export include the actual image files?
No. The CSV only contains image URLs in the “Image Src” column, not the image files themselves. The pictures stay on Shopify’s CDN. To get the files you either download from those URLs or use an export app that zips them for you.
How do I export images for one collection only?
The native CSV export does not filter by collection cleanly for images. An export app with collection, vendor, or tag filters is the reliable way to pull a single collection’s images without exporting the whole store and sorting afterward.
Will exporting images affect my live store?
No. Exporting is a read operation. It copies images out, it does not delete or change anything on your storefront. It is actually a smart thing to do before any bulk edit, theme change, or risky app install, as a backup.
Are exported images full resolution?
If you pull from the CSV URL or use an export app, yes, you get the original upload. If you right-click and save from a product page, you may grab a resized display version instead of the full-resolution source. For migrations or print, always pull the original.
Can I export Shopify videos, 3D models and PDFs as well as images?
Yes. CS Export Product Images exports product images, product videos and 3D models in the same job, and has a separate Content > Files export for your whole Files library, PDFs included, covering files attached to products, files used by metaobjects, and files used nowhere at all. It holds 4.7 stars from 30 reviews on the Shopify App Store, and the free plan exports 100 files.
Related reading
- Shopify 25 MP image limit error, explained and fixed
- Shopify file storage limits
- How to show multiple images per variant on Shopify
- Rubik Variant Images for per-variant image control
- Rubik Combined Listings for separate-product catalogs
One last tip from the trenches. Whatever method you pick, export once as a clean backup before your next big catalog change. The day a bulk edit goes wrong, a folder of original images is the difference between a 10 minute restore and a week of re-shooting.