A repeated handle is not automatically an error
Shopify product CSVs can repeat the same URL handle for additional images and variant rows. This checker therefore treats repetition as something to inspect, not an automatic failure, while also checking whether the first row for that product is missing its Title.
The key question is whether the repeated rows belong to one product or whether two different products accidentally share the same handle.
The current header is URL handle
Shopify’s current product CSV uses `URL handle`. Older templates used `Handle`, and Shopify keeps backward compatibility, so this checker recognizes both. A handle cannot contain spaces, so a value such as `blue shirt` is flagged.
A new simple product can derive its handle from Title, but updates and products with variants rely much more heavily on the URL handle as the product key.
Inspect the first row of each product group
Blank Title cells on later rows can be normal for image or variant rows. A blank Title on the first row for a handle is more significant because that row normally carries the product-level information.
That is why this tool groups rows conceptually by handle instead of judging every blank Title the same way.
A practical example
If `shirt-blue` appears three times, check that the first row contains the product title and that later rows are intentional images or variants. If a completely different product name shares the same handle, fix the handle before import.
After that, run the broader Shopify product CSV preflight to catch price, fulfillment, option, and image issues too.