All posts
How-toOctober 11, 20268 min read

How to migrate ecommerce platform without wrecking SEO

Products, customers, orders, URLs, email and DNS — in the order that works, with the redirect map done before the cutover.

The short version

  • Build the redirect map from four sources — sitemap, Search Console impressions, 12 months of analytics landing pages, and a backlink export — before you rebuild anything.
  • Email authentication and mailboxes go up before the DNS cutover, and DNS goes last with a 300-second TTL set two days ahead.
  • Customer passwords, product reviews, saved cards and subscription billing tokens do not migrate; plan a password-reset email and a separate subscriber communication.
  • Keep the old store running for a month and keep every redirect live for at least a year.

Most platform migrations go wrong in the same place, and it is not the products. It is the URLs. The catalog moves in an afternoon; the search traffic that took three years to earn disappears the day the old addresses stop resolving.

This checklist is therefore ordered by risk, not convenience: the redirect map before the rebuild, email before DNS, DNS last.

Two decisions that set the whole order

Are you changing URL structure? Keeping the same paths — product handles, collection paths, blog paths — makes most of this easy, because the cheapest redirect is the one you never needed. Changing structure is sometimes right, but do it as its own project, not as a side effect.

Can you keep the old store alive for a month? You should. One extra month of subscription is the cheapest insurance here: something to diff against, something to roll back to, and a place to re-read data you forgot to export.

Step 1 — freeze the old store

Stop adding products, prices, pages and posts on the old platform from the moment you take your first export. Anything added later must be tracked by hand and migrated twice.

Tell whoever else has a login. A migration broken by someone uploading 40 products mid-move is common and avoidable.

Step 2 — export everything you own

Export to files you keep, not to a transfer tool you hope works.

WhatExport asThe part people miss
Products and variantsCSVVariant SKUs, barcodes, weights, per-variant images; option names and their order
InventoryCSVQuantities per location, exported on the day of cutover, not weeks before
CustomersCSVMarketing consent status per contact, and the date it was given
OrdersCSVLine items, taxes, shipping and refunds, not just order totals
Pages and blog postsHTML or MarkdownThe URL of each one, which is what step 3 needs
Discount codesCSV or listCodes printed on packaging or still live in old emails
ImagesOriginal filesThe high-resolution originals, not the resized ones the storefront serves
Existing redirectsCSVAny redirects already in place from a previous move — these have to be carried forward too

Two warnings on that table. Customer passwords cannot be exported from any reputable platform, because only hashes are stored, so plan a set-a-new-password email for launch day. And order history arrives as records, not as history — imported orders may not re-trigger notifications or line up with your analytics, so treat the export as your accounting record first.

Do not assume a one-click importer exists. Ask the question explicitly before you plan a week around one. On mAutomate, what the AI builds for you is the storefront, the product pages, the copy and the on-page SEO; bringing the catalog across is work you own and should budget for.

Step 3 — build the redirect map

This is the section that decides whether the migration costs you traffic. Do it before you rebuild: it tells you which URLs the new store must be able to produce.

Get the real URL list

Your sitemap is not enough; it only has what the old platform currently publishes. Combine four sources and deduplicate:

  • The old sitemap.xml, including nested sitemaps for products, collections and blog.
  • Search Console, Pages export — every URL with impressions in the last 12 months. This catches URLs you forgot existed, and URLs ranking for things you did not know about.
  • Analytics, landing pages, last 12 months. Sort by sessions, keep anything above zero.
  • A backlink export. Any URL someone else linked to is one you cannot afford to break, even with no traffic today, because the link is the asset.

What the map looks like

One spreadsheet, one row per old URL, six columns: old path, 12-month sessions or impressions, new path, rule type, migrated, verified.

Rule type is the column that saves you days. Most rows are not one-offs:

  • Pattern — every URL under one old prefix maps to a new prefix. One rule can cover hundreds of rows.
  • One to one — a specific old URL to a specific new one. Use it for top pages and anything with a backlink.
  • Consolidate — several old URLs to one new page, when the content genuinely merged.
  • Retire — the page is gone with no replacement. Let it return 404 honestly rather than redirecting it somewhere irrelevant.

Sort by sessions and work top down. The first 50 rows usually cover most of the traffic — an illustrative rule of thumb, not a fact about your store; your own sorted list gives you the real number in a minute.

