Download App
WooCommerce CSV workflow

How to Download WooCommerce Product Images from a CSV or Spreadsheet

WooCommerce product imports can use image URLs or Media Library filenames, but the real pain starts when image links fail, gallery order gets unclear, or the importer reports “unable to use image” without enough detail. This guide turns the CSV into a local, SKU-named image folder first, so your WooCommerce import starts from verified files instead of guesswork.

Updated June 9, 2026WooCommerce · CSV · Images columnLocal processing, no cloud upload
Flat workflow diagram showing a WooCommerce CSV Images column feeding into a local image downloader and producing SKU-named product image folders
Use the WooCommerce CSV as the source of truth, then download and verify the images before importing or updating products.

Why Download WooCommerce Images From the CSV First

WooCommerce’s CSV importer is powerful, but image imports are one of the easiest parts of a catalog job to break. A product row can be valid while its image URL is private, redirected, blocked by the server, mismatched to a new file extension, or hidden behind a Google Drive preview page. When the importer fails, the error often appears at the end of the job, after you have already waited for the upload.

A safer workflow is to treat the CSV or spreadsheet as an image download plan. Pull every value from the Images column (or your supplier image columns), save the files locally with SKU-based names, and create a failed-rows report before you run the WooCommerce import. That gives you a clean folder, a visible QA checklist, and a much shorter troubleshooting loop.

Product fit. Sheet Image Downloader reads CSV, Excel, Google Sheets, and URL lists locally. It can download image URLs, retry failed rows, deduplicate duplicates, and save files into SKU or category folders without uploading your catalog spreadsheet to a cloud service.

WooCommerce CSV Image Rules to Respect

WooCommerce’s official CSV documentation gives three practical rules that matter for image downloads: images must already be uploaded or available online, external URLs must be directly accessible, and the CSV should follow WooCommerce’s expected schema when you import or update products.

RuleWhat WooCommerce expectsWhat to do before downloading
Images columnDirect image URLs or Media Library filenames mapped to the product image field.Extract each URL or filename into a working spreadsheet and keep the original CSV untouched.
Multiple imagesThe built-in importer commonly uses multiple values in one Images field; some WooCommerce import extensions use pipe-separated image/gallery mappings.Confirm whether your importer expects commas, pipes, or separate mapped columns before rewriting the CSV.
External URLsURLs must be publicly reachable and should return the actual image file, not a redirect script or cloud preview page.Open sample URLs and run a local download pass. Flag Google Drive, Dropbox, CDN hotlink, and signed URL patterns.
Existing imagesIf an image already exists in the Media Library, WooCommerce can use its filename.Do not assume FTP upload is enough. Verify the file is registered or importable through the Media Library/importer path.
Alt textThe core CSV importer does not handle every image metadata update the way specialized import plugins do.Keep alt text in the spreadsheet for review, but do not rely on the image download step to rewrite metadata.
Comma vs pipe matters. WooCommerce core CSV workflows and paid import extensions do not always describe multi-image separators the same way. Keep this article’s download step separator-agnostic: the goal is to verify and save files first, then format the final import column for the importer you will actually use.

Real Import Pain Points Seen in WooCommerce Workflows

Public support threads and WooCommerce community discussions show the same problems repeatedly. A user can have image URLs that open in a browser, files that exist on the server, or a CSV that looks correct — and still hit an “unable to use image” import error. Other users migrating from Shopify discover that image URLs in a CSV are not enough if the server cannot fetch them reliably.

“Unable to use image” after import

The CSV row imports, but WooCommerce refuses the image. Causes include server access, MIME/type problems, redirects, stale extensions, or filenames that are not actually registered in WordPress.

Cloud links that are previews, not files

Google Drive, Dropbox, and some CDN links may show an image in a browser while failing as direct download links. A local downloader exposes those rows before the WooCommerce import starts.

Migration URLs that do not pull

Shopify-to-WooCommerce migrations often include remote image URLs. If PHP, hosting, or remote access blocks the fetch, the import can succeed for product data but fail for images.

Image-to-product matching anxiety

Large catalogs need deterministic matching by SKU or ID. A local folder named by SKU makes it obvious which product owns each image before you touch the import button.

Columns to Prepare in the Spreadsheet

Start from the exported WooCommerce CSV if possible. If you are building a new CSV from supplier data, keep a simple working copy with the columns below. This keeps the download workflow independent from your final import mapping.

ColumnPurposeExample
SKUBest filename base and product matching key.TSHIRT-BLK-001
IDUseful when updating existing products by WooCommerce product ID.id:2451
ImagesThe WooCommerce image field, usually one or more URLs or filenames.https://cdn.example.com/p/001.jpg
Gallery positionOptional helper column for ordering multiple images.1, 2, 3
FolderOptional output path for review by collection, brand, or category.hoodies/
NotesTrack expected skips, known missing images, or replacement webp/jpg decisions.supplier image pending

