Site Migration Redirect Checklist
Complete redirect checklist for site migrations: URL inventory, redirect mapping, testing, monitoring, and post-launch verification. Every step, in order, so nothing falls through the cracks.
Site migrations are where redirects matter most — and where they go wrong most often. A missing redirect means a lost page. A lost page means lost rankings, lost traffic, and lost revenue. Multiply that by hundreds or thousands of URLs, and a sloppy migration can set your SEO back months.
This checklist covers every redirect-related step in a site migration, from pre-launch planning to post-launch monitoring. Follow it in order.
Before You Start
Not all site changes are migrations. Here is when this checklist applies:
- Domain change: Moving from
old-domain.comtonew-domain.com - Protocol change: Moving from HTTP to HTTPS
- URL structure change: Changing URL patterns (e.g.,
/blog/post-slugto/articles/post-slug) - CMS migration: Switching platforms (WordPress to Next.js, Drupal to Webflow, etc.)
- Subdomain consolidation: Merging
blog.example.comintoexample.com/blog - Site redesign with URL changes: Any redesign that alters existing URLs
If your URLs are not changing, you do not need this checklist. If even one URL changes, you do.
Phase 1: Pre-Migration Inventory
Crawl your existing site completely
Use Screaming Frog, Sitebulb, or a similar crawler to get every URL on your current site. Export the full list. This is your source of truth. Do not skip this — your sitemap.xml is probably incomplete.
Export all indexed URLs from Google Search Console
Go to Search Console > Pages > View data about indexed pages. Export this list. Cross-reference with your crawl. Google may have indexed URLs your crawler missed (orphan pages, old content).
Pull backlink data
Use Ahrefs, Moz, or Semrush to export all URLs receiving external backlinks. These URLs are the most critical for redirect mapping — losing their link equity hurts your domain authority directly.
Identify your highest-traffic URLs
Pull the last 12 months of traffic data from Google Analytics or your analytics tool. Sort by sessions. Your top 100 URLs need extra attention during mapping and testing.
Document existing redirects
Export your current redirect rules from .htaccess, Nginx config, Cloudflare, your CMS, or wherever they live. These redirects need to be preserved or updated in the new setup. Failing to migrate existing redirects is one of the most common migration mistakes.
Do not trust your sitemap alone
Sitemaps are often incomplete or outdated. They exclude redirected URLs, non-canonical pages, and pages blocked by robots.txt. Always combine a fresh crawl with Search Console data and backlink reports.
Phase 2: Redirect Mapping
Create a redirect map spreadsheet
Build a spreadsheet with at minimum: old URL, new URL, redirect type (301 for permanent), priority (based on traffic and backlinks), and verification status. Every old URL that will not exist on the new site needs a row.
Map URLs to their closest equivalent
Map each old URL to the most relevant new URL. Not the homepage — the actual equivalent page. If /services/web-design becomes /solutions/website-design, that is the mapping. Only redirect to the homepage as a last resort when no equivalent exists.
Handle URLs with no equivalent
Some old pages will not have a match on the new site. Map these to the closest category page or parent page. If nothing is even close, consider keeping the content or explicitly returning a 410 (Gone) status instead of a redirect to an irrelevant page.
Flatten existing redirect chains
If your current site has URL A redirecting to B and B is being migrated to C, map A directly to C. Do not create A to B to C chains. This is your chance to clean up years of accumulated redirect debt.
Use 301 for everything (unless you have a specific reason not to)
Permanent migration means 301 redirects. The only exception is if you plan to revert the change within a few weeks — then use 302. In practice, migrations are permanent. Use 301.
Trace your redirect chains
Find redirect loops, broken chains, and unnecessary hops instantly.
Phase 3: Implementation
Implement redirects on the new server or platform
Add your redirect rules to the new site's configuration. The method depends on your stack — Nginx config, .htaccess, Cloudflare Bulk Redirects, CMS redirect plugin, or application-level redirects. Use the method that is most maintainable for your team.
Handle pattern-based redirects
If URL patterns changed predictably (e.g., /blog/ became /articles/), use regex or wildcard rules rather than mapping every URL individually. But test these rules thoroughly — regex redirects are the leading cause of redirect loops.
Set up HTTPS redirects if changing protocol
If you are moving to HTTPS, ensure that HTTP versions of all URLs redirect to their HTTPS equivalents. Use HSTS headers to tell browsers to always use HTTPS. Consider HSTS preload for maximum protection.
Update internal links
Do not rely on redirects for your own site's navigation. Update all internal links to point to the new URLs directly. Redirects should catch external links and bookmarks — your own site should not be sending traffic through redirect chains.
Update canonical tags and sitemaps
Every page on the new site should have a canonical tag pointing to its own new URL. Update your sitemap.xml to list all new URLs. Remove old URLs from the sitemap.
Phase 4: Pre-Launch Testing
Test every redirect in your map
Use a bulk redirect checker to verify every single redirect. For a migration of any size, manual checking is not feasible. Feed your redirect map into a bulk checking tool and verify that each old URL returns a 301 and lands on the correct new URL.
Test for redirect loops
Deliberately test URL patterns that could loop — especially URLs that match multiple redirect rules. Common loop triggers: HTTPS redirect + www redirect + path redirect all firing in sequence.
Test edge cases
Check URLs with query strings, trailing slashes, mixed case, encoded characters, and fragments. These often break redirect rules that work fine for clean URLs.
Verify redirect chain length
No URL should require more than one redirect to reach its final destination. If you find chains (301 to 301 to 200), flatten them. Two hops is acceptable in rare cases. Three or more is not.
Test on a staging environment first
Deploy to staging and run your full redirect test suite before touching production. Fix issues on staging. Re-test. Only go live when every redirect resolves correctly.
Automate your testing
Write a script or use a tool that takes your redirect map (CSV: old URL, expected new URL, expected status code) and verifies each one. Re-run it after every change. This script is the single most valuable artifact in your migration.
Phase 5: Launch Day
Deploy and verify redirects immediately
After deploying the new site, re-run your entire redirect test suite on the live production URLs. Do not wait. Do not assume staging results carry over. DNS changes, CDN caches, and production-only configs can change behavior.
Submit new sitemap to Google Search Console
Submit your updated sitemap.xml in Search Console. If you changed domains, use the Change of Address tool. This tells Google to start crawling the new URL structure.
Monitor real-time traffic
Watch your analytics in real time for the first few hours. A sudden traffic drop to specific pages usually means a broken or missing redirect. Fix immediately.
Phase 6: Post-Launch Monitoring
Check Search Console for crawl errors daily
For the first two weeks, check Search Console daily for new 404 errors and crawl issues. Each 404 is potentially a missing redirect. Add redirects as you find gaps.
Monitor organic traffic weekly
Compare organic traffic week-over-week for at least 3 months. Some ranking fluctuation is normal after a migration (the "Google dance"), but sustained drops indicate redirect or indexing problems.
Re-crawl the old domain or old URLs monthly
Once a month for the first 6 months, re-check that your redirects are still working. Server config changes, plugin updates, and CDN cache purges can silently break redirects.
Keep redirects active for at least one year
Do not remove redirects early. Google needs time to reindex, and external sites linking to your old URLs may never update their links. One year is the minimum. Indefinitely is better.
Migration Redirect Pitfalls
Common mistakes that kill migrations
- Redirecting everything to the homepage instead of mapping to equivalent pages
- Forgetting to migrate existing redirect rules from the old site
- Using 302 (temporary) instead of 301 (permanent) for a permanent migration
- Not testing URLs with query strings, trailing slashes, and edge cases
- Removing redirects too soon (less than 12 months after migration)
- Not updating internal links, forcing your own site through redirect chains
- Ignoring non-HTML assets (images, PDFs, downloads) that also need redirects
- Not monitoring Search Console for new 404 errors after launch
PDFs and images matter too
If your old site had PDF whitepapers, downloadable resources, or images linked from external sites, those URLs need redirects too. Backlinks to PDFs carry link equity just like page links.
Related Articles
A migration without a redirect plan is a controlled demolition of your SEO. Plan every redirect before you flip the switch.
Never miss a broken redirect
Trace redirect chains and detect issues before they affect your users and SEO. Free instant tracing.