Site Metrics
FeaturesPricingToolsBlogSite auditServices
Sign inStart free
Home/Blog
technical-seoaudit
🚚

Domain migration without losing rankings: a step-by-step checklist

How to move a site to a new domain without losing Google and Yandex rankings. Full checklist of actions before, during and after migration.

July 10, 2026·15 min read·Site Metrics Tool

Domain migration is one of the riskiest SEO operations. One wrong step and traffic falls 60–80% for months, recovery taking half a year. Done right, migration causes a 5–10% dip for 2–3 weeks, after which the site returns to prior positions and often outperforms them. The gap between "disaster" and "routine" comes down to one thing: 301-redirect quality and how fast search engines are informed. This article is a 30+ point checklist: what to do before, during and after migration, how to monitor it and how to roll back if needed.

Preparation: 2–4 weeks before migration

  • Full crawl of the old site with Screaming Frog or Sitebulb — record every URL currently returning 200.
  • Export all keywords from GSC and Yandex Webmaster for the last 90 days — your post-migration baseline.
  • Top-100 pages by organic traffic — track these especially closely.
  • Redirect map: every old URL → its new URL. In Excel or CSV. Each row: old_url, new_url, http_status_target.
  • Verify the new domain in GSC and Yandex Webmaster in advance — ownership verification can take a few days.
  • Prepare an updated robots.txt and sitemap.xml on the new domain — but don't let engines into the index until the actual switchover.

URL map: the core migration document

The redirect map is the single most important artefact of the entire migration. Every old URL must map to a precise counterpart on the new domain, and the redirect must be 301 (permanent, passes link equity). Not 302 (temporary, no equity), not 307 (engines don't treat it the same), not meta-refresh (SEO disaster). If URL structure changes (e.g., /category/product becomes /shop/category-product) the map gets more complex but stays 1:1. You absolutely cannot bulk-redirect old URLs to the new homepage — that signals engines that pages lost meaning and link equity zeros out. If an old URL has no logical new counterpart, return 410 Gone, not a 301 to the homepage.

Server-side technical setup

At the nginx (or Apache) level you set up a `return 301 https://newdomain.com$request_uri;` rule or a more detailed `map { ... }`. Test with `curl -I -L https://olddomain.com/some-page` — expect one redirect to the final new-domain URL, no redirect chains (old → redirect → redirect → new). HSTS stays on the new domain with the same parameters. SSL on the new domain must be valid before switchover, not "in progress". You cannot disable SSL on the old domain — the redirect must run for at least 6 months, ideally 12. Engines keep visiting old URLs for a long time.

Migration day: step by step

Free tool
Run an express site audit in a minute
Five free SEO tools on one page: SERP checker, robots.txt and Sitemap validators, meta tags inspector, Core Web Vitals tester. No signup.
Open tools
  • Turn on 301 redirects from the old domain to the new one. Pick a low-traffic window.
  • Open access for engines on the new domain — remove Disallow: / from robots.txt, set meta robots index, follow.
  • Submit the updated sitemap.xml to GSC and Webmaster for the new domain.
  • In GSC: "Change of address" — officially notify Google of the move. Settings → Change of address. Without this, indexing is slower.
  • In Yandex Webmaster: Main mirror — point to the new domain. Critical; without it Yandex may treat the old domain as "real" for months.
  • Run a Screaming Frog crawl of the new domain — all URLs return 200, no accidental 404s.

Monitoring: the first 4 weeks

What to track: positions on the top 100 commercial queries, organic traffic in GA, indexed-page counts in GSC and Webmaster, 404 errors in crawl reports. Normal picture: days 1–7 positions "wobble", some drop 5–15 places, week 2 they start recovering, by week 4 they're at or above pre-migration levels. Red flags: traffic > 30% down and not recovering; a massive "Soft 404" series in GSC — Google doesn't trust your redirects; a Webmaster main-mirror change warning that doesn't self-confirm — you need to upload a verification file manually. Site Metrics Tool tracks all of this and alerts on deviations > 15%.

If things go wrong: rollback

A rollback is technically possible but expensive: after 7+ days of redirects, engines have started treating the new domain as canonical. Fully reverting takes 4–8 weeks. If traffic crashed and rollback is needed: disable the 301s; on the new domain set up 301s back to the old (double rollback); file another "Change of address" in GSC/Webmaster in the reverse direction; accept 6–8 weeks of "transition" status. This is an emergency procedure — avoid it by doing the migration right the first time.

Frequently asked

How long to keep redirects from the old domain?

Minimum 6 months, ideally 12. Engines keep indexing old URLs for a long time; external links to the old domain also depend on the redirect to keep working.

What if I can't preserve URL structure?

The 1:1 map still gets built, just every mapping written manually. For a large site (1000+ URLs) this takes time but is critical — without an exact map you lose rankings.

Can I migrate to HTTPS separately from changing the domain?

Better separately. HTTP→HTTPS on the same domain is simpler and less risky; changing the domain is a separate process. Doing both at once multiplies the risk.

Does Site Metrics Tool help with migration?

Indirectly — we track positions and alert on deviations. There's no "migration module" per se, but the "redirect map + our position monitoring" combo gives you an early signal if migration is off-script.

Share
Automate all this for your site

Site Metrics Tool syncs GSC and Yandex Webmaster every 6 hours, builds 16 months of history and fires alerts on drops. Free plan — forever.

Create free account

Related articles

🧱
Sep 4, 2026 · 14 min read

Schema.org markup: the advanced 2026 guide

A complete guide to structured data: every type for every page, JSON-LD vs Microdata, @id linking, testing and debugging.

🌐
Aug 19, 2026 · 13 min read

Hreflang for multilingual sites: the complete 2026 guide

What hreflang is, how to set it up correctly for two or more languages, typical mistakes, and why Google and Yandex treat hreflang differently.

⚙️
Aug 3, 2026 · 13 min read

JavaScript SEO in 2026: SPA, hydration, and why your page won't index

Why JavaScript-heavy sites index poorly, how Google and Yandex render JS, SSR/SSG/CSR differences, and a fix checklist.

👯
Jul 30, 2026 · 13 min read

Duplicate pages: how to find and fix them in 30 minutes

A complete guide to finding and fixing duplicates: types, detection tools, fixes via canonical, 301 and noindex.

Contents
  1. Preparation: 2–4 weeks before migration
  2. URL map: the core migration document
  3. Server-side technical setup
  4. Migration day: step by step
  5. Monitoring: the first 4 weeks
  6. If things go wrong: rollback
Free tools
  • 🎯SERP Checker
  • 🤖robots.txt
  • 🗺️Sitemap
  • 🏷️Meta tags
  • ⚡Core Web Vitals
Free
Free plan, no card

1 project, 5 keywords, OAuth with GSC and Webmaster, 16 months of history. Pay only if you outgrow it.

Create account →
Read also
  • 🧱Schema.org markup: the advanced 2026 guide
    14 min
  • 🌐Hreflang for multilingual sites: the complete 2026 guide
    13 min
  • ⚙️JavaScript SEO in 2026: SPA, hydration, and why your page won't index
    13 min
  • 👯Duplicate pages: how to find and fix them in 30 minutes
    13 min
Site Metrics Tool

Rank tracking in Google and Yandex. GSC + Webmaster integrations, 16 months of history, free plan without a card.

All systems normal
Product
  • Features
  • Pricing
  • Site audit
  • Services
  • Start free
  • Sign in
Resources
  • Blog
  • Tools
  • Glossary
  • Comparisons
  • RSS
Legal
  • Terms
  • Privacy
  • Refund
Contact
  • info@sitemetricstool.com
  • support@sitemetricstool.com
© 2026 Site Metrics Tool. Self-hosted SEO.
Spiridonov Dmitry Vadimovich (Individual Entrepreneur) · OGRNIP: 324762700012347 · INN: 760806658219
Registered address: 12-20 Krasnoekhovskaya str., Pereslavl-Zalessky, Yaroslavl Region, 152020, Russia · info@sitemetricstool.com