What it checks
- Comma delimiter and UTF-8 encoding
- Headers against Shopify's template
- Prices, weights and quantities
- Variants and option values
- Image URLs
- Duplicate SKUs and handles
Fix the delimiter and encoding automatically →
Don't want to fix it yourself?
We convert and clean supplier files into a Shopify-format CSV for new, simple products (no variants yet), set to draft, with a report of what needs your decision. You provide your selling prices; nothing is guessed. Importing into your store stays with you. Scope is confirmed on a sample before any payment. Selling prices in euros.
Get my file fixedCommon Shopify CSV import errors, and how to fix them
"Network error: Unexpected token < in JSON at position 0"
Your column headers don't match Shopify's template exactly. Headers are case-sensitive: Title works, title doesn't. The checker flags unrecognised headers; custom metafields may need a separate review.
"Illegal quoting" error
Fields that contain commas, quotes or line breaks need straight double quotes around them, with any inner quote doubled (""). Look for missing quotes or text right after a closing quote. Curly quotes (“ ”) are fine inside a title but can't wrap a field.
All my columns end up in one cell
European versions of Excel save CSV files with semicolons (;) instead of commas. Shopify only reads comma-separated files. Re-export with a comma delimiter, or use Google Sheets → File → Download → CSV.
Accents look broken (é, �)
The file isn't UTF-8 encoded. In Excel, choose "CSV UTF-8 (Comma delimited)" when saving.
Prices are wrong or rejected
Shopify wants a plain number with a dot: 9.99. Values like 9,99 or €9.99 fail. "Compare-at price" must be higher than "Price" to show a discount.
Barcodes or SKUs turned into 1.23457E+12
A spreadsheet converted long numbers to scientific notation and the real code is lost. Re-export from the source with the column formatted as text, and don't re-save the CSV in Excel afterwards.
Variants became separate products, or only one was imported
Variant rows must share the same URL handle, and the product needs an Option1 name (e.g. Size) with a different Option1 value on each row. For existing products, keep the exact option names and values from a Shopify export: changing them can replace your variants.
Images are not imported
Image columns need public web addresses (https://…), not file names from your computer. File names containing _thumb, _small or _medium are refused.
Is my file sent anywhere?
No. The checker is plain JavaScript running in your browser. You can even go offline once the page has loaded.