PRODUCT ASSETS / EDITING AND PUBLISHING
How do I investigate a WooCommerce image import that stops partway through?
Treat the stopping point as two separate questions: which product rows were completed, and which image downloads failed. Use WooCommerce’s built-in Product CSV importer with its own schema and mapping, retain a small test subset, and inspect server evidence before rerunning the remaining rows.
Preserve the import state
Before changing the file, export the affected products or otherwise retain the current product data and original image references. The export gives you sample rows from the same WooCommerce environment and helps confirm the schema, image representation, and matching approach. Do not assume that every row before the visible stopping point completed successfully: compare the imported catalog with the source rows and record each product’s current media state.
Create a working copy of the CSV. Keep the original unchanged, and mark rows as completed, incomplete, or not yet attempted in a separate note. The goal is to prevent a second run from obscuring which products were already created or updated.
When an Images cell contains multiple image references, the native schema uses a comma-separated list: enclose the complete CSV cell in double quotes so those commas stay inside one field. The first reference is the featured image. For an update to existing products, select Update existing products and confirm the ID or SKU mapping. Leave unchanged media out of copy-only updates.
- Preserve the import log and identify the last confirmed product identifier and failed image reference.
- Build a small retained subset containing one confirmed row and one failing row; use the same native Images mapping.
- Check the failing reference and available server error evidence before rerunning only the controlled subset.
- Compare the resulting product records and media assignments; expand the import only after the failing case is understood.
Verify the importer inputs
Open the built-in WooCommerce Product CSV importer and use its own schema and mapping. Do not apply column names or image rules taken from an extension or another importer. During mapping, confirm that the image URL data is assigned to the product image field rather than being treated as ordinary text.
For every image URL in the retained subset, inspect the URL from outside the spreadsheet: it should be reachable without a login or an expiring session, and it should return an image response rather than an access page, redirect loop, or error. Existing images may be referenced, so distinguish a genuinely unavailable download from a URL that points to media already present in the store. Remember that the first image listed for a product becomes its featured image; ordering is therefore evidence, not cosmetic formatting.
Use a minimal retained subset
Retain a small fixture containing one row with a known existing image and one row with a new remote image. These two rows should exercise different failure paths while leaving the rest of the catalog untouched. Use the same mapping and matching choice intended for the full import, and enable the importer’s update-matching behavior only after confirming which field identifies an existing product in your exported sample.
Illustrative exercise: define Asset A as product row “MUG-EXISTING” whose first image URL refers to an image already present in the store. Define Asset B as product row “MUG-REMOTE” whose first image URL refers to a reachable remote image not previously stored. Run only these two rows in a non-destructive test copy or controlled working set. Pass means both intended product rows are present or updated, Asset A retains the expected existing image, and Asset B receives the remote image as its first image. Fail means a row is missing, an image field is empty, the wrong image is featured, or the importer reports a download or mapping error.
Branch from the evidence
Use this short sequence: export and compare identity; retain the two-row fixture; verify each URL response; run the built-in importer with the exported mapping; inspect the importer result and server logs; then decide whether to expand the batch.
If both fixture rows pass, expand gradually using the same mapping and keep each completed group identifiable. If Asset A passes but Asset B fails, stop expanding and investigate remote access, redirects, response type, or server timeout evidence for the failed URL. If both fail at mapping or identity, correct the schema or matching field before testing media again. If the importer completes but several products have no images, treat that as a media-download problem rather than proof that all rows failed.
Inspect server evidence before rerun
Ask the hosting or site administrator for request and PHP/application evidence covering the import attempt, using the importer’s recorded time and the first failed row as anchors. Look for timeout, memory, permission, HTTP response, or request-size errors, and compare them with the importer’s own messages. Record the exact row or URL associated with each error.
Rerun only rows classified as failed or incomplete after the evidence review. Preserve the original product identity and image URLs, and keep completed rows out of the next test unless you have a specific reason to update them. The acceptance condition for the next batch is the same as the fixture: every intended row is accounted for, image fields are populated, and the first listed image is the expected featured image.
Scope of the documentation
The official references below support tool behavior and feature boundaries. The test fixture, branching decisions and acceptance criteria are Itemlume editorial recommendations; citation does not imply endorsement. Illustrative sizes, names and timings are not your production specifications.
Sources and further reading
Sources for this page were checked on . Platform rules can change; verify the current source before publishing. Prompt examples and workflow recommendations are Itemlume editorial guidance, not independently measured results.
Frequently asked questions
Should I rerun the entire CSV immediately?
No. First separate completed rows from failed or incomplete media downloads, retain a small fixture, and inspect importer and server evidence. A full rerun can make the original stopping point harder to identify and may update products that already succeeded.
What does a successful row actually prove?
It proves that the selected schema, mapping, matching behavior, and image access worked for that row at that time. It does not prove that every other image URL is reachable or that a larger batch will finish without a server-side error.
BUILD FROM A PRODUCT YOU KNOW
Put this workflow into practice with your own product.
Explore the relevant tool first. AI copy and concept planning are free after sign-in. Image and video generation require available credits and the applicable account access.
Open Assets & tasks Check pricing and credits