What the error means
Shopify says the file may contain duplicate options for one product, or the same product may appear elsewhere under the same handle. Compare the full option combination, not just one Size or Color cell. Repeated handles are expected on genuine variant rows.
Two rows, one Size value
Both rows below belong to handle tee and resolve to the Size: M option combination. On a narrow screen, scroll the code block sideways to view all columns.
Title,URL handle,Option1 name,Option1 value
Tee,tee,Size,M
,tee,,M
Rule V001 flags both business rows. A blank Title and Option1 name on a continuation row do not make M a different variant.
Title,URL handle,Option1 name,Option1 value
Tee,tee,Size,M
,tee,,L
Use L only if the second row really describes size L. Otherwise remove a truly duplicate row or correct the product mapping after checking the source data.
How to investigate safely
- 01
Keep the original CSV. Group rows by URL handle, then compare every non-empty Option1, Option2, and Option3 value within each product.
- 02
Check whether the repeated rows are distinct intended variants, accidental duplicate product rows, or image-only continuation rows. A repeated handle alone is not a reason to rename a product.
- 03
Correct the actual source mistake: give a real variant its true option value, remove only a confirmed duplicate, or use the right handle if it belongs to another product.
- 04
Run the local check again, review other findings, and verify any changes to existing variants in Shopify before import.
Find duplicate combinations locally
Changing an option? Review variant identity
V001 checks whether a file repeats an option combination. Two files can each have unique combinations while an edit changes how an existing variant is identified.
This example has one Hoodie product and four explicit variants. Only two Option1 value cells change from Blue to Navy; SKU, Logo, Price 45, handle woo-45 and every other cell stay the same. Both files pass the current Validator checks.
| SKU | A · Color | B · Color | Logo |
|---|---|---|---|
woo-hoodie-blue | Blue | Navy | No |
woo-hoodie-blue-logo | Blue | Navy | Yes |
A controlled derivative of the official WooCommerce sample, converted to a Shopify draft CSV. The original sample does not contain this before/after edit. Use these files for practice; they are not exports from your store. Pinned official sample
- 01
Load the public example below. Keep “I’m not sure” selected and run Compare to inspect both overwrite scenarios.
- 02
With overwrite selected, expect two high-risk “Possible option change” findings. The other two variants match exactly. Without overwrite, the existing handle is ignored and this example has no findings.
- 03
Expand each finding to review Blue → Navy and the No/Yes Logo values. Download the comparison report. For a real update, compare a fresh store export with your edited file, then verify affected variants and app references in your store.
Compare uses the handle and complete option combination; a unique SKU or barcode can suggest a possible change. It cannot read actual store variant IDs or predict import acceptance. These public files contain no store IDs.
Only the two public sample files are fetched. Comparison runs in your browser; file contents are not uploaded. No account or test store is needed for this exercise.
Official CSV guidance reviewed on October 7, 2026: Shopify: product CSV options and variant IDs
Sources checked: 28 September 2026. Shopify: common import issues · Shopify: product CSV options and variant IDs
Catalog Precheck is an independent tool and is not affiliated with Shopify.