Four ways redirect maps fail

  1. Everything points at the homepage. A redirect to an unrelated page is treated as a soft 404 by search engines and a dead end by humans, so you lose the ranking and the visitor.
  2. Chains. Old URL to interim URL to final URL. Each hop loses a little and some crawlers stop following. Flatten every chain to a single hop.
  3. The target 404s. Half a redirect map built against planned URLs that changed during the rebuild. This is why step 3 comes before step 4 and gets re-verified after it.
  4. The map is deleted too early. Keep every redirect live for at least a year. Old links in emails, forums, PDFs and other people's blog posts keep arriving long after the search index has caught up.

Use permanent redirects — status 301 — for anything that moved for good. A temporary redirect tells search engines to keep the old URL, which is the opposite of what you want.

Verify it mechanically

After the rebuild and again after cutover, run every old URL through a script and check its status code and final destination. A shell loop over a text file with curl -s -o /dev/null -w "%{http_code} %{redirect_url}" is enough, and it finds the rows you typo'd in seconds.

Step 4 — rebuild on the new platform, unpublished

Build the whole store before the domain points anywhere near it, and keep product handles identical where you can. Do the pages that earn traffic first — top products, top collections, the blog posts bringing half your organic visits — and the long tail second. Then re-verify the map against what you actually built, because handles drift during a rebuild.

Step 5 — email, before DNS

Email breaks migrations more often than products do, because one domain carries both the store and the mailboxes.

  • Create the mailboxes on the new provider and verify you can send and receive before cutover.
  • Set up sending authentication — SPF, DKIM and DMARC — for the new sender, and give the records time to propagate.
  • List every automated email that leaves your domain — order confirmations, shipping notices, password resets, newsletter, invoices. Each needs the new sending setup or it lands in spam on day one.
  • Export your email list and its consent dates. Do not import contacts you cannot show consent for.

Step 6 — payments, tax, shipping, and one real order

Connect the processor, set tax, rebuild shipping rates and zones, copy your policy pages across. Then place a real order with a real card at full price, check the confirmation email arrives, and refund it. Twice: once on desktop, once on a phone on mobile data.

Also: subscription customers rarely transfer, because the payment tokens are tied to the old setup. If you have subscribers, that is a separate migration with its own customer email, planned before the cutover date rather than after.

Step 7 — the DNS cutover

  • Two days ahead, lower the TTL on your DNS records to 300 seconds, so a mistake undoes in minutes rather than hours.
  • Cut over at your quietest hour, which last week's analytics will tell you.
  • Keep the old store reachable on a temporary subdomain.
  • Change nothing else that day. No pricing updates, no new products, no ad changes.

Step 8 — the first 48 hours

Run the redirect verification again against the live domain. Submit the new sitemap in Search Console. Watch your 404 log daily and add rows to the map as real misses appear — the highest-value hour of work in the whole migration. Check order confirmations are landing in an inbox, not a spam folder. Buy from your own store once more, as a stranger would.

Step 9 — the 30-day check

Compare landing-page traffic page by page against the same period on the old store, not totals, because totals hide one page falling off a cliff. Check Search Console for pages newly marked as not indexed. Expect a dip for a few weeks even on a clean migration; what matters is a dip that is not recovering, or one concentrated on a few URLs, which is almost always a redirect problem you can still fix.

What does not move at all

Product reviews are usually locked to the app that collected them. App data — loyalty points, quiz answers, wishlists — stays behind. Saved cards belong to the gateway, not to you. And the authority your URLs built is carried by nothing except the redirects from step 3.

Which is the argument for doing this once, deliberately. If you are still weighing where to land, choosing a platform as a beginner and the full fee breakdown are worth reading first, and you can rebuild on a 14-day trial with no card from get started while the old store still runs.

Questions people ask

How do I migrate an ecommerce platform without losing SEO?

Export a complete list of old URLs from your sitemap, Search Console impressions, 12 months of analytics and a backlink report, then map each one to its new address with a permanent 301 redirect before you cut over. Avoid redirect chains and never point unrelated pages at the homepage.

In what order should a store migration happen?

Freeze the old store, export all data to your own files, build the redirect map, rebuild the store unpublished, set up email and sending authentication, connect payments and place a real test order, then change DNS last with a short TTL. Keep the old store live for a month afterward.

Can I transfer customer passwords to a new platform?

Passwords cannot be transferred, because platforms store one-way hashes rather than the passwords themselves. You migrate the customer records and email addresses, then send a set-a-new-password message at launch. Plan for support questions in the first week and keep the wording clear about why it happened.

How long should redirects stay in place after a migration?

At least a year, and there is little reason ever to remove them. Search engines re-crawl at their own pace, and links in old newsletters, forum posts, PDFs and other people's articles keep sending visitors to the original addresses long after the index has updated.

  • Migration
  • SEO
  • Platform choice

Ready to start your store?

Let the AI build, market, and run it — you ship the product.

Get started free