Skip to content
GrowthVector.io

Website Migration SEO Checklist: Redirects, Tests and Rollback

Which website migration tasks decide whether rankings hold, and in what order do you do them?

Updated

Rankings hold through a website migration when you do four things in order: benchmark and crawl the old site, build a one-to-one redirect map, launch with canonicals, sitemaps and links pointing at the new URLs, then watch Search Console and server logs for weeks. The redirect map carries the most risk. Google also advises changing one thing at a time, such as the domain first and the CMS or layout later, so you can trace any traffic drop to its cause. Give every task one named owner before the move starts.

Related guides: technical and on-page SEO checklist, SEO quick wins checklist for fixes before a move, SEO audit tool for crawling the old and new site.

Your Progress
0%0 / 56 complete

1. Pick the migration type

3 tasks

Classify the migration type and write it in the plan

High

Redirects, a Change of Address request and DNS steps differ by type, so a mixed project needs one plan per type.

Check: Name one type for each part of the project. A mixed project gets one line per type, with its own steps.

Google site move guide, Google hosting move guide

Split combined projects into separate launches

High

Google says a site move combined with a redesign will probably lose some traffic while Google relearns the pages.

Check: Write the launch order in the plan: domain first, then layout or CMS, each in its own release.

Google site move guide, Change of Address help

For an HTTPS move, remove every HTTPS-to-HTTP path

Critical

Google keeps the HTTP page as canonical when the HTTPS page has a bad certificate, insecure dependencies other than images, a redirect through HTTP, or an HTTP canonical. HSTS does not override that preference.

Check: Test the certificate, mixed-content dependencies, canonicals, and sitemap and hreflang URLs for any http:// value.

Google canonicalization guide

2. Before the move: benchmark, crawl and map the old site

13 tasks

Export baseline organic clicks, impressions, queries and pages from Search Console

Critical

You need this baseline for the comparison at each checkpoint after the move. The Performance report's default view covers only the past three months.

Check: Export queries and pages for a full period before launch. Save the files outside Search Console, with the launch date in the file name.

Search Console Performance report help

Snapshot rankings, indexed page count, organic sessions, conversions and revenue

High

Benchmark these measures before the move. You need the same measures at each checkpoint to tell a dip from a loss.

Check: Record each measure by template and for the top landing pages, with the date. Take the indexed page count from the Page indexing report.

Seer Interactive checklist

Crawl the old site fully and save the crawl

Critical

The crawl is the reference for status codes, titles, canonicals, internal links and hreflang on the old site.

Check: Crawl the whole site with Screaming Frog or a similar crawler, and save the export before any change.

Seer Interactive checklist

Build one URL inventory from a crawl, Search Console, analytics, sitemaps and the CMS

Critical

Google names sitemaps, server logs or analytics, and the CMS as sources for old URLs. A full crawl is a fourth source.

Check: Merge the lists, remove duplicates, and add image, PDF, JavaScript and CSS URLs.

Google site move guide, Seomator checklist

Snapshot the backlink profile and mark the most-linked URLs

High

A missed redirect costs the most on URLs with many links. Google also advises a list of sites linking to the old URLs.

Check: Export referring domains for each old URL, then mark the URLs with the most referring domains as must-not-break.

Google site move guide, Seomator checklist

Build the 1:1 redirect map (old URL, new URL, type, status)

Critical

Google says people often redirect to wrong or non-existent URLs on the new site, so every target needs a test.

Check: Keep one target for each old URL, use a 301 or 308 for each move, and test that every target returns a 200 status.

Google site move guide

Decide the fate of every old URL: redirect, merge, or 404 or 410

High

Google treats 404 and 410 the same and drops already indexed URLs that return them. Merged content can redirect to one new page.

Check: Add a decision column to the map. Give each 404 or 410 a reason, and consider a 301 for any URL that still has links.

Google HTTP status guide, Google site move guide

Verify all old and new property variants in Search Console

High

Google advises covering every variant of both sites, including www, non-www, HTTP and HTTPS.

Check: Add each variant as a property, or add a Domain property, which covers all protocols and subdomains and uses a DNS record.

Google site move guide, Search Console property types help

Copy the disavow file to the new property

Low

A disavow file uploaded to the old site must be uploaded again in the new site's account.

Check: Upload the disavow file in the new account.

Google site move guide

Check server capacity and warn the host

Medium

Google crawls both the old and new URLs after a move, so the server needs room for the extra requests.

Check: Confirm the new server and CDN can handle the higher crawl load after launch. Send the host the planned move date.

Google site move guide

Pick the launch window and the approach: all at once, or by section

Medium

Google advises moving in a recurring traffic dip. Small and medium sites move all URLs at once, and large sites can start with a stable section.

Check: Compare weekly and seasonal traffic in analytics to choose the window. For a large site, pick a section that changes less often for the first move.

Google site move guide

Back up files, database and DNS, and test the restore

Critical

The backup is part of the rollback plan. An untested backup is a guess.

Check: Restore the backup into a scratch environment, and confirm the site loads and the database holds the latest content.

Seomator checklist

Check a purchased destination domain for manual actions and URL removals

High

A used domain can carry URL removals left by the previous owner, especially a site-wide removal.

Check: Before the move, look for manual actions and URL removals in Search Console for the domain, and clear any you find.

Google site move guide

3. Staging, noindex and blocks

5 tasks

Put staging behind HTTP auth or an IP allowlist

High

Google suggests a test environment, perhaps IP-restricted, with noindex on any public test host. It also says robots.txt does not hide pages. Authentication is the primary block.

Check: Request the staging URL from an outside network. Confirm you get an access challenge, not the page.

Google hosting move guide, Seomator checklist

Prepare the production robots.txt and the noindex removal list before launch

High

Google advises a written list of URLs whose noindex rules come off when the move starts, so nobody guesses on launch day.

Check: Store the final robots.txt and the removal list in the launch runbook, with one owner for each item.

Google site move guide

Remove staging blocks at launch, then grep the built output for noindex and Disallow

Critical

A noindex tag usually sits in a shared template, so a homepage check misses article and product pages.

Check: Search the built HTML of one page from each template for noindex and Disallow, before and after the deploy.

Google site move guide, Seomator checklist

Confirm robots.txt returns 200 or 404 (never 5xx) on the old and new hosts

Critical

A 5xx response stops Google's crawling for 12 hours. Google caches robots.txt for up to 24 hours, so an old block can last a day after you fix it.

Check: Request robots.txt on both hosts and confirm a 200 or 404 status. A 4xx other than 429 counts as no file.

Google robots.txt guide

Confirm the firewall, CDN or web application firewall (WAF) lets Googlebot reach the new stack

High

Google says firewall or DoS protection must not block Googlebot from reaching DNS or the hosting servers. A bot challenge looks like an outage.

Check: After launch, check the bot-protection logs for blocked Googlebot requests, and run a live test in URL Inspection on important pages.

Google hosting move guide

4. Redirect rules

8 tasks

Use 301 or 308 for every permanent move, server-side

Critical

Google says a server-side redirect has the best chance of being read correctly. Avoid JavaScript redirects, which Google may never see if rendering fails.

Check: Read the response for each old URL. Confirm a 301 or 308 status and a server-side redirect.

Google redirect guide

Make every redirect one hop to a 200 page

High

Google advises redirecting to the final destination directly. Chains add latency, and some browsers do not support long chains.

Check: Flatten chains in the map. In the crawl, each old URL should show one redirect and a final 200 status.

Google site move guide

Never redirect many unrelated URLs to the home page

High

Google says this can be treated as a soft 404. Consolidated content is the exception: many old pages can redirect to one new page that replaces them.

Check: Count the old URLs that point to each target. Review every target with many unrelated sources.

Google site move guide

Return 404 or 410 for deleted URLs with no equivalent, and 301 those that still have links

Medium

A 301 for a dropped URL with links keeps most of that link value. Google treats 404 and 410 the same.

Check: Mark each deleted URL in the map as 404 or 410, or as 301 when it has links. Confirm each one returns that status.

Google HTTP status guide, Seer Interactive checklist

Test the whole map with a crawler or script, not by hand

Critical

Google's HTTP status guide says its inspection tools do not follow redirects, so a crawler that follows the chain fills that gap. The Page indexing report lists chains that are too long, loops and bad URLs.

Check: Test each old URL for its hop count, final URL, final 200 status and loops. Test http, https, www and non-www on the old host.

Google site move guide, Google HTTP status guide, Page indexing report help

Keep robots.txt on the old host free of long redirect chains

Medium

Google follows at least five redirect hops for robots.txt, then treats the file as a 404. It does not follow JavaScript or meta refresh redirects for robots.txt.

Check: Request the old host's robots.txt and count the hops in the response. Remove any redirect on that path.

Google robots.txt guide

Handle Bing with 301s, a new sitemap and IndexNow

Low

Bing's Site Move tool is no longer available, so server-side 301s are how you tell Bing about a move.

Check: Submit the new sitemap in Bing Webmaster Tools, and send added, updated or deleted URLs through IndexNow, a protocol for sharing changed URLs.

Bing community reply, IndexNow documentation

Keep redirects live for a year or longer

High

Redirects keep passing signals and visitors while old links and Google traffic remain. Plan around the longer of the two Google figures.

Check: Put a removal date at least one year out in the plan. Extend it while links or Google traffic still reach the old URLs.

Google site move guide, Change of Address help

5. Launch day signals

9 tasks

Use a self-referencing absolute canonical on every new URL

Critical

Each new URL should carry a self-referencing canonical. Once redirects are live, canonicals on the new site must use the new URLs.

Check: Fetch one URL per template and confirm the canonical is the absolute new URL, not the old one.

Google site move guide, Google canonicalization guide

Update hreflang to the new URLs, with return links and x-default

High

Hreflang annotations must use the new URLs. Google may ignore them when a page does not link back to the page it points to.

Check: Confirm each language version links back, uses full http or https URLs, and that x-default covers unmatched languages. Skip this task for single-language sites.

Google localized versions guide

Publish a new sitemap with only final 200 URLs, and submit it

High

Google says to submit the new sitemap. A sitemap file holds 50MB uncompressed or 50,000 URLs, and Google uses lastmod only when it is accurate.

Check: Include only absolute, canonical URLs. Split the list into several sitemaps at the limit, optionally with an index file, and set lastmod only to dates that match the page.

Google sitemaps guide, Google site move guide

Keep the old-URL sitemap submitted for monitoring

Medium

Google says the old-URL sitemap shows redirect warnings that you can ignore, and its indexed count falls as the new sitemap's count rises.

Check: Submit both sitemaps. Ignore redirect warnings on the old-URL sitemap only, and track both counts each week.

Google site move guide

Rewrite internal links to the final URLs in the same release

High

Google says to replace internal URLs based on the mapping. An internal link that goes through a redirect adds a hop for users.

Check: Crawl the new site and list each internal link that answers with a 3xx status. Fix every one.

Google site move guide

Update external, social and ad links, top inbound first

Medium

Google suggests prioritizing outreach by the number of inbound visits for each link.

Check: Sort the inbound links to old URLs by visits, using analytics. Update the top ones first, then social profiles and ad campaigns.

Google site move guide

Lower the DNS TTL a week ahead for hosting moves, and monitor propagation

Medium

Google suggests lowering the TTL at least a week before a hosting move, to a few hours, so DNS caches refresh faster.

Check: Note the current TTL on each record, and lower it a week before the move. Watch propagation from more than one location, and keep the old host live.

Google hosting move guide

Verify analytics and conversion tracking on the new templates, and annotate the launch

High

Broken tracking looks exactly like a traffic collapse, so rule out a measurement fault before you diagnose an SEO loss.

Check: Confirm each template fires the analytics and conversion tags in the real-time reports. Add a launch annotation with the date.

Seomator checklist, Seer Interactive checklist

Move images and PDFs with the same redirect rules, and keep image URLs stable

Medium

Images and downloads such as PDFs can hold traffic and links. Google says to reference an image with the same URL so it can be cached and reused.

Check: Add image and PDF URLs to the map. Return a 301 where a URL changes, and leave image URLs unchanged where you can.

Google site move guide, Google Images guide

6. Change of Address

4 tasks

Check the Change of Address prerequisites

High

You must own both properties under one Google account, and the tool works only on domain-level properties, not on paths.

Check: Confirm owner access to both properties under the same account, and confirm the old property is at domain level.

Change of Address help

Redirect the old homepage and canonical pages with 301 before you submit

Critical

Google asks for a 301 from the old homepage to the new one, and recommends 301s for the canonical pages. The tool runs a quick check for 301s on a few pages.

Check: Test the old homepage and the top canonical pages before you open the tool. Fix every critical pre-move failure the tool reports before you continue.

Change of Address help

Submit Change of Address for every old host variant, then check each one

High

The tool does not move subdomains, including www. It does move every protocol and every path under the domain. Google says to use it for unused www and non-www variants too.

Check: List every host variant in Search Console. Submit a request for each domain or subdomain change, and skip HTTP to HTTPS, www to non-www and path moves.

Change of Address help, Google site move guide

Don't chain or stack moves: one move at a time into a shared destination

Medium

Google says you cannot submit a second move from the new site right after the first. Merging several sites at once can cause confusion and traffic loss.

Check: Finish one move, wait until traffic stabilizes, then start the next. Record the date each move finished.

Change of Address help

7. Post-launch monitoring

10 tasks

Re-crawl the live site on launch day and diff it against the old crawl

Critical

A second full crawl confirms the changes are the ones you expect. An old URL with no link on the new site is an orphan.

Check: Compare status codes, canonicals, titles, internal links, hreflang and noindex between the two crawls. List every old URL that no new page links to.

Seer Interactive checklist, Seomator checklist

Check server logs daily in week one for Googlebot hits, 4xx and 5xx

High

Logs show Googlebot's crawling, the URLs that return errors, and normal user traffic in one place.

Check: Filter the logs for Googlebot, and count 4xx and 5xx responses by URL each day. Log any new error pattern for the team.

Google site move guide, Google HTTP status guide

Watch the Crawl Stats host status for robots.txt, DNS and server connectivity

High

A red status means a significant robots.txt, DNS or connectivity error in the last week.

Check: Check the host status in Crawl Stats each day in the first weeks. Treat red as an issue to fix the same day.

Crawl Stats help

Track the old-URL and new-URL sitemaps in the Sitemaps report

Medium

Google expects the indexed count for the old sitemap to fall over time while the count for the new sitemap rises.

Check: Record both indexed counts each week. A new-sitemap count that stays low is a prompt to check the redirects.

Google site move guide

Review the Page indexing report weekly for redirect errors, noindex, soft 404 and not found

High

The report's example list is limited to 1,000 URLs. Live URL Inspection does not test duplicate or canonical conditions, so use the report to find patterns.

Check: Use the report to find patterns each week. Check important URLs one by one in URL Inspection, and compare canonicals with the crawl.

Page indexing report help

Compare Performance clicks and impressions for old and new URLs at weeks one, two and four

High

Google says new URLs start to show impressions and clicks as they index, and rankings may fluctuate before they settle.

Check: Filter by the old and new URL paths separately. Read trends across weeks, not single days.

Google site move guide, Webflow checklist

Check Core Web Vitals per new template once 28 days of field data exist

Low

The Chrome UX Report uses a 28-day rolling average, so new templates take weeks to show their field data.

Check: Review field data for each template after that window. Don't judge a new template on its first week.

Chrome UX Report methodology

Fix the 404s that you link to or list in a sitemap, and leave the rest

Medium

Google advises fixing only the 404s you link to or list in a sitemap. A page that has moved should return a 3xx redirect.

Check: Filter the 404 list by internal links and sitemap membership. Fix those, then leave the rest.

Page indexing report help

Run a full audit at day 90 and compare it with the baseline

Medium

The monitoring plan ends with one full re-audit at day 90, the point to compare with the baseline.

Check: Re-run the full crawl, compare it with the baseline crawl, and confirm every must-not-break URL still redirects.

Seomator checklist

Keep checking until Change of Address ends at day 180, and keep redirects for one year

Medium

The in-progress notice and the move signals run for 180 days. The site move guide says generally at least one year for redirects, so the calendar needs both dates.

Check: Put both end dates in the plan. Don't remove redirects, or let the old domain lapse, before those dates.

Change of Address help, Google site move guide

8. Rollback and recovery

4 tasks

Write go/no-go and rollback criteria before launch, and name the rollback owner

Critical

Set three to five binary conditions, with a named rollback owner. The criteria are your own judgement.

Check: Write three to five yes or no conditions, for example: redirect map complete, staging crawl clean, backup tested, rollback owner named.

Seomator checklist

Keep the old host and a restorable backup live until old-host traffic is zero

High

Google says the old hosting can shut down once its traffic reaches zero, so keep it running until then.

Check: Track old-host traffic in the logs until it reaches zero. Keep the backup restorable until then.

Google hosting move guide, Seomator checklist

Write the Change of Address cancel procedure into the runbook

Medium

Google's cancel works for 180 days after the request. Remove the old 301s from the server first, or Google may keep following them.

Check: Write three steps in the runbook: remove the old 301s, add 301s from the new site back to the old, and click Cancel Move on the old property.

Change of Address help

Set stakeholder expectations with the recovery data

Low

One Search Engine Journal study of 892 domain migrations found an average of 523 days for the new domain to match the old estimated traffic. Its figures are estimates from SEO tools, not each site's own analytics.

Check: Put these figures in the plan with the method limit beside them, so nobody reads an estimate as a forecast.

Search Engine Journal study

Reference tables

Migration types at a glance

TypeWhat changesDo URLs change?Change of Address?Main risk
DomainThe domain name, such as example.com to example.net, or merged hostnames.YesYes, for a domain or subdomain move.Old URLs with no 301 to an equivalent page.
Platform or CMSTemplates, rendering and often the URL pattern.Depends on the URL map.No, unless the domain also changes.Links built with scripts instead of a standard link (an a tag with an href), which Google cannot follow.
HTTPSThe protocol, from http to https.YesNo.HTTPS pages that redirect through HTTP, use a bad certificate, or name an HTTP URL as their canonical (preferred) version.
URL structurePaths, such as pages moved under a new folder.YesNo. Add redirects and update sitemaps.A redesign combined with the move, which Google says will probably lose some traffic.
Hosting or CDNThe server, host or CDN, with the visible URLs unchanged.NoNo.Crawl or DNS failures, and firewalls that block Googlebot.

Redirect types and how Google reads them

RedirectHow Google reads itUse it for
301Permanent. Google reads it as a strong signal that the target should be canonical.Every permanent move.
308Permanent. Google treats it the same as a 301, but the two codes differ in meaning for other clients.A permanent move where the meaning matters to other clients.
302Temporary. A weak signal, and the original URL can stay in results.A short outage, when you want the original URL to stay in results.
307Temporary. Google treats it the same as a 302.A temporary change that should read as temporary to other clients.
Instant meta refreshRead as permanent.Avoid it when a server-side redirect is possible.
Delayed meta refreshRead as temporary.Avoid it for moves.
JavaScript redirectGoogle may never see it if rendering of the content fails.Last resort, when no server-side or meta refresh option exists.

Common Questions

How many redirect hops can a migration afford, and what does each extra hop cost?

Google says it can follow up to 10 hops, but its site move guide advises redirecting straight to the final URL. If that is not possible, keep the chain ideally to no more than 3 hops and fewer than 5. Each extra hop adds latency for users, and not every browser supports long chains. Search Console's Crawl Stats report also counts each hop as a separate request, so every extra hop adds one request to the crawl count.

Do 301 redirects lose link equity, and is a 302 safer while I test?

Google says 301 and other permanent redirects do not cause a loss in PageRank, so a 301 is the right choice for a move. A 302 is a temporary redirect and a weak signal, and it can keep the old URL in search results. Do not use a 302 as a safety net during a move. Google reads it as temporary, so the old URL can stay in results.

Which moves need Change of Address, and which need only redirects?

Change of Address applies only when a whole domain or subdomain moves to another domain or subdomain. An HTTP to HTTPS switch, a move from www to non-www and a change of paths inside one site do not use it. Those moves need redirects, canonicals and updated sitemaps. For a domain move, submit the change for every subdomain variant of the old domain, including unused www and non-www hosts, from an account that owns both properties.

How long should I keep redirects and the old domain?

Google's site move guide says to keep redirects generally at least one year. Its Change of Address help says at least 180 days, and longer if Google traffic still reaches the old URLs. Plan for the longer figure. Keep paying for the old domain for at least a year as well, because Google sees no relationship between the two sites after 180 days, and someone could buy an abandoned domain and use it for malicious purposes.

How do I tell a traffic dip from a failed migration?

Judge the move in weeks, not days. Google says a small or medium site can take a few weeks for most pages to move, and rankings can fluctuate before they settle. Watch the indexed page counts for the old and new sitemaps first, because a low count on the new side can point at the redirects. Compare every measure with your pre-launch baseline. Recovery can take far longer than a few weeks. The rollback section gives the figures from a large study, with its limits.

Can I roll back after I submit Change of Address?

Yes, for 180 days after the request. Google's steps are to remove the 301 redirects on your server that send traffic from the old site to the new one, add 301 redirects from the new site back to the old one, then click Cancel Move in the Change of Address tool on the old property. Skip the first step and Google may keep following the old redirects after the cancel, so remove them before you cancel.