Import failed? Common errors
Find the cause before retrying a WooCommerce import. These guides cover the built-in importer. For Shopify, start with the Shopify task guides and the report from your import.
- The import stops or times out504 errors, server limits and variation-safe batches.
- Invalid or duplicated SKUIdentify the conflicting product or source value.
- Variations are missing or unlinkedReview parents, order, attributes and prices.
- One column or broken charactersCheck the CSV separator and UTF-8 encoding.
- Product images did not importReview photo links, access and image download failures.
- Another import problemAll troubleshooting steps in the WooCommerce import reference.
Fix a common problem
My file will not open, or the columns look wrong
Read the message beside the file first. Check that you chose a supported format and that a CSV is saved as UTF-8. Review the separator; for Excel, check the sheet, range and Header row. Use Prepare for a supplier price list rather than treating its columns as a finished product catalog.
Choose your platform’s task guide below for its exact input format and column requirements.
A column or supplier profile does not match
Compare the sample values beside each selected column, not just its name. Confirm SKU and retail price, and review grouping before running Prepare. When the supplier’s headers change, review the mappings again; importing a profile saves it, while Apply selects it for your file.
The full download is unavailable
Read the result’s reason: unresolved errors, held-back products or a changed file can prevent a finished result. Correct the source or settings and run again. For Update, review and confirm the current plan before downloading.
Check the task’s free limit before buying a Pass. Paying does not fix errors or release an unavailable result. Free limits and access
I reloaded the page and need to continue
A draft keeps supported settings and file names, not the files or result. Choose Continue, select the files again and review the recovered settings before running. What is saved
The store does not show the changes I expected
Check the report and the import instructions for each downloaded file. A plan describes intended changes, not proof of import. Compare against a fresh export and use your platform’s Update guide below; do not retry an old file without reviewing what the store holds now. Find the right exports
WooCommerce
Check a CSV
Find broken variation links, duplicate SKUs and file problems before you import; two safe fixes are applied for you.
The report is free. The free sample keeps whole product groups within 50 records.
Prepare a supplier file
Map a supplier CSV or Excel price list to WooCommerce columns, products and variations.
Review every column and grouping rule. A profile saves rules, never the catalog.
Update prices & stock
Compare a new price list with a fresh store export and write only the changed prices and stock, by SKU.
Up to 50 changed products are free. An invalid value holds the whole product back.
Shopify (beta)
Check a CSV
Diagnose a products or inventory CSV with the row and column of every finding. Your file is not changed.
Check is free. It gives a diagnostic report (CSV or JSON); your source file is never changed and no corrected file is made.
Prepare a supplier file
Turn a supplier price list into a products CSV for new products; you choose every column.
Up to 50 variants are free in full; larger samples keep whole products within 50 variants. Keep Overwrite off.
Update prices & stock
Plan selected price and stock changes from fresh store exports; you confirm, import and compare afterwards.
Up to 50 distinct changed variants are free. Overwrite can delete variants added after the export. Profiles are available in Prepare, not Update.
Find the right store exports
WooCommerce
For Update, export your current products from Products → Export in WordPress. Include at least the columns ID, Type, SKU, Parent, Regular price, Sale price, Stock, Backorders allowed?. Keep the export unchanged. A supplier price list is the other input.
Read the export and update stepsShopify (beta)
For prices, export all products as Plain CSV from Products → Export. For stock, export inventory with All states and all required variants and locations. Make the two exports one after the other; the tool sees those snapshots, not your live store.
After importing, choose fresh exports in Check after import. Applied, Not changed, Differs, Skipped and Not enough data are distinct outcomes. Reverse plan considers only changes confirmed as Applied that still match the fresh export. It cannot undo product creation or restore deleted variants; conflicts stay excluded.
Read the export and update stepsWhat is saved, and what to choose again
Within this tab, Home and Your task keep your selected files, settings, result and current step. Help and guides open in a new tab while you work, so your working tab stays open.
Automatic drafts save supported settings and file names in this browser. They save neither file contents nor results. After Reload, choose Continue and select the required files again. Review the recovered settings, then run the check or plan yourself.
A saved supplier profile keeps a column scheme. A settings backup is a separate JSON copy of your draft settings, never a store import file. Clear asks before dropping current work; separately saved profiles remain.
Limits and access
The limit depends on the role of the file. A catalog file to check or a supplier price list: up to 50,000 records and 50 MB (parent products that CatalogDock adds when it builds groups count toward the 50,000). A WooCommerce store export used for a comparison: up to 50 MB, with no separate record limit. The task pages state the limits of their own files.
Checking and complete reports are free. Free output limits are counted in the units shown for each task above (records, product groups, changed products or distinct changed variants). A page of 50 rows is only a way to browse a long result; it limits nothing.
A CatalogDock Pass costs $19 once for up to 3 different full results within 30 days. Downloading the same result again uses no new result.
See pricing and the free limitsA check sees the file, not your store
Passing supported checks does not guarantee that an importer will accept every file. Review warnings and test a small import first. Keep a store backup and read the instructions for each output file.
WooCommerce technical limitsFAQ
General
Is my file uploaded to a server?
No. Files are read and processed by JavaScript in your browser tab (in a background worker). The page does not send their contents anywhere and has no third-party analytics scripts. The contact buttons only open your email app; they never attach your file. Online purchase sends an order number, your access key and the SHA-256 fingerprint of the result to our server. If the optional network image check is enabled and you start it, image URLs are sent too. See the Privacy Policy for payment and data details.
WooCommerce
Which CSV files are supported?
Use “Prepare supplier file” for non-standard supplier columns (it recognizes typical supplier column headers in 12 languages; the interface is in English), “Check Woo CSV” for a file already in WooCommerce columns, or “Update catalog” for price and stock changes by SKU. CSV must be UTF-8, with a comma or semicolon delimiter. Each file can contain up to 50,000 records and 50 MB; generated parents count toward the record limit.
The structural check supports new variable products with their variations in the same file, parents referenced by SKU and local attributes. Global attributes, “Any” variations and references by database ID need checks outside this workflow (the free WordPress plugin compares global attributes and terms with your store). Output is for Products → Import, the built-in WooCommerce importer, not WP All Import or other importers.
Can I use an Excel workbook instead of CSV?
Yes: .xlsx and .xlsm. Choose the sheet, header row and range, preview the rows and optionally skip hidden rows. Formula cells use their saved values; formulas are not recalculated, macros are never run and external workbook links are not followed. Old .xls, .xlsb, .ods and password-protected workbooks are not supported.
Do I have to set up the same supplier every week?
Save your column mapping, cleanup rules and variation grouping settings as a reusable supplier profile in this browser. Profiles can also be exported and imported as JSON to move them to another browser. They contain settings, not product rows. If the supplier changes the headers, review the detected changes and confirm the mapping again. A downloadable mapping log shows which cell values were changed.
Will Excel pictures appear in my store automatically?
No. Download the pictures placed on the selected sheet as a ZIP with manifest.csv, which links each resolved picture to its row and SKU. Review ambiguous matches; unresolved pictures are flagged without a SKU. Upload the pictures to your media library or image hosting yourself, then fill the Images column with filenames or public URLs. “Place in Cell” pictures and pictures generated by Excel’s IMAGE formula are not extracted.
The Images report also distinguishes web URLs, media-library filenames and local file paths. Recognizing a URL is not proof that the image is reachable or that WooCommerce can download it.
How do safe batches help with import timeouts?
The import ZIP contains numbered CSV files and IMPORT-ORDER.txt. Import them in that order. The target is 500 records per batch; a parent and all its variations stay together, so a single group larger than 500 remains in one larger file. Smaller imports reduce the risk of a 504 Gateway Timeout, but cannot guarantee that your hosting will complete an import.
What can Update catalog change in my store?
Compare a fresh export from the same store with the supplier’s new price list. Downloads contain only SKU and changed Regular price, Sale price or Stock fields, in separate files for each set of changed fields. Descriptions, images, categories and reviews are not written. Empty cells keep current values by default; only Sale price has an explicit option to clear it. Zero is a value, not an empty cell. Missing products are not created, deleted or set to zero stock.
Review the comparison report, then import with “Update existing products” enabled. The tool does not connect to your store or run scheduled syncs: you export, compare and import each time. It does not switch stock management or backorder settings. Update files also come as a ZIP of parts of up to 500 records, with import instructions. Downloading update files is free for up to 50 changed products; updates with more than 50 changed products use the CatalogDock Pass.
What is included in the free sample?
For “Prepare supplier file” and “Check Woo CSV”, up to 50 records of the result, as whole groups: a parent with all of its variations (generated parents included), or a standalone product. A group larger than 50 records is never cut, so it cannot be in the sample; the page says so. Only groups that pass every check after the automatic fixes are included, and the sample is re-checked before download. The report covers the whole file. If the sample holds the whole result, there is nothing to buy. If “Check Woo CSV” finds nothing to change, your original file is free to download in full, byte for byte, whatever its size.
What should I do about problems the tool does not fix?
Each one is listed with its record number, SKU, field and a recommended action. Correct them in your source data and check again. Full processing applies the automatic fixes to the whole file; problems that need a decision stay your decision, and the report shows exactly where they are. Unsupported scenarios are valid WooCommerce features this tool cannot verify from the file — test them on a staging copy of your store.
Is there a companion WordPress plugin?
Yes. CatalogDock — Product CSV Check & Price/Stock Update for WooCommerce is free on WordPress.org. It runs in your WordPress admin (Products → CatalogDock); the file is processed in your browser tab and not uploaded anywhere.
Every plugin feature is free, with no pass: file checks, comparison with your store’s products, global attributes and terms, price and stock update files, upload of chosen Excel pictures to the Media Library and full corrected CSV downloads, within the same 50,000 records and 50 MB per file. This website is for work outside WordPress: mapping supplier price lists (headers in 12 languages), building parents and variations from flat rows, reusable supplier profiles and import batches. See plugin or website.
Does a passing check guarantee the import will work in my store?
No. It confirms the structural checks for the supported scenario. The import workflows were tested with WooCommerce 11.1.2 (on WordPress 7.1.2); other versions were not tested, which does not mean they fail. When building parents and variations, you can supply a store export or SKU list to detect conflicts with existing SKUs. This checks the supplied snapshot, not the live store. Global attribute settings, database collation, plugins, server limits, image availability and the importer’s column mapping still need checking. Always test on a staging copy first.
Shopify
Which files are supported?
Check Shopify CSV reads a products CSV or an inventory CSV (UTF-8, comma-separated). Prepare supplier file reads a supplier price list as CSV or Excel (.xlsx, .xlsm) and writes a products CSV for new products. Each file can hold up to 50,000 records and 50 MB.
Does the tool connect to my Shopify store?
No. It never connects to your Shopify store and asks for no store access: you import the file in Shopify yourself. Files are read and processed in your browser tab and their contents are not sent anywhere.
What does Prepare write, and what does it leave out?
It writes new products only. Stock quantities are not written. A purchase price goes only to Cost per item and never becomes the price. No SKU or URL handle is invented, nothing is transliterated or numbered to avoid a clash, and “Draft” status is not offered. What it leaves out is listed with its record.
What does Update change, and what can go wrong?
Only the price and the stock of variants that already exist, and only what you select and confirm. The price file is imported with the option “Overwrite products with matching handles” and lists every variant of each changed product; a variant you add in the store after you made the export can be deleted by that import, together with its stock. The tool compares the file with your export, not with your live store, so it is not a full protection. Stock and prices are separate imports. Selected native Prepare and Update scenarios were tested in our test store. CatalogDock has not imported your current files: test a small file first.
What is the free sample?
Whole products, in the order of your price list, up to 50 variants in all; a product is never cut and photo rows are not counted. When the whole result fits, the sample is the entire file and it is free. The page says which one you got. The file with all products of a larger result is a pass result.
Does a passing check guarantee that Shopify accepts the file?
No. The rules come from Shopify’s documentation and from test imports in one development store with synthetic data. They do not cover every setting of your store. Import a small file first.