Site Migrations · Guide

How to Migrate From Magento to Shopify Without Losing Rankings

Both of these are stores, which makes this a catalogue project rather than a content one. Products, categories, customer records and order history all have to move. The volumes involved are large enough that the redirect question stops being a task and becomes a planning constraint.

Updated: August 2026
Written by: Andrew Odgers, Managing Director
Reading time: 11 minutes
The reasons, plus what goes with them

Why Stores Make This Move

The usual reason is the burden of running a self-hosted store. That is a legitimate reason and it is worth being clear that removing a burden is a trade rather than an improvement.

The maintenance burden. The commonest driver.

Hosting, updates, security and the developer time all of it requires. For a retailer whose business is selling things rather than running software, that is a considerable overhead with no customer-facing return. Nothing a customer ever sees improves because the store was patched on time.

The specialist dependency. The one people mention second.

A self-hosted store frequently needs particular expertise to change anything. When the person holding that expertise leaves or becomes expensive, the store becomes difficult to develop. A store that cannot be changed easily is a store that stops being improved.

What is given up. Control, genuinely.

Anything the old system did through custom development may have no equivalent. The new arrangement decides what is possible. That is the same trade the rest of this cluster describes, running in the opposite direction.

Why that framing matters. It sets expectations.

A move sold as simplification, discovering that three important workflows cannot be reproduced, becomes a difficult project. The same move scoped realistically is straightforward.

Assume it, then plan around it

Address Structures Change Completely

The destination prescribes how addresses are constructed, so the old structure cannot be reproduced. Every product, every category and every content page moves.

Why there is no negotiation. The pattern is set.

A self-hosted system lets you construct addresses however you wish, which is why the old store's structure is whatever somebody decided years ago. The destination does not offer that choice, so preservation is not available at any price. This is the one migration question where no amount of budget changes the answer.

What that means at catalogue scale. A different order of task.

On a brochure site, changing every address means mapping perhaps a few hundred. On a mature store it can mean tens of thousands. That difference is not one of degree. It changes who does the work, how long it takes and whether it can be done by hand at all.

Why this is knowable immediately. No investigation required.

Unlike most migration questions, this one has an answer before anybody looks at anything. That makes it the easiest thing to scope correctly and the least excusable thing to get wrong. A proposal that does not mention address mapping has not been written by somebody who understands the project.

Where the destination behaviour is covered. Its own page.

How addresses behave once you have arrived, including products, variants and discontinued items, is covered in Shopify migration SEO rather than repeated here.

More than moving products

Product Catalogue Migration

Moving the products themselves is the part everybody plans for and the part that usually goes well. What surrounds each product is where the trouble is, because the two systems hold different things in different ways and neither was designed with the other in mind.

What usually transfers cleanly. The essentials.

Names, descriptions, prices, images and stock levels. These exist in both systems in comparable form, so a competent transfer moves them without much difficulty. This is the part that gets demonstrated in a proof of concept and the part that reassures everybody prematurely.

What frequently does not. The structured detail.

Custom attributes describing product characteristics, relationships between products, complex option arrangements and anything the old store held because somebody built a field for it. A self-hosted system accumulates those over years, usually without documentation.

Why that matters beyond tidiness. Those attributes did work.

Filtering, comparison and merchandising frequently depend on structured attributes. Losing them does not just lose data. It removes functionality customers were using, on pages that may have been ranking because of it.

What to do about it. Establish the mismatch first.

Compare what the old catalogue holds against what the new one has a place for, before the project is priced. Whatever has no home needs a decision rather than a discovery. Making that decision early is considerably cheaper than making it during a build.

Rarely a one to one translation

Categories And Collections

The two systems organise products differently, so a category structure rarely translates directly. That matters more than it sounds, because category pages frequently carry more search value than the products inside them, which makes this the part of the mapping worth doing most carefully.

Why the structures differ. Different models.

One organises products into a nested hierarchy of categories and subcategories. The other groups them, including automatically by rule. Those are different ideas rather than different names for the same idea, which is why a direct translation frequently is not available.

What goes wrong. Deep hierarchies flatten.

A store with several levels of subcategory frequently ends up with a shallower arrangement. Every page that existed at the levels being removed had an address. Many of them earned traffic.

Why this is the highest value part of the mapping. Concentration.

People search for types of product far more than for individual items, so category pages accumulate disproportionate value. They are also few enough to be mapped by hand rather than by rule, which means the most valuable part of the mapping is also the most controllable.

What to do first. Identify which ones earn.

From the audit, before anybody designs the new grouping, per URL mapping for a site migration.

Named, then routed to the right person

Customer And Order Data

Customer accounts and order history have to move. This is the one part of a migration where the important questions are not technical ones.

What this material is. Personal data.

Names, addresses, contact details and purchase histories belonging to real people. How it is handled during a migration is a data protection question rather than a search one. It belongs with whoever is responsible for that in the business. It should reach them at the planning stage rather than during a build.

What we will not do here. Advise on it.

