Free Shopify Product CSV Checker

Some product CSVs look fine and quietly delete your variants the moment you import them. Drop your file here and see what would go wrong first. Runs in your browser, nothing uploaded. Free, no signup.

Free & unlimited No sign-up Nothing uploaded
A Shopify product CSV can pass every "looks valid" test and still destroy data on import. The clearest example is in Shopify's own docs: include a SKU or Weight column without both an Option1 Name and Option1 Value column, and the import "creates a new default variant and deletes your existing variants." No error, no warning. This checker reads your file in the browser and flags that case, along with Excel-mangled SKUs, split handles, bad prices, unreadable image URLs, and encoding problems, before you upload.
🧪

Drop your Shopify product CSV here

or choose a file. The product CSV you're about to import.

Your file is read and checked in this page. It never leaves your browser. No upload, no account, nothing stored.

After the import: keep inventory accurate

Once your products are in, EZStock tracks stock, sets reorder points, and manages purchase orders on top of your Shopify catalog. It's a Shopify inventory and purchase-order app with a free plan. Migrating from Stocky? Convert your export first, then run the product CSV through this checker.

Open EZStock → Stocky Converter →
This checker reads only the CSV you give it, in your browser. It can't connect to your store, compare the file against your live catalog, test whether an image host will let Shopify download an image, or promise Shopify accepts every row. It's a fast safety pass before you import. For a large or risky change, still test the import on a development store first.

What it checks

Ranked worst-first, so the changes that delete data show up before the cosmetic ones.

Variant-deleting imports

The big one. A SKU or Weight column without both Option1 Name and Option1 Value tells Shopify to rebuild the product with a single default variant and delete the rest. Flagged as critical.

Excel-mangled SKUs

Long numeric SKUs that Excel turned into 7.05E+11. The real digits are gone, so the import writes the wrong SKU and breaks inventory and barcode matching.

Handle problems

Blank handles on variant rows, or handles with spaces or capitals, which split one product into several or attach a row to the wrong product.

Price format

Prices with a currency symbol or thousands separator ($19.99, 1,299) that Shopify imports as 0.00 or rejects.

Image URLs

Image Src that isn't a public https URL, or ends in _thumb/_small/_medium, which Shopify silently skips, leaving the product with no image.

Encoding

A UTF-8 BOM that hides your Handle column, CRLF line endings, or broken characters from a bad re-save. Small things that make Shopify reject rows.

Questions

Can a valid CSV really delete my variants?

Yes. Shopify's own documentation says that if your CSV has a SKU or Weight column but not both the Option1 Name and Option1 Value columns, the import creates a new default variant and deletes your existing variants. The file imports without an error, and you lose the variants. This checker flags that exact case before you upload.

Is it free, and is my file uploaded?

Completely free, no account, no limit. Your file is read and checked entirely in your browser — nothing is uploaded and nothing is stored. Once the page loads you can use it offline.

What does it check for?

Variant-deleting imports (SKU/Weight without Option1 Name and Value), Excel-mangled SKUs, blank or malformed handles that split a product, prices with currency symbols, image URLs Shopify can't download, and encoding issues like a UTF-8 BOM or CRLF line endings.

What can't it do?

It only reads the CSV you give it. It doesn't connect to your store, compare against your live catalog, test image hosts, or guarantee Shopify accepts every row. For a big change, still run the import on a development store first.

My SKUs show as 7.05E+11, can you fix them?

That's Excel converting a long numeric SKU into scientific notation, which loses the real digits for good. No tool can recover the original, so the checker flags those rows. To avoid it, open the file in Google Sheets, or format the SKU column as Text before opening in Excel.

I'm moving from Stocky, where does this fit?

As the final step. Convert your Stocky exports with the free Stocky Export Converter, then run the product CSV through this checker before importing so a formatting slip doesn't undo the migration.

More free Shopify tools

All free, all in your browser, no signup.