Product CSV imports can change existing product records. Shopify's official import guidance explains that the required columns and variant dependencies differ for creating a new product versus updating an existing one. Before changing a large catalogue, inspect a small representative sample and export a backup of the full store.
This guide uses a synthetic three-row Shopify-style CSV to show the output of the site's preflight checker. The file intentionally includes one nonnumeric price, a compare-at price below the sale price, and a repeated SKU. A repeated SKU is a warning to investigate, not proof Shopify will reject the file.
Example input and expected output
Source data
URL handle,Title,SKU,Option1 name,Option1 value,Price,Compare-at price,Inventory tracker,Inventory quantity,Product image URL blue-mug,Blue Mug,MUG-001,Color,Blue,15.00,12.00,shopify,10,https://cdn.example.com/blue.jpg blue-mug,,MUG-001,Color,Red,15.00,20.00,shopify,5,https://cdn.example.com/red.jpg red-cup,Red Cup,CUP-002,Size,M,abc,18.00,shopify,3,https://cdn.example.com/cup.jpg
Expected result
Sample preflight: 3 data rows, 2 product handles 1 ERROR · 2 WARNING findings WARNING · row 2 · Compare-at price is not greater than Price. WARNING · row 3 · MUG-001 SKU also occurs on row 2. ERROR · row 4 · Price value 'abc' is not numeric. No Shopify import was performed.
Download the verified sample CSV files
These fictional samples are used by the steps below and contain no customer data.
Step-by-step workflow
- Make a backup of the complete existing Shopify product export before changing headers or prices. Keep a copy of the exact input you plan to import.
- Download the example CSV above. Open it as plain text or import its columns as Text in a spreadsheet to avoid unexpected number formatting.
- Open the free Shopify CSV Preflight Checker, choose Update existing Shopify products, and paste or open the example. The editor runs in the browser without a Shopify login.
- Click Check CSV locally. The tested sample yields 3 data rows, 2 product handles, 1 ERROR and 2 WARNING findings. The invalid value abc is an error; the low compare-at price and duplicated SKU are warnings.
- Download the findings report to inspect each original CSV row number, the field name and suggested review. Change a working copy rather than blindly fixing your authoritative source file.
- If you intend to import, consult Shopify's official product CSV documentation and test on one or two noncritical products. This diagnostic does not guarantee import compatibility or verify image reachability.
New products and product updates have different requirements
Shopify documents that a new simple product can be created from minimal data, while updating a product requires URL handle and Title columns. Variant-related updates also need consideration of Option1 name and Option1 value. Removing dependent columns from a partial CSV can change existing variant data; a full product export is the safest place to start.
The preflight tool has Create and Update modes. It supports common legacy header spellings such as Handle and Variant SKU. It rejects ambiguous mixtures of old and new headers for the same field instead of selecting one without explanation.
A duplicate SKU is not necessarily an import error
Our sample intentionally uses MUG-001 for two variant rows of blue-mug. The checker reports this as a WARNING because the retailer may have accidentally reused an inventory identifier. Some catalogs intentionally share an identifier, and Shopify's import validation is not identical to this review rule.
If your intention is one stock-keeping unit per distinct variant, review duplicate SKU assignments carefully. The tool does not remove, merge or overwrite repeated SKU rows for you.
Prices, stock and image URLs need separate checks
Price and compare-at fields are expected to contain plain numbers in the checker, not formatted currency strings. A row with abc in Price triggers an ERROR; a compare-at price lower than the selling price triggers a WARNING because the intended discount may be reversed. These are separate findings with the source CSV row numbers.
The checker also highlights suspicious inventory quantities, blank tracking fields and image URLs with unsupported schemes. It never fetches remote images and therefore cannot confirm whether a link returns a valid image or whether a Shopify account can access it.
Important boundaries of preflight verification
A clean report is not approval from Shopify. Other constraints may depend on your shop's markets, inventory locations, app-specific fields and changing import rules. The checker caps each local CSV at 2 MB and 20,000 data rows. The downloadable report contains up to 3,000 issue details with a visible count of additional findings.
Use the adjacent image row merger if you have multiple image URLs in one CSV field. Use the CSV version comparator if you need to see exactly what values changed before and after a catalog edit. Both work locally and do not make an external account change.
Frequently asked questions
Does a warning mean Shopify will reject the import?
No. It is a review flag. Duplicate SKU and compare-at price relationships can warrant investigation even when Shopify might permit the data.
Can this read my product CSV without uploading it?
Yes. Both the original data and results remain in an isolated browser editor. The tool does not connect to Shopify.
Will this correct the product file automatically?
No. It produces a separate findings report. Make deliberate edits on a backup, test a small import, and check live products.
Where can I verify the import rules?
See Shopify's official guide: https://help.shopify.com/en/manual/products/import-export/using-csv