We do not give legal or data protection guidance anywhere in this cluster. A general web page is not the place to receive it. This block exists to make sure the question gets asked of the right person early, rather than raised late by somebody unqualified to answer it.

The part that is a search question. Account addresses.

Login pages, account areas and order pages all have addresses that resolve. They frequently need excluding from search rather than redirecting, since they were never intended to appear in results. That decision has to be made deliberately rather than left to whatever the platform happens to do by default.

The practical customer point. Communication.

Whether customers need to do anything, such as resetting a password, is a commercial and operational decision that belongs in the launch plan alongside everything else. Discovering it on launch day produces support volume nobody scheduled for.

Where this move differs most

The Redirect Volume Problem

A large catalogue produces a very large number of redirects. Whether the destination can hold them, in what form, is a constraint to establish before the mapping rather than during it, because it changes what the mapping can look like rather than merely how long it takes.

Why the volume is so high. One per address.

Every product, every category, every filtered view that resolved and every address left over from previous changes. A mature store accumulates far more addresses than anybody would estimate from its product count, which is why the inventory has to be gathered rather than guessed.

The two questions that matter. Capacity and patterns.

How many the platform will hold, plus whether rules can be expressed as patterns rather than listed one by one. The second question is the one that decides whether this is an afternoon or a month.

What happens when the ceiling is hit. The map gets cut.

Something is dropped. It is almost always the long tail of older addresses. Those are exactly the ones carrying accumulated external links, which makes it the worst possible thing to cut.

What to do instead. Establish it during selection.

Before committing to the platform rather than after, alongside the other capability questions. It is one line in a supplier conversation and it prevents the worst outcome on this page, per how to implement 301 redirects.

The catalogue scale verification

What To Check After

The general launch checks apply. Five things matter specifically here. The ordering reflects value rather than convenience.

That the highest earning category pages resolve. Individually.

Few enough to check one by one, carrying the most concentrated value on the site. These are the addresses where a single missed redirect is genuinely expensive.

That product redirects behave by type. Not by sample.

Failures cluster by address type, so a sample of ordinary products can pass completely while an entire category of addresses fails silently.

That checkout and accounts work. The commercial floor.

Including whether existing customers can still reach their accounts, which is the failure most likely to generate complaints during the first trading day.

That catalogue detail survived. Against the record.

Particularly the structured attributes from block three, since filtering and comparison both depend on them. Neither one reports any error at all when they are absent.

That nothing is telling crawlers to stay away. Within the hour.

The check that outranks every other item on this list. The full series is on the website migration guide.

Website migrations

A trade,
running the
other way.

Every address treated as changing because none can be preserved, the catalogue mismatch established before the project is priced, the earning category pages mapped by hand because that is where the value concentrates, the redirect ceiling checked during platform selection, with the customer records routed to whoever handles data protection.

What a migration engagement covers:

Pre-migration audit Performance benchmark Address inventory URL mapping Redirect testing Launch day checks Notification Post-launch monitoring Recovery diagnosis

A migration is a one-off project rather than a monthly service, so it is scoped and quoted against the size of the site and how much is changing at once.

The full guide series

Every guide.
One practice.

What a migration is, the types, when to do it, planning, the checklist, auditing, mapping, redirects, internal links, tags, downtime, crawling, structured data, performance, notifying, monitoring, recovery and the mistakes.

Questions people ask

Replatforming A Store

Is moving to a managed platform a simplification?
It is a trade rather than an improvement. The maintenance burden goes, which for a retailer whose business is selling things rather than running software is a considerable overhead removed. What goes with it is control: anything the old system did through custom development may have no equivalent. A move sold as simplification that discovers three workflows cannot be reproduced becomes a difficult project.
Can we keep any of our addresses?
No. The destination prescribes how addresses are constructed, so the old structure cannot be reproduced at any price. Every product, category and content page moves. The useful part is that this is knowable before anybody looks at anything, which makes it the easiest thing to scope correctly and the least excusable thing to get wrong.
Will our full product catalogue transfer?
Names, descriptions, prices, images and stock levels usually will. Custom attributes describing product characteristics, relationships between products and complex option arrangements frequently will not, because the two systems hold different things in different ways. That matters beyond tidiness: filtering and comparison depend on structured attributes, so losing them removes functionality customers were using.
What happens to our category structure?
It rarely translates directly, because one system nests categories into a hierarchy and the other groups products, including automatically by rule. Deep hierarchies tend to flatten, so every page at the removed levels had an address that may have earned traffic. Category pages usually carry more search value than products, so map them by hand.
What about customer and order records?
That is personal data. How it is handled during a migration is a data protection question rather than a search one. We give no legal or data protection guidance anywhere in this cluster. Raise it with whoever is responsible for that in your business, early. The search-relevant part is account and order addresses, which frequently need excluding rather than redirecting.
Will the platform hold all our redirects?
Establish that before committing rather than after. A mature store accumulates far more addresses than its product count suggests, once you include categories, filtered views and leftovers from previous changes. Two questions decide it: how many the platform holds, plus whether rules can be expressed as patterns. When the ceiling is hit the long tail gets cut, which is where the links are.