
Deleting variants one at a time is no big deal if you have three products with three variants each to delete, but if you have 400 products with 400 variants each to delete, you’re going to want a bulk approach. Shopify provides 2 usable methods to delete products and variants in a bulk manner, as well as a 3rd method if you are willing to spend some money on apps. In this guide I’ll walk you through all 4 methods, point out their gotchas, and explain why deleting a variant can silently cause your product image to never display.
Variants cannot be deleted – it’s an irreversible operation with no ‘undo’ or variants in ‘trash’ – be careful and back up first.
On this page
Method 1: Native bulk editor
It’s possible in theory to delete variants via the bulk editor in the product admin of Shopify, but it can be extremely cumbersome to delete more than a handful of variants this way.
- Open a product. Scroll to the Variants section.
- Select the variants you want gone via the checkbox.
- Click the “…” or More actions menu. Pick Delete variants.
- Confirm. Move on to the next product.
Limit: this would be much easier if there were a “delete variant X across all products in collection Y” button. There isn’t.
Method 2: CSV re-import
Free! Every Shopify merchant misses this one. The trick to having Shopify’s CSV import software correctly treat missing variant rows as deletions (instead of insertions).
- Export all products as CSV.
- Open in a spreadsheet. Delete the rows corresponding to the variants you want removed. Keep at least one variant row per product (Shopify requires one).
- Save as UTF-8 CSV.
- Go to Products, Import. Tick “Overwrite existing products that have the same handle”. This is the important part.
- Upload. Preview. Confirm.
Note: this overwrite mode affects EVERY FIELD, not just variants 6. This overwrite mode affects EVERY FIELD, not just variants. If someone edited a product description yesterday and your export is from last week, you just overwrote their edit. Export fresh, import immediately.
Method 3: Matrixify
Matrixify also deals well with deleting records. You could make a sheet with the IDs or SKUs to delete, have a Command column set to DELETE and import it. It only ever touches the rows you ask it to, and doesn’t do an overwrite like it does for INSERT commands.
This is the right answer for anything over a few hundred variants. If you have more than a few hundred variants you should use this. Also for deleting based off filters, like all variants with zero inventory or all variants tagged “discontinued”, etc.
Method 4: Bulk delete apps
| App | What it does | Pick if |
|---|---|---|
| Hextom Bulk Product Edit | Filter by rules, delete in bulk | You want a UI, not a CSV |
| CS Bulk Delete Products | Delete by collection, vendor, tag, date, inventory, with preview | You also need to clean up old products |
| Matrixify | CSV command-driven | You want reproducible scripts |
CS Bulk Delete Products: Full product delete with preview. Not guaranteed, but safe. Variants only? Look at Hextom’s ‘Bulk Product Edit’ or ‘Matrixify by Hextom’ instead. These are safer and better for that type of work that you probably should be doing in a different extension anyway.
Gotchas that silently break your store
- SKU reuse. If you delete a variant and later try to create a new variant with the same SKU, sometimes the admin complains. Wait a few minutes, or use a new SKU.
- Images orphaned. Deleting a variant does not delete its image from the product. The image stays in the gallery, just unassigned. Usually fine, but can clutter.
- Inventory locations. Deleting a variant removes it from every location. If another store is pulling inventory via API, they lose the ID.
- Variant image apps. If you use an app like Rubik Variant Images, the metafield assignment for that variant is cleaned up automatically. But older apps sometimes leave stale assignments. Check after a bulk delete.
- The last variant rule. Every product needs at least one variant. Try to delete the last one and Shopify blocks you. You must delete the product instead.
- Option types. If you delete every variant that uses Option3, the option definition itself stays on the product. Remove it manually. This is fiddly.
- Combined listings. If your product is part of a combined listing group via Rubik Combined Listings, deleting its variants doesn’t break the group. Real-time sync handles it. But if you delete the whole product, remember to update the group.
Shopify’s hard limits to remember: 2048 variants per product (via combined listings) and 3 option types max per product. If you are bulk-deleting to get under these limits, you probably need Combined Listings instead of fewer variants.

Learn which helpful tools you can use before you even start deleting records with this step. Use the Variant Calculator to estimate how many variants will be created by a particular combination of options, and the Variant Limit Checker to see which products are at risk of exceeding limit caps before you import them. Both of these tools are free and can be downloaded through Craftshift, in addition to the resources listed below for general catalog cleaning. For information on how to bulk delete individual products fast, click here. To learn how to hide variant images on a product page after you delete records of a product, click here.
Demo, tutorials, docs
Live demo at http://rubikdemo.com. Video tutorials on removing variants can be found at http://rubikvariant.com and http://rubikswatch.com. Both Rubik apps come with free plans.
“This app makes it super easy to manage images for products that have multiple variations (size and flavor in my case). The support is great as well!”
Shopify merchant, Rubik Variant Images reviews
FAQ
Can I undo a bulk variant delete in Shopify?
No. There is no undo. You must restore from a backup.
Can I delete the last variant of a product?
No. Every product needs at least one variant. Delete the product instead.
Does deleting a variant delete its images?
No. Images stay in the product gallery. You have to remove them separately.
What is the fastest way to delete thousands of variants?
Matrixify with a DELETE command CSV. Scales to hundreds of thousands of rows.
Does deleting variants affect orders?
No. These Historical orders preserve information of purchased variants even after they are deleted.
How many variants can a Shopify product have?
Up to 2048 variants per product via combined listings, with max 3 option types.
Will deleting variants break my variant image app?
Metafield-based apps will automatically clean up. Older apps might leave behind unused assignments. Manually verify a small sample of records after performing a bulk delete.