Download WooCommerce Product Images from the CSV

Once your working spreadsheet is ready, run the image download as a separate QA step before import. The exact UI can vary, but the process should stay the same.

1

Export or open the CSV

Use WooCommerce’s product export, a supplier CSV, or a spreadsheet with image URL columns. Save a copy before editing.

2

Select the image column

Point the downloader at Images, Image URL, or whichever column contains direct image links.

3

Use SKU as filename

Map SKU, ID, or slug to the filename base so every file can be traced back to a product row.

4

Split multi-image cells

If one cell contains multiple images, split according to the separator your source uses, then save the files with position suffixes.

5

Enable retry and timeout

Retry 429, 5xx, and timeout errors. Skip hard 404s into a failed-rows report for review.

6

Save into folders

Use category, brand, or SKU subfolders if the catalog is large enough to need review batches.

7

Review failures

Open the failed-rows report. Fix broken, preview-only, webp/jpg mismatch, and private links before import.

8

Prepare the final import CSV

Once files are verified, update the WooCommerce Images field with the exact URLs or filenames your importer expects.

Checklist illustration showing WooCommerce CSV image URL validation, SKU filename naming, retry report, and final import QA
Run URL validation, SKU naming, failed-row review, and gallery order checks before the final WooCommerce import.

Filename and Gallery Rules for WooCommerce

For WooCommerce work, filenames should make product matching obvious. Even if your final import uses URLs, a SKU-named local folder makes it easier to catch missing gallery images, duplicate URLs, and variant images that point to the wrong product.

PatternExampleUse case
sku.jpgTSHIRT-BLK-001.jpgSingle featured image per product.
sku-1.jpg, sku-2.jpgTSHIRT-BLK-001-1.jpgFeatured image plus gallery images in a known order.
sku-color-1.jpgTSHIRT-BLK-001-black-1.jpgVariant or color-specific review.
category/sku.jpgshirts/TSHIRT-BLK-001.jpgLarge catalogs where teams review by category.

If the CSV still references .jpg while the files were optimized to .webp, fix that before import. A folder-level QA pass makes extension mismatches obvious instead of letting them become importer errors.

QA Before WooCommerce Import

Before clicking Run the Importer, verify the folder and the final CSV together:

  1. Open 10 random downloaded files and confirm they are product images, not placeholders or HTML pages.
  2. Confirm there are no zero-byte files and no unexpected file extensions.
  3. Compare the image count against the number of image values in the spreadsheet.
  4. Check the first image for each product is the intended featured image.
  5. Review gallery ordering for products with multiple images.
  6. Open every failed-row URL in a browser and classify it as fix, skip, or replace.

Only after this pass should you update the WooCommerce CSV and run the importer. The difference is simple: instead of debugging inside WordPress after a failed import, you fix image problems while they are still just spreadsheet rows and local files.

Frequently Asked Questions

Can WooCommerce import product images from a CSV?Yes. WooCommerce's built-in Product CSV Importer can import images when the Images column contains already uploaded filenames or direct public image URLs. External URLs must be reachable by the server and must return the actual image, not a preview page or redirect script.
What should the WooCommerce Images column contain?Use a direct image URL or an existing Media Library filename. For multiple images in the built-in importer, WooCommerce documentation uses comma-separated values in one Images field. Some WooCommerce import extensions use a pipe character for mapping multiple image/gallery values, so always match the importer you are using.
Why does WooCommerce say unable to use image during CSV import?Common causes are broken URLs, non-direct Google Drive or Dropbox preview links, server restrictions, old PHP or hosting settings, filenames that are not registered in the Media Library, mixed .jpg/.webp references, or CSV formatting problems. Downloading and checking the image files locally first makes those failures easier to isolate.
Can I download WooCommerce product images without uploading my spreadsheet to a cloud tool?Yes. Sheet Image Downloader reads the CSV or spreadsheet locally, downloads the image URLs to your computer, retries failed rows, and writes an organized folder. The product SKUs, URLs, and catalog spreadsheet stay on your machine.
How should I name downloaded WooCommerce images before import?Use SKU-based names such as SKU-001.jpg for the featured image and SKU-001-2.jpg or SKU-001-gallery-2.jpg for gallery images. SKU-based naming makes CSV mapping, Media Library review, and failed-row troubleshooting much easier.

Download WooCommerce product images from a CSV, locally.

Sheet Image Downloader reads a WooCommerce CSV or spreadsheet, downloads product image URLs by SKU, retries failed rows, and saves an organized folder ready for import QA. Try it locally — no cloud, no sign-up required. For support, use the contact page.

Download Sheet Image Downloader