// Migration

Migrating from Wix to Shopify: what actually breaks

The export runs, the import says success, and then you find variants have become separate products and half your URLs are 404ing. Here's the list of what breaks, in the order it usually breaks.

Two platforms, two different ideas of what a product is

The root of nearly every Wix-to-Shopify migration problem is structural. The platforms model products differently — options, variants and inventory don't line up one to one. Push an export from one into the importer of the other and the mismatch resolves itself in whatever way the importer finds easiest, which is rarely what you wanted.

Here's what goes wrong, roughly in the order people discover it.

1. Variants become separate products

The most common and most damaging one. A shirt with three colours and four sizes should be one product with twelve variants. After a careless import it's frequently twelve products, each with one variant, cluttering your catalogue and splitting inventory across items that should share it.

The check: before importing, compare your source product count against the row count in your CSV. If the rows massively outnumber the products and the handle column isn't repeating correctly, your variants are about to explode.

2. Option order scrambles

Shopify assigns Option1, Option2 and Option3 positionally. If Size lands in Option1 for some products and Option2 for others, your storefront filtering breaks in ways that look random and take ages to trace.

The check: confirm that the same option name occupies the same position across every product in the file.

3. Images arrive out of order — or not at all

Image order matters, because the first image is the one shown in collections and search results. Exports often list images in a single delimited field with no guaranteed order, and image URLs can require authentication or expire.

The check: after import, spot-check twenty products against the old store. Count the images and confirm the first one matches.

4. SEO fields get dropped

Page titles and meta descriptions live in different fields on each platform, and they're frequently the first thing an import quietly discards. You keep the products and lose the search metadata you spent years earning.

The check: confirm the page title and description columns are populated in the CSV before you import, not after.

5. URLs change and nothing redirects

This is the one that costs money. Your Wix product URLs are indexed and linked. Shopify generates its own handles. Without redirects, every one of those becomes a 404 — for customers with bookmarks, for Google, and for anyone who linked to you.

Do this before go-live, not after: build a mapping of every old URL to its new one and put 301 redirects in place at launch. Finding out from Search Console six weeks later means six weeks of lost traffic you don't get back.

6. Products import "successfully" and stay invisible

The import reports success. The products exist in the admin. And customers can't find them, because they're not published to the online store sales channel, or they're not in any collection, or they're not reachable from navigation.

The check: after import, verify each product is published, on the right sales channel, in at least one collection, and reachable by clicking through the storefront like a customer would.

7. Descriptions lose their formatting

Rich-text descriptions carry markup that doesn't always survive the trip. Lists flatten into paragraphs, tables collapse, and specification blocks turn into unreadable runs of text.

The check: compare the rendered description of a handful of your most complex products against the original, side by side.

A migration order that works

  1. Export from Wix and read the file before doing anything with it.
  2. Map the fields deliberately — variants, options, images, SEO — rather than trusting a default mapping.
  3. Import into a development store first. Never straight into a live one.
  4. Reconcile counts: products, variants and images, source against destination.
  5. Run the visibility check — published, channel, collection, reachable.
  6. Build the redirect map and have it live at launch.
  7. Verify content: descriptions and specifications against the source.
  8. Go live, then watch Search Console for the first fortnight.

The honest summary

A Wix-to-Shopify migration is not a hard job, but it is a detailed one, and almost all the pain comes from treating "the import succeeded" as the finish line. It's the halfway point. The second half — reconciling, verifying visibility, redirecting URLs — is what separates a migration nobody notices from one your customers report to you.

// questions

Dealing with this on a live project?

Send us the details. We will tell you what we would do, before we talk about money.