Back to all articles
Import Guides

Shopify Product Import: Avoiding Duplicates and Overwrites

Importier Team10 min read
Retail merchant holding a printed quality checklist in a small warehouse with organised product shelves behind them.

How to Run a Shopify Product Import Without Creating Duplicates or Breaking Your Catalogue

A safe Shopify product import into an existing store requires more thought than a first import. You have 800 live products, active orders, and a Google Merchant Centre feed that took months to clean up. The last thing you want is a CSV file that creates 300 duplicate listings, overwrites pricing on your top-selling variants, or collapses carefully structured variant groups back into flat product rows.

Shopify's native CSV importer does not include a preview step. There is no way to see how many products will be created versus updated before you click confirm. Once the import runs, the only way to recover is to manually identify and delete wrong products, a process that takes hours for a 300-product batch. Shopify's guide to ecommerce catalogue management notes that product data quality is one of the most time-consuming operational challenges for growing stores. Import errors compound that challenge.

This is the procedure that prevents those outcomes.

Three Ways a Shopify Product Import Can Break Your Catalogue

Before covering the prevention steps, it helps to understand the three failure modes. Each has a distinct cause and a specific fix.

Handle conflicts produce silent updates. Shopify uses the Handle column to determine whether to create a new product or update an existing one during import. If a row in your incoming CSV has a Handle that already exists in your store, Shopify updates the existing product with the incoming data rather than creating a second listing. This is the right behaviour for intentional updates. For a new supplier's catalogue, it produces silent overwrites of your existing products.

A fashion accessories merchant with 450 existing products about to import 180 new SKUs from a new supplier illustrates the risk precisely. Without a preview check, 23 of those 180 SKUs have Handle values that already exist in the store. Those 23 rows update existing products rather than create new ones. Prices, images, and descriptions from the new supplier overwrite the current versions. The merchant won't notice until a customer reports wrong product information.

Variant grouping failure creates product floods. Supplier CSV files store variants as separate rows without the Handle-based grouping Shopify expects. A 300-product catalogue with 5 variants each becomes 1,500 separate product listings in Shopify instead of 300 grouped products. Fixing this after the import means bulk-deleting 1,200 incorrect listings and re-importing with the correct structure, typically several hours of recovery work.

Partial supplier data overwrites complete existing data. When a supplier sends an update CSV for existing products, it often contains only the columns that changed (price, inventory) and leaves others blank. If your import mapping treats blank cells as "clear this field," AI-generated descriptions, optimised titles, and category metafields built up over months can be erased in a single import run.

For the first two failure modes, we have covered the technical mechanisms in detail: see why Shopify CSV imports create duplicate products and how to import product variants without restructuring your supplier CSV. This article focuses on the preventive procedure.

The Five-Step Safe Import Procedure

  1. 01
    Export your current product catalogue using the Full Shopify CSV export preset before importing anything. This gives you a reference point. If anything goes wrong, you can check the pre-import state. It also surfaces which Handle values are currently in your store so you can map incoming supplier SKUs to existing Handles correctly
  2. 02
    Upload your supplier file to Importier and go through the column mapping step. Review the auto-mapping results before proceeding. Pay particular attention to which column the wizard has mapped to Handle. This is the column that determines whether each row becomes a new product or updates an existing one. If your supplier CSV uses SKU as the stable identifier, tell the wizard to derive Handles from SKU
  3. 03
    Review the import preview before confirming. The preview shows the exact create vs update count for your batch. A batch of 180 products that shows 157 creates and 23 updates needs investigation before you click confirm. Open the update list and check those 23 products
    are they intentional updates, or Handle collisions from a new supplier?
  4. 04
    Run a test batch first. Import 20-30 products from the new supplier file before running the full batch. Check your Shopify admin
    look for duplicate listings in the title-sorted product view, verify variant grouping is correct, and confirm that existing products were not modified unexpectedly. Only scale to the full batch once the test passes
  5. 05
    Use Import Undo if the full batch produces unexpected results. Import Undo removes all products from a specific import batch
    created products are deleted, updated products are reverted to their pre-import state. It does not affect existing orders. The 20-snapshot limit means you have a buffer of 20 recent imports to roll back at any time

Retail buyer sorting through duplicate product catalogue cards spread on a table, identifying and removing extra copies.

What the Import Preview Tells You

The import preview step is the most important gate in a safe import workflow. It runs before any product touches your Shopify store, and it gives you four pieces of information you cannot get after the import runs.

Create vs update count. The preview shows how many products will be created as new listings and how many will update existing ones. For a new supplier file with no overlap with your existing catalogue, you expect nearly 100% creates. Seeing a large number of updates in a new-supplier import is a signal that Handle values are colliding.

Variant grouping results. Smart Variant Detection analyses your incoming rows and proposes variant groups before the import runs. The preview shows you how products have been grouped: which rows have been combined into a single product with multiple variants, and which remain as separate products because no variant pattern was detected. Review any product in the preview where you expected variants but the grouping shows separate listings.

Image reference status. The preview checks image URLs for common failure patterns (Google Drive sharing links, relative paths, expiring CDN URLs). Images that will fail silently are flagged before the import runs. Importier downloads and re-hosts marketplace images at import time, which prevents the broken image problem for marketplace imports.

Data completeness. The preview shows which products have thin or missing data fields before AI description generation runs. This is the point to add context hints for ambiguous products such as those with niche category names or unusual manufacturer naming conventions. These hints improve the quality of AI-generated content.

The import preview is not a confirmation screen. It is an editing opportunity. Treat it as the last chance to catch what the column mapping step missed.

Printed product data report on a desk with a red marker circling key figures in two columns.

The Test Batch: Start Small, Scale Once You Are Confident

The test batch workflow protects against format issues that the import preview cannot detect until products actually reach Shopify. A 20-30 product sample from a new supplier file exposes three things that matter.

Shopify collection assignment. The preview cannot confirm that products will appear in the right Smart Collections after import. Smart Collections use product type, vendor, and tag rules to assign products automatically. If your supplier's product type field uses different naming conventions than your collection rules expect, products land in no collection and become unreachable on the storefront. Catching this on 20 products is a 2-minute fix; catching it on 500 products after customers start reporting missing products is not.

AI description quality. The first batch tells you whether your persona and style configuration matches the supplier's product vocabulary. A technical gadget persona generating product descriptions for artisan food products produces correct but mismatched output. Adjust settings and re-run the test batch before scaling.

Price and currency alignment. If your supplier uses a different currency, the tax step in the import wizard handles conversion. A test batch confirms the conversion has applied correctly and that the resulting prices match your expected margin targets before 400 products land with wrong prices.

Small selection of mixed retail product boxes lined up on a warehouse inspection shelf being quality checked.

Import Undo: When Something Slips Through Anyway

Even with the preview step and a test batch, imports occasionally produce unexpected results. A supplier who changed their product naming conventions mid-file, a Handle collision that only appeared in the second half of the batch, a variant grouping pattern Importier had not seen before.

Import Undo removes all products from a specific import batch in one step. Created products are deleted. Products that were updated are reverted to their pre-import state. The rollback does not affect existing orders placed on any products from that batch. Import History retains up to 20 snapshots and makes CSV download available for 60 days after each import.

Without Importier
Shopify Native CSV
  • No preview: find out how many duplicates were created after the import
  • No undo: manual deletion and re-import is the only recovery
  • No variant grouping detection: 300 products become 1,500 separate listings
  • No image validation: broken image references fail silently post-import
With Importier
Importier
  • Import preview shows create vs update count before any product touches Shopify
  • Import Undo removes an entire batch in one step, reverting updates to pre-import state
  • Smart Variant Detection (150+ patterns, 15+ industries) groups variants before the import runs
  • Image references validated in preview, marketplace images re-hosted at import time

For a complete walkthrough of the Import Undo feature, including what it covers, what it does not cover, and the 20-snapshot retention policy, see how to undo a Shopify product import.

If imported products appear to be missing from your storefront after a clean import, the most common causes are draft status, no collection assignment, and Handle conflicts, all covered in Shopify products not showing after import.

Warehouse worker returning stacked product boxes to their original organised shelf positions after a stock error.

Making Safe Shopify Product Imports the Default Workflow

The manual safe-import procedure becomes automatic for recurring supplier feeds. Scheduled Imports run the same 14-step wizard with the same column mapping, same variant detection settings, and same AI pipeline on each scheduled cycle. Shopify's overview of ecommerce product management identifies recurring supplier catalogue updates as one of the top operational bottlenecks for growing stores. Scheduled Imports address that bottleneck without requiring the merchant to re-run the safe-import procedure manually for each delivery.

Import History keeps a searchable log of every import run: date, file name, product count, create vs update split. For merchants running monthly supplier updates across multiple catalogues, Import History is the audit trail that confirms each batch ran correctly and provides the CSV download if a batch needs to be reviewed or repeated.

Key Takeaways

  • Shopify's Handle column determines whether each incoming row creates a new product or updates an existing one. Before importing a new supplier's catalogue, check which column the wizard maps to Handle and verify the create vs update split in the import preview.
  • The import preview shows the exact create vs update count before any product touches your store. A large update count in a new-supplier batch is a Handle collision, not an intentional update.
  • Smart Variant Detection (150+ patterns across 15+ industries) proposes variant groupings before the import runs. Review the grouping results in the preview step before confirming: this is the point to catch flat rows that should be grouped as variants.
  • Run a test batch of 20-30 products before scaling a new supplier file to the full import. Test batches expose collection assignment, AI description quality, and price alignment issues before they affect your full catalogue.
  • Import Undo removes all products from a specific batch in one step, reverting updates to their pre-import state. The 20-snapshot limit means you can roll back any of the last 20 imports without manual product-by-product recovery.

See how Importier handles this at importier.app.

Ready when you are

Set up your first import in under five minutes.

Importier brings products into Shopify with AI descriptions, category metafields, and data enrichment on every run.

Install on Shopify