Site Migration
Pages Deindexed After Site Migration? Catch It in Hours
Pages deindexed after a site migration usually go unnoticed for weeks. Here's why migrations cause mass deindexing and a monitoring plan to catch drops fast.
A site migration is the single most common cause of mass deindexing, and the damage is usually invisible for weeks. Pages quietly drop out of Google's index after launch, traffic craters a month later, and by the time anyone checks Search Console the revenue is already gone. This guide explains exactly why migrations deindex pages and gives you a monitoring plan to catch drops within hours, not after a lost quarter.
How to tell if pages were deindexed after migration
To confirm pages were deindexed after a migration, open the URL Inspection Tool in Google Search Console and paste the affected URL. If it returns "URL is not on Google," the page is deindexed, not merely ranking lower. Cross-check with a site:yourdomain.com/path search: zero results confirms the page is out of the index. Then check the Page Indexing report for a sudden spike in "Not indexed" URLs dated to your launch.
Why migrations cause mass deindexing
Migrations are dangerous because they change everything Google relies on at once (URLs, redirects, server config, and crawl directives), and any single mistake removes pages silently. Post-migration deindexing is almost always an unintentional configuration error: the site told Google not to index the pages, Google couldn't reach them, or the content no longer met Google's bar.
The compounding problem is timing. Google Search Console's Page Indexing report lags behind reality by several days, and most teams stop watching the day after launch. So a noindex tag pushed live on Friday can deindex a thousand pages before anyone looks again on Monday. Googlebot acts faster than the dashboard reports it.
The five migration failure modes that deindex pages
Nearly every migration deindexing traces back to one of five recurring failure modes. Each produces a different symptom, and each is catchable the moment you know what to watch.
| Failure mode | What goes wrong | Symptom in Google |
|---|---|---|
| Staging directives left live | noindex meta or robots.txt Disallow from the staging environment ships to production |
"Excluded by noindex tag" / "Blocked by robots.txt" |
| Broken or missing 301 redirects | Old URLs 404, or all redirect to the homepage instead of their match | "Not found (404)" / soft 404 |
| Canonical errors | New pages canonicalize back to the old domain or to the wrong URL | "Alternate page with proper canonical tag" |
| hreflang breakage | Language/region tags point to dead or non-canonical URLs | Wrong-locale pages drop; "Duplicate" flags |
| Lost internal links | Navigation and contextual links not rebuilt, orphaning pages | "Crawled – currently not indexed" creep |
The first mode is the classic killer. As Google's official Site Moves and Migrations documentation and community guidance repeatedly stress, accidentally blocking Googlebot (usually staging settings pushed live by mistake) is the most common reason a freshly migrated site disappears. If Googlebot can't crawl a page, it can't index it.
Catch deindexing in hours with scheduled monitoring
The fix for invisible deindexing is not better luck. It's a shorter feedback loop. Scheduled index-status monitoring checks every URL on a fixed cadence and flags the exact moment a page leaves the index, independent of Search Console's reporting lag.
Set this up before launch, not after. A practical post-migration monitoring plan looks like this:
- Inventory every indexable URL from the old site before launch: the full list you expect to stay in Google's index.
- Run a pre-launch baseline check so you know which URLs were indexed going in.
- Monitor hourly through launch day and the first 72 hours, the window when staging directives and redirect bugs do the most damage.
- Drop to every few hours for the first two weeks, then daily through week four as Google recrawls and reprocesses redirects.
- Alert on any indexed → not-indexed transition so a drop pages you, instead of you discovering it in a traffic chart a month later.
SearchOptimo runs exactly this loop. Point it at your URL list and it re-checks index status on a schedule, surfacing deindexing alerts the moment a page falls out, hours after the bad deploy, not weeks. You can start a free trial and have your migration list under watch before you flip the switch.
How to recover deindexed pages, fast
Recovery is a triage problem, not a brute-force one. Google's John Mueller, addressing a site dropped from the index right after a migration, advised: "my guess is that your new website is somehow blocking search engines… I'd start by analyzing the data in the Search Console, and working forward from there." Start with the Page Indexing report to find the exact date and reason pages dropped, then fix root causes for your highest-value pages first: prioritise the pages that earned traffic and links, not every URL indiscriminately.
Work in this order:
- Triage by traffic value. Pull pre-migration organic traffic, sort deindexed pages by historical traffic, and treat the top 20% as your priority queue.
- Apply the matching fix from the table above: remove the stray
noindex, repair the 301, correct the canonical, or rebuild the internal links. - Resubmit via the URL Inspection Tool for priority pages and submit a fresh XML sitemap of all indexable URLs.
- Notify other engines instantly with IndexNow so Bing and participating crawlers recheck immediately. See our IndexNow guide for the how.
- Keep monitoring until every priority URL reads as indexed again. Technical fixes recover faster than content issues; expect two to four weeks for Google to recrawl and restore.
Key takeaways
- Migrations deindex pages mainly through staging directives left live, broken redirects, canonical and hreflang errors, and lost internal links, usually invisible until traffic drops.
- Google Search Console's indexing report lags several days, so manual checks miss the critical first 72 hours after launch.
- Scheduled index-status monitoring catches drops in hours. Baseline before launch, monitor hourly through go-live, and alert on every indexed → not-indexed change.
- Recover by triaging on traffic value, applying the matching fix, and resubmitting via the URL Inspection Tool and IndexNow.
A migration is the riskiest thing you'll do to your index all year. Put your URL list under scheduled deindexing alerts before launch so a bad deploy pings you in hours, long before it shows up as a missing quarter of revenue.
Frequently asked questions
- How do I know if my pages were deindexed or just dropped in rankings?
- A ranking drop means the page is still indexed but ranks lower; a deindexed page is gone from Google's index entirely. Check the URL Inspection Tool in Google Search Console: 'URL is not on Google' means deindexed. A site:yourdomain.com/path search returning nothing is a second confirmation.
- How quickly does Google deindex pages after a migration?
- It varies. A hard block like a noindex tag or robots.txt Disallow can drop pages within days of the next crawl. Redirect or canonical errors deindex more gradually over two to four weeks as Google recrawls and reassigns signals.
- How do you migrate your website without losing SEO rankings?
- Map every old URL to a 301 redirect, keep titles, content, and internal links intact, and submit an updated sitemap so Google reprocesses the move quickly. Once the migration is live, expect roughly two to four weeks for Google to recrawl and restore most pages; rankings often lag indexing by an extra few weeks while authority signals settle. Google's official Site Moves and Migrations documentation is the canonical checklist for this.
- Do I need redirects for every page after a migration?
- Yes, for every URL that had traffic, backlinks, or indexed status. Each old URL needs a 301 redirect to its closest new equivalent. Defaulting unmapped pages to the homepage wastes link equity and often triggers soft-404 deindexing.
Monitor your index status automatically
SearchOptimo re-checks your URLs on a schedule and alerts you when something drops. Start free — no credit card.
Start freeKeep reading
Indexing
How to Check If Multiple URLs Are Indexed (Free, Fast)
Check if multiple URLs are indexed at once, free, no 5-URL cap. Compare bulk checkers vs GSC, then monitor pages so you catch deindexing fast.
Indexing
"Discovered – Currently Not Indexed"? Fix or Wait [Tree]
Discovered – currently not indexed means Google found your URL but hasn't crawled it. Use this decision tree to know when to wait, fix crawl issues, or prune.
Indexing
Google Index Checker API: 3 Options Compared (2026)
Comparing a Google index checker API vs. DIY Google scraping vs. the GSC URL Inspection API: which one survives at scale, and why scrapers keep breaking.