What blank cells do when you import a product CSV
Checked against Shopify's help pages on November 6, 2026. This guide is based on their documentation. We haven't run these cases on a live store.
The short answer
If you import with Overwrite products with matching handles selected, an empty cell isn't the same as a column you left out.
- A blank cell in a column that's in your file can erase the existing value.
- A column you left out of your file usually leaves the existing value alone.
If you don't select the overwrite option, Shopify ignores products whose handles already exist, so nothing changes on them.
The three cases
| What's in your file | What happens to the existing product | Shopify's example |
|---|---|---|
| A non-required column is there, but the cell is blank | The value is overwritten as blank | Vendor was "John's Apparel" and the cell is blank, so the vendor is erased |
| A non-required column isn't in the file | The value stays the same | Leave out Variant image URL and the existing value stays |
| A column is there, but a column it relies on isn't | Existing data is deleted or removed | SKU is there, but Option1 name and Option1 value aren't, so the variant option is deleted |
Some blanks become defaults, not empty values
Certain columns can't really be empty. When no value is entered, Shopify's column list says a default applies. That can be worse than an empty cell, because the result looks like real data.
| Column | Default | Why it matters |
|---|---|---|
| Price | 0.00 | A blank price can mean a product priced at zero |
| Inventory quantity | 0 | Stock can read as zero. This column applies only to stores with a single location |
| Published on online store | true | A hidden product could become visible |
| Continue selling when out of stock | deny | Items you allowed to oversell could stop selling at zero |
| Requires shipping | true, but see the note below | A digital product could be marked as needing shipping |
| Charge tax | true, but see the note below | A tax-free item could start charging tax |
| Weight value (grams) | 0 | This can affect carrier-calculated shipping |
| Weight unit for display | kg | The weight can display in a different unit |
| Fulfillment service | manual | A variant using another service may no longer show it |
Note on Requires shipping and Charge tax: Shopify's guides conflict here. The product column list gives true as the default, while its general CSV guide says to set FALSE or leave blank when an item isn't shipped or taxable. Set true or false explicitly instead of relying on a blank.
Three columns to treat with care
- Status. If the column is present, it needs a value. Shopify's column list also says that if the column isn't present, status is uploaded as active. If you have draft or archived products, keep this column filled in, and check those products after a test import.
- Inventory tracker. If existing tracking is removed, inventory is no longer tracked.
- Packed product columns. Fill in all four or leave all four blank. Filling in only some causes an import error for that product. On a row with variant data, four empty cells clear the saved packed size. To keep it, leave those columns out of the file. There's one exception: setting Requires shipping to false clears the saved size even if the columns are left out, and any packed values on that row are ignored.
How to avoid wiping values by accident
- Export a backup first. Shopify lists this as a use for product export, and tells you to have a backup before importing.
- Remove columns you aren't changing, with care. Keep URL handle and Title, and keep Status with each product's current value. If you're changing anything about variants, such as SKU, keep every option name, value and linked-to column your products use, unchanged.
- Compare the file with your export. The free checker lists blank cells that sit over existing values.
- Import a few products first. Shopify says imports can't be canceled once they begin, so a small test is cheap protection.