Key takeaways
- An SEO migration checklist protects search visibility when page addresses change. The core of it is a complete old-to-new URL map and a launch day that removes every temporary block.
- Change one thing at a time. Moving domain, platform and design in a single release makes any traffic drop impossible to diagnose.
- Redirect each old URL to its closest equivalent, not to the home page, and keep the redirects in place for at least a year.
- Temporary dips in visibility are normal after a move. A spike in not-found errors, or pages missing from the index, is not, and should be fixed the same day.
01
What is an SEO migration checklist, and when do you need one?
An SEO migration checklist is an ordered list of checks that keeps pages findable in search when their addresses, domain or platform change. You need one whenever a URL that has traffic or links will stop answering at its old address: a move from HTTP to HTTPS, a new domain, a new URL structure, or a platform change that rewrites paths.
Not every project qualifies. A redesign that keeps every URL identical carries far less risk, and moving hosts without changing addresses needs a lighter version of this list. Google treats those as different cases from a move that changes URLs, and so should you. If you can avoid changing addresses, avoid it. Every URL that moves is a URL Google has to relearn.
The rest of this checklist follows Google's guidance for moves with URL changes, in three phases. Read it once end to end before you assign owners, because several launch-day tasks depend on decisions made weeks earlier.
02
What should be done before launch?
Before launch, take an inventory of what exists, decide what each old page will become, and prepare the new site so it can be indexed the moment you flip the switch. Most migration damage is decided here, because the launch itself is only the execution of a plan.
Google advises changing one thing at a time and timing the move for a quiet traffic period. If the project also includes a new design and new copy, ship those separately from the address change, so a ranking dip has one suspect instead of three.
Record a baseline before anything moves. Save the last ninety days of clicks, impressions and conversions for the pages on your priority list, the count of indexed pages, and a screenshot of the Core Web Vitals report. Without a baseline, "traffic is down" is an impression, and you cannot say whether the drop is a migration effect, a seasonal pattern or a measurement break. Also agree in advance who has authority to approve the launch and who can roll back a redirect rule, because launch-day questions are slow to answer when nobody owns them.
- Crawl the old site and export every indexable URL, with its title, status code and canonical.
- Pull the pages that earn clicks and impressions from Search Console, and the pages that bring in conversions from analytics. These are the ones you cannot afford to lose.
- Export the pages that other sites link to, so you know which old URLs matter beyond your own traffic numbers.
- Verify the old and new properties in Search Console, including every www and protocol variant, and confirm the verification method will survive the move.
- Build the new site on staging. Note every noindex tag and robots.txt block used during development, and write down exactly what must be removed at launch.
- Prepare the redirect map (next section), and save a sitemap of old URLs and a sitemap of new ones so you can compare indexing later.
- Decide which old pages will have no equivalent, and make sure they will return a 404 or 410 on the new site rather than redirecting somewhere irrelevant.
- Check that the new server can handle the extra crawling Google does after a move.
03
How do you build a redirect map that works?
A redirect map is a spreadsheet that pairs every old URL that matters with the single closest new URL, and records the redirect type. Build it from the crawl and the Search Console export, not from memory, and have someone who knows the content check the pairings, because a script can match slugs but not meaning.
Three rules cover most of the mistakes. Use permanent server-side redirects, such as 301 or 308, because Google uses those as a signal that the target should be canonical. Point each old URL straight at its final destination, since Googlebot follows long chains but Google advises keeping them to a handful of hops at most and ideally redirecting directly. And do not send hundreds of old pages to the home page: Google warns that this can be treated as a soft 404. Where several old pages were merged into one, redirecting them all to the merged page is fine.
Illustrative example: an old service page at /services/seo-audit.php maps to /services/seo-audit. A retired 2019 landing page with no replacement is listed as 410. Two near-duplicate pages about the same service are merged, and both old URLs point to the surviving page. Images and PDFs that earn traffic or links go in the same sheet, because they have addresses too.
| Old URL | New URL | Response | Note |
|---|---|---|---|
| /services/seo-audit.php | /services/seo-audit | 301 | Closest equivalent, same intent |
| /blog/2019/audit-tips | /guides/seo-audit-checklist | 301 | Two posts merged into one guide |
| /old-promo-landing | None | 410 | Retired; no replacement exists |
| /downloads/audit-template.pdf | /downloads/audit-template.pdf | 301 | File has inbound links; keep reachable |
04
What belongs on launch day?
On launch day you switch on the redirects, remove every block that kept the new site out of search, and confirm that Google can reach the new pages. The sequence matters less than the completeness: a single forgotten noindex tag can keep a whole section out of the index.
Test redirects on a sample before and after, with the URL Inspection tool for individual pages and a crawler or script for the full map. Google lists redirects to non-existent new URLs among the most frequent mistakes, so sample across every page type, not only the top ten. If you are changing domain or subdomain, submit a Change of Address for each verified variant of the old domain. You do not need it for HTTP to HTTPS, www to non-www, or path changes within a domain.
- Redirects live and returning 301 or 308 to the mapped targets.
- noindex tags and robots.txt blocks from staging removed; robots.txt on the new site checked.
- rel="canonical" tags on the new pages pointing at the new URLs.
- New sitemap submitted in Search Console; old sitemap kept for comparison.
- Internal links, navigation and structured data updated to new addresses, not left to redirect.
- Analytics and conversion tracking firing on the new site.
- Server and error logs open on a screen for the first day.
05
What should you watch in the weeks after a migration?
After launch, compare the two sitemaps in Search Console: indexed pages on the old URLs should fall while indexed pages on the new URLs rise. Google says a small or medium site can take a few weeks for most pages to move and a larger one longer, and that rankings may fluctuate temporarily while it recrawls.
Patience has limits. A dip that follows the expected pattern is no reason to touch anything, but unexpected not-found errors, new pages that are missing from the index, or redirects pointing to wrong targets should be fixed immediately. Keep the redirects for at least a year, which is the period Google generally recommends so that signals can transfer fully, and update your own links and the highest-volume external links to the new addresses so visitors skip the extra hop. Also update ad destinations and profile links.
06
Which migration mistakes show up most often?
The recurring failures are mundane. Google's troubleshooting section names leftover noindex or robots.txt blocks, redirects to wrong or non-existent URLs, other crawl errors, too little server capacity for the post-move crawl surge, and sitemaps that still list old URLs. Add to that the self-inflicted one: bundling the move with a redesign and a rewrite.
This checklist is not a substitute for judgement on a large or complex site. If you have millions of URLs, several languages or a regulated content estate where wording must not change without review, move it in sections, as Google suggests for large sites, and treat each section as its own small migration.
| Mistake | How it shows up | Quick check |
|---|---|---|
| Staging block left on | New pages missing from the index | URL Inspection on a new URL; view robots.txt and meta tags |
| Redirects to wrong targets | Spike in not-found reports | Crawl the old URL list and follow every redirect |
| Everything sent to home page | Old pages dropping with no replacement | Sample 20 old URLs and read where they land |
| Old sitemap still submitted as the only one | Slow discovery of new URLs | Sitemaps report in Search Console |
| Server overloaded after launch | Slow responses and 5xx errors in logs | Compare log volume with the pre-move baseline |
Was this useful? Send it to someone who owns this problem.
Primary sources and further reading
Use the source material to validate details against your own context and current platform configuration.
- Google Search Central: Site moves and migrations
- Google Search Central: Redirects and Google Search
- Google Search Central: What is a sitemap
- Google Search Central: Block Search indexing with noindex
This field note follows the XenGrowth editorial policy: primary sources where available, visible limitations, material review dates, and no invented first-hand experience.
Stay with the problem
Related field notes
Local Search OptimizationReview Management Is a Workflow, Not a Reply Button: Ask, Route, Reply, Escalate, Use
AI and answer enginesAI Search Optimization: What Moves Citations and What Is Folklore
SEO & GEOTopical Map: Build a Cluster Plan Search and AI Can Read, and Know What Topical Authority Is Not