How to Migrate to Shopify Without Losing Rankings
You migrate to Shopify without losing rankings by mapping every old URL to its new address before the domain flips. Google follows the redirects you hand it and forgets the pages you leave behind. Expect a few weeks of wobble even in a clean move. Build the map first, and everything after it is bookkeeping.
What You Need
- A crawler for the old site (Screaming Frog’s free tier covers 500 URLs, and the paid one covers the rest)
- Search Console access on the old domain, and on the new one if the domain changes
- Admin access to the old platform for exports, kept alive until a month after launch
- A spreadsheet with four columns: old URL, new URL, monthly clicks, monthly revenue
Step 1: Export Every URL You Own
Exporting every URL you own comes first, since a redirect map can only cover the pages you know exist. Crawl the current site, pull the XML sitemap, and merge both lists into one spreadsheet. The crawl catches pages the sitemap forgot, and the sitemap catches pages nothing links to anymore.
Then rank the list by traffic and revenue. Revenue beats raw traffic at the top, since a page that sells is worth more than a page that only gets read. Your top 50 URLs will get hand-checked on launch day while the long tail follows batch rules, so mark which is which now.
Also grab the odd corners. Old platforms hide URLs in paginated category pages, tag archives, image attachment pages, and campaign landing pages nobody remembers building. If Google has indexed it, it belongs on the list, and a site: search in Google is a five-minute way to spot the strays your crawl missed.
One more source is your backlinks. Pull the pages other sites link to from Search Console’s Links report and add any you missed, since a linked page that 404s after the move loses the one signal that is hardest to earn back.
Step 2: Snapshot Search Console Before the Move
Snapshotting Search Console before the move gives you the only before picture you will ever have. Export clicks, impressions, and average position for every page from the Performance report, which defaults to the past three months. Every question you ask after launch gets answered against that file.
While you are in there, note which pages already sit on page one. Those are the rankings a missed redirect will torch first, and they are the ones worth a second pair of eyes on the map. The same report is where I go to find quick wins in Search Console once a move settles, so the export pays twice.
Benchmark before you move, or you will never know what you lost.
Step 3: Save Your Titles, Metas, and Copy
Saving your titles, metas, and copy matters as much as the URLs, since replatforming tends to regenerate all three without telling you. Rankings follow content and signals, not just addresses. A migration that quietly rewrites every title has changed far more than its URLs, and Google will treat it that way.
So copy the title tag and meta description for at least your top pages into the same spreadsheet. Do the same for collection descriptions, product copy, and any landing page text stored in odd corners of the old platform.
And export it all while you still have admin access. The day you notice something is missing is usually the day you can no longer log in to get it back.
Then decide what changes on purpose. A migration is a tempting moment to rewrite every title, and it is the worst one, since you will not be able to tell a title change from a redirect miss when the numbers move. Carry the old titles over as they are, launch, and rewrite them in month two once the benchmark says the move itself held.
Step 4: Map Every Old URL to One New Home
Mapping every old URL to one new home is the whole job, and Google’s site move documentation asks for exactly that: a one-to-one list of old address to new address. Products go to products, categories go to their closest collection, and posts go to posts. A page points at its true replacement or its parent, never at something vaguely related.
On Shopify, expect a bigger map than any other platform needs. The platform forces its own paths on every page, so almost every URL you own is about to change:
| Old platform URL | New Shopify URL |
|---|---|
| /mens-jackets/ | /collections/mens-jackets |
| /mens-jackets/trail-shell-blue/ | /products/trail-shell-blue |
| /blog/2023/05/how-to-wash-a-shell/ | /blogs/news/how-to-wash-a-shell |
| /about-us/ | /pages/about-us |
Only the ending slug is yours to choose, so keep it, and skip renaming URLs to add keywords while you are in there. A product that lived at /trail-shell-blue/ should land at /products/trail-shell-blue, not /products/trail-shell-blue-mens-waterproof-jacket. The fewer slugs you change on top of the forced prefix, the less Google has to relearn, and the easier the map is to check. Map to the short /products/ path too, never the nested /collections/x/products/y form the theme links, since those nested URLs are the main source of Shopify duplicate content after a move.
Just know that the leftovers never go to the homepage. Google’s site move guide warns that redirecting many old URLs to one irrelevant page can be treated as a soft 404, and John Mueller said the same on video back in 2016. A homepage dump reads as a clean launch right up until the rankings quietly vanish. If a page has no replacement, let it 404 or point it at its parent collection. Map every old URL to its one true replacement, never the homepage.
Step 5: Format the Redirect CSV for Shopify
Formatting the redirect CSV for Shopify takes two columns, “Redirect from” and “Redirect to”, one row per old URL. Shopify’s URL redirect docs cap a standard store at 100,000 redirects and a Plus store at 20 million, which is more than any migration will use. Use relative paths in the first column and full paths or full URLs in the second.
The tool itself has two quirks worth knowing before you upload. It only redirects a URL that no longer resolves, so a leftover page at the old path will win over the redirect. And reserved paths like /products, /collections, /cart, and /checkout cannot be redirect sources. Neither quirk usually bites during a migration, since the old URLs stop resolving the moment the domain moves.
On top of that, set every redirect as a permanent 301. Google’s redirect documentation is clear that a 301 or 308 makes the new URL the canonical one, while a 302, 303, or 307 leaves the old page in the results with no canonical signal passed. Shopify’s redirect tool issues 301s by default, so the only way to get this wrong is an app or a theme script doing a JavaScript redirect on top. Watch the canonical tag on the destination page too. A redirect that lands on a page whose canonical points somewhere else sends Google two different instructions, and Shopify canonical URLs covers how to keep the two in sync.
Step 6: Upload at the Flip and Hand-Check the Top 50
Uploading the CSV at the flip means the moment the domain points at Shopify, not the next morning. Shopify’s own migration guide warns that old pages stop loading as soon as the domain moves until redirects exist. Every hour of gap is a pile of 404s Google might crawl.
After the upload, open your top 50 URLs from the Step 1 list by hand and watch each one land on the right page. Batch rules cover the long tail, but the pages that pay you get checked one at a time. A misfire here is cheap on day one and expensive on day forty.
Of those 50, the two misfires I see most are a trailing slash and a redirect chain. The old platform served /mens-jackets/ with a slash and the CSV says /mens-jackets without one, so the row never matches. Or the old page was already redirecting to a second old page, and now that second page redirects again, which stacks two hops before Shopify. Google follows up to ten hops, but each one leaks a little and slows the recrawl. Test the top 50 by hand, with the slash and without it.
From there, fix the internal signals the same afternoon. Point your navigation, canonicals, and footer at the new URLs, since redirects move the old authority while internal links teach Google the new structure. A store with clean redirects and a menu still full of old links confuses Google for months.
Step 7: Submit the Sitemap and Sweep the Leftovers
Submitting the sitemap on launch day is a two-minute task, since Shopify generates sitemap.xml for every store on its own. Add the new property in Search Console if the domain changed, paste the sitemap URL, and Google starts pulling the new addresses from there. The file lists every live product, collection, page, and article, and it updates itself as you publish, so there is nothing to maintain.
Then sweep the build for leftovers. A store that launched with a password page, a noindex tag from the staging theme, or a robots rule copied from the old platform will hide from Google no matter how clean the redirects are. Open the live homepage source and search for “noindex” before you go to bed on launch night. If the store is still invisible a month later, Shopify store not ranking walks through the remaining checks in order.
Also, skip the Change of Address tool unless the domain itself changed. Google’s Change of Address documentation scopes the tool to domain-to-domain moves, and a replatform on the same domain does not qualify. If your domain did change, run it, and keep those redirects live for at least 180 days per the same page.
Step 8: Hold Your Nerve for 60 Days
Holding your nerve for 60 days is the step most owners fail, since Google says a medium-sized site takes a few weeks or more to show the new URLs in place of the old ones and larger sites take longer. Rankings wobble during that window even in a clean move. Panic edits during the wobble usually make it worse.
At 30 and 60 days, put your Search Console numbers next to the Step 2 benchmark, page by page. A drop that outlives the reprocessing window has a findable cause, usually a missed redirect cluster, rewritten titles, or lost internal links, and the benchmark shows you exactly which pages fell. Compare against the benchmark, not your memory.
Even so, do not pull the redirects when the numbers recover. Google’s site move guide says to keep them for at least a year, and I leave them in place for good, since Shopify stores them for free and old links from other sites keep landing on the old paths for years. This is the part of a migration I handle inside SEO services for Shopify work, because the 60-day compare is where most of the recoverable losses get found.
What to Do If Rankings Drop Anyway
Rankings fell 40% and it has been six weeks. Is that normal?
A 40% drop at six weeks is past the normal wobble for a medium-sized store, and it almost always has a findable cause. Start with Search Console’s Pages report and filter for “Not found (404)” and “Page with redirect”, then sort the 404s by the old URL list from Step 1. A cluster of 404s under one old folder means a batch of the map never uploaded or was written against the wrong prefix.
If the redirects check out, compare titles. Pull the new title tags for the pages that fell and set them next to the Step 3 export, since a theme that rewrote every title to “Product Name | Store Name” has changed what those pages rank for.
Old URLs still show in Google two months later. Did the redirects fail?
Old URLs still showing in Google two months after a migration usually means Google has not recrawled them yet, not that the redirects failed. Google processes a move page by page as it recrawls, and low-traffic pages get recrawled last. Open one of the old URLs in an incognito window and confirm it 301s to the right place. If it does, the listing will update on Google’s schedule, and the traffic is already landing on the new page in the meantime.
The Migration Day Checklist
- Full URL list exported and ranked by traffic and revenue
- Search Console performance snapshot saved per page
- Titles, metas, and page copy exported for the top pages
- One-to-one redirect map finished, no homepage dumps
- Redirect CSV formatted for Shopify and ready to upload
- Top 50 URLs hand-checked right after the flip
- Navigation, canonicals, and footer pointed at the new URLs
- Sitemap submitted, noindex and password pages removed
- Reminders set for the 30 and 60 day compares
Get the Map Built Before Launch Day
A Shopify migration keeps its rankings on the strength of one boring artifact: a complete old-to-new redirect map, uploaded at the flip, checked against a real benchmark, and left alone for a year. Shopify makes the map bigger than other platforms would, then pays you back with canonicals, sitemaps, and robots rules it maintains itself.
So if your launch date is already on the calendar, book a call and I will pull your URL list and show you the 50 redirects that decide whether your rankings survive the move. If you want the whole migration and the 60 days after it handled, that is what my Shopify SEO services cover.
Sources:
- Google Search Central: Site moves with URL changes
- Google Search Central: Redirects and Google Search
- Search Console Help: Performance report
- Search Console Help: Change of Address tool
- Shopify Help Center: Migrating to Shopify
- Shopify Help Center: URL redirects
- Search Engine Roundtable: Redirects to the homepage get treated as soft 404s
