Skip to content

Migration

Migrating product data to Shopify: what usually breaks

June 18, 2026 · 6 min · ScaleLab

Product data is where migrations quietly go wrong. The store launches, everything looks fine — and then customers find variants that don't exist, sizes mapped to the wrong SKUs, and category pages missing half their products. Data problems don't crash; they erode trust one order at a time.

01Why the CSV export-import shortcut fails

Every platform models products differently. WooCommerce's attribute system, Magento's configurable products and custom database fields do not map one-to-one onto Shopify's options, variants and metafields. A flat CSV forces that mapping to happen implicitly — which means wrongly.

The 100-variant-per-product limit, three option dimensions, and Shopify's handle-based URLs all need explicit decisions. A migration pipeline makes those decisions visible and testable; a CSV hides them until a customer finds the result.

02Map the model before you move the rows

Start with a schema mapping document: every field in the source — attributes, custom fields, brand data, SEO text, unit prices — and its destination in Shopify, which is usually a combination of native fields and metafields. Fields with no destination get an explicit decision: drop, merge or restructure.

This is also the moment to clean. Migrating eight years of catalog cruft — dead products, inconsistent attribute naming, duplicate SKUs — just moves the mess to a new house. Cleaning during mapping costs hours; cleaning after launch costs weeks.

03Images, categories and the things nobody owns

Images need more than transfer: alt texts must survive (they are both accessibility and SEO), file names should stay stable where possible, and variant-image links must be re-established — the classic bug is every color variant showing the same photo.

Category structure rarely maps cleanly to Shopify collections. Smart collections built on tags and metafields are usually the more maintainable translation, but they need the tagging to be consistent — which loops back to cleaning.

04Validate like a customer, not like a database

Row counts matching proves nothing. Validation means sampled, human inspection: the bestsellers checked variant by variant, prices against the source, inventory against the warehouse, and every collection page eyeballed for missing or misplaced products.

Prioritize by revenue: the top 100 products get individual review, the long tail gets statistical sampling. A data error on your bestseller costs more than a hundred errors in products nobody visits.

Where to go next

This is what we do all day.

Want this done for your store?

A Growth Plan™ is a free 45-minute strategy session — you leave with your biggest bottlenecks mapped, whatever you decide afterwards.

Book your Growth Plan™