Fix a broken Shopify CSV before it breaks your import.

Drop a product CSV. See which rows would fail, why, and what the file should say instead. Runs in your browser — your file never leaves your computer.

Drop your CSV here 5,000 rows free · or choose a file
  • ✓ No upload
  • ✓ Nothing to install
  • ✓ Every fix shown first
No uploadRuns in your browserOpen rule set Every error links to Shopify's own documentation
1 Drop
2 See the bad rows
3 Accept the fixes
4 Download

What we check

  • FILE_UTF8_BOMHidden byte before your first column name
  • SHOPIFY_PRICE_CURRENCYPrice written as $19.99 instead of 19.99
  • SHOPIFY_HANDLE_SPACEURL handle with spaces
  • SHOPIFY_HANDLE_ILLEGALUppercase, underscores, slashes in a handle
  • ROW_COLUMN_COUNT_MISMATCHA row with the wrong number of fields
  • FILE_UNCLOSED_QUOTEA quote that never closes
  • SHOPIFY_TITLE_EMPTYNew product without a title
  • SHOPIFY_PUBLISHED_BOOLPublished column that is not TRUE or FALSE
  • SHOPIFY_OPTION_COMBO_DUPLICATETwo rows describing the same variant
  • SHOPIFY_SKU_DUPLICATEOne SKU used on two variants
  • SHOPIFY_VARIANT_ID_RISKAn option edit that would recreate an existing variant
  • SHOPIFY_IMAGE_HTTPImage linked over http instead of https
  • SHOPIFY_WEIGHT_UNITA weight unit Shopify does not read

26 rules in this build: file, row, variant and resource checks. Every rule names the official Shopify documentation it is based on. The one check that would need to fetch your image URLs is not run — that would send data off your machine.

Frequently asked

Does my file get uploaded?

No. The file is read by your browser and analysed in a Web Worker on your machine. Open DevTools → Network and drop a file: no request carries its contents. The only request the app makes is a licence check, and it sends a key and nothing else.

What can it fix?

Anything marked Fixable in the issue list: prices with currency symbols, handles with spaces or illegal characters, BOM and line endings, wrong boolean values, and blank rows. Issues that need a business decision — duplicate SKUs, mismatched columns — are reported, not changed.

Will it import after I fix it?

Every remaining blocker is counted before you download. If a blocker is left, the button says so. We do not claim a file will import — we show what we found and what changed.

Why does it need my file to stay local?

Product CSVs contain supplier prices and unpublished stock. The tool cannot leak what it never receives.

What is the free limit?

5,000 data rows, full features. Larger files can be inspected for free; fixing and downloading the whole file needs a licence.

Which Shopify CSV errors does it detect?

Missing or duplicated handles, empty titles, prices with currency symbols, wrong boolean values, duplicated or missing SKUs, variant option problems, image URLs on plain http, unquoted tags, barcode overflow and weight unit mistakes — 26 checks in total, each documented on the errors page with the Shopify docs behind it.

Can I use it offline?

The tool runs entirely in your browser, so a page that is already open keeps working when the connection drops: parsing, fixing and exporting never touch the network, and the licence check simply fails, so the free limit applies. Reloading the page does need the connection again — there is no offline cache yet.