Shopify CSV import: "Title can't be blank"
You ran a product CSV import and Shopify stopped with "Validation failed: Title can't be blank". The frustrating part is that your products clearly have titles. Here's what the error actually means and how to fix it.
What the rule really is
In a Shopify product CSV, a product is a block of rows that share the same
Handle. The first row of each handle block must contain the
Title. Later rows for the same product (extra variants and images) are
supposed to leave Title blank. So Shopify isn't complaining that titles are missing
everywhere — it's complaining that the first row of some product has no title.
The usual cause: re-sorted rows
This almost always happens after a file is opened and sorted in Excel or Google Sheets. Sorting by price, SKU, or any column reorders the rows, and a variant row (which correctly has a blank title) ends up as the first row of its handle. Now the first row of that product has no title, and the import fails.
How to fix it
- Make the titled row first. For every product, ensure the row that carries the Title is the first row of its handle block. Sorting by Handle (and keeping the titled row on top within each block) restores this.
- Check for genuinely missing titles. If a product has no titled row at all, add the Title to its first row.
- Watch for split handle blocks. If the rows for one handle aren't contiguous — they appear, then other products, then resume — Shopify treats the second group as a new product with no title. Group all rows for each handle together.
Related: common Shopify CSV import errors · fixing duplicate handles.