Short answer: Traffic drops after a migration for one reason — old URLs stop resolving and their ranking equity is lost. Prevent it with a complete 1:1 (or best-match) 301 redirect map from every old URL to its new one, carry over titles, meta and schema, keep your internal links intact, and launch with a crawl and Search Console check the same day. Done properly, rankings hold or recover within a few weeks. Done without redirects, organic traffic can drop 30–50% overnight.
Why migrations lose traffic
Search engines have indexed hundreds or thousands of your URLs, each carrying some ranking value. Change the platform and the URL structure changes — becomes . If the old URL now 404s, that page's rankings and any backlinks pointing to it are wasted.
The pre-migration checklist
- Crawl the current site (Screaming Frog or Sitebulb). Export every indexable URL, its title, meta description, H1, and status code.
- Pull your top pages from Google Analytics and Search Console — the URLs that actually get traffic and rank. These are the priority.
- Export your backlink profile (Ahrefs, or Search Console's Links report). Note which URLs have links pointing at them — those redirects are non-negotiable.
- Record your structured data — product schema, breadcrumbs, review markup.
- Note tracking — GA4, Meta pixel, conversion tags, so nothing is lost at cutover.
Build the redirect map
- Map every old URL to its closest new URL: product → product, category → collection, blog post → blog post.
- Where there's no direct equivalent, redirect to the most relevant page (parent category, not the homepage).
- 301 (permanent), not 302.
- On Shopify: use the URL Redirects tool, or a bulk-redirect app for large maps; on WooCommerce, a redirects plugin or server rules.
- Never redirect everything to the homepage — search engines treat that as a soft 404 and drop the pages.
Carry over on-page SEO
- Titles and meta descriptions transferred (improve them, don't lose them).
- H1s and heading structure preserved.
- Image alt text kept.
- Product and article schema re-implemented.
- Internal links updated to the new URLs (don't leave chains of redirects).
- Canonical tags correct on the new URLs.
Launch day
- Publish the new site with all redirects live before pointing DNS.
- Point DNS / switch the domain.
- Submit the new XML sitemap in Search Console; remove the old one.
- Use "Change of address" in Search Console only if the domain itself changes.
- Crawl the live site immediately — check for 404s, redirect chains, missing titles.
- Spot-check your top 20 pages by hand.
The two weeks after
- Watch Search Console Coverage and Performance daily. A brief dip is normal; a sustained drop means a redirect or indexing problem.
- Fix any 404s that appear in Coverage with a redirect.
- Re-request indexing for your most important pages.
- Keep the old redirects forever — removing them later re-breaks the links.
Key takeaways
- Traffic loss = broken old URLs. A complete 301 redirect map prevents it.
- Prioritise redirects for pages with traffic, rankings, or backlinks.
- Carry over titles, meta, headings, alt text and schema — don't rebuild blind.
- Launch redirects before DNS, submit the new sitemap, crawl the same day.
- Keep the redirects permanently.
FAQ
How long until rankings recover?
Can I keep my old URLs on Shopify?
Do I need "Change of address" in Search Console?
What if I already migrated and lost traffic?
Alamin Sultan
Web developer for real estate and e‑commerce. WordPress · Next.js · MERN.
