Spearleaf · Position Zero Playbook v11 · 2026-06-16 Start here Changelog
Quickstart

Run a site migration without losing traffic

Charles Taylor's sequenced launch: clean the old site, map every URL, dark launch, switch canonicals, then 301, and keep redirects forever.

On this page

Use this when a site is moving to a new domain, CMS, or URL structure and you cannot afford to tank organic traffic. The default advice (stand up the new domain, submit sitemaps, fire 301s) is the trap: it lets Google treat both sites as live. This SOP forces Google to crawl the old URLs before it reaches the new ones. Set the client expectation up front: a well-run migration still drops roughly 10-25% for three to six months, then recovers. Do not migrate purely for SEO reasons.

Phase 1: Clean the legacy site first

Do this BEFORE anything else. Any crawl issue that exists now carries over to the new site and lengthens recovery.

  1. Make HTML and XML sitemaps current.
  2. Fix bad links. Broken pages (4xx) and existing redirects (3xx).
  3. Fix soft 404s.
  4. Fix bad canonicals.
  5. Remove duplicate content.
  6. Fix bad titles and meta descriptions.
  7. Fix site structure. Resolve multiple or missing H1s, enforce headline hierarchy, use <p> tags instead of <span> tags.

Phase 2: Find every URL, then plan each one

Build one master list of every URL Google could know about, then assign each a fate.

  1. Pull Search Console. Last 16 months of impressions, clicks, and landing pages.
  2. Pull Google Analytics landing pages. Both organic-only and all traffic.
  3. Pull URLs with external links / backlinks. These hold authority worth protecting.
  4. Crawl the site and scrape the XML sitemap.
  5. Combine all sources and de-dupe into one list.
  6. Decide a fate for every URL: Keep, 301 Redirect, or Kill. Keep is best (no equity loss, already indexed). 301 if it must change. Kill/404 is acceptable but forfeits that page's authority.
  7. Push the business to keep URLs unchanged wherever possible (for example, keep top-level category URLs even if product URLs change).

Phase 3: Build the new site to be better

The new site must be as good or better than the old one, technically and on-page. This is the recovery driver.

  1. Clean taxonomy and architecture that is easy to use, navigate, and understand.
  2. Make sure Googlebot can access, render, and index every page. Avoid JS / parallax / infinite-scroll that blocks crawling; watch page speed.
  3. Follow URL best practices. Lowercase only (uppercase 301s to lowercase), no spaces or special characters, hyphens between words, one consistent trailing-slash and extension standard, HTTPS.
  4. Keep internal linking and canonicals consistent. Use explicit <a href> links, not JS onclick, not relative paths.
  5. Fill SEO tags on every page: Title, Meta description, Canonical, OG, Twitter, Meta robots.
  6. Add custom 404 pages with a search box, links to key pages, on-brand.

Phase 4: The launch sequence (the "secret sauce")

This order forces Google to crawl the old URLs before reaching the new ones. Skip it and Google treats both sites as live.

  1. Dark launch the new site.
  2. Update the canonicals on the OLD site to point at the new-site URLs. Cover every page that is moving.
  3. Wait about a week (roughly 7-10 days, depending on the site's authority).
  4. Launch single-hop 301 redirects from old URLs to new URLs. Do not forget images and PDFs.
  5. Launch the new XML sitemaps on the new site.
  6. Wait about another week (roughly 7-10 days).
  7. Update all internal links to point to the new URLs.
  8. Update nav/site links and remove the legacy XML sitemaps (bonus step).
  9. Update any external links you can influence.

Phase 5: After launch

  1. Monitor constantly. This is how a bad redirect gets caught mid-migration. On a hiccup, do not panic; diagnose, then fix (for example, convert a many-to-one redirect back to one-to-one).
  2. Keep the 301 redirects effectively forever. If humans or Google are still hitting an old URL, keep redirecting it. Only remove a redirect when no one hits it.
  3. Keep the legacy domain in Search Console indefinitely.
  4. Do NOT use the GSC Change of Address tool.
  5. Do any further page culling only AFTER the migration. Removing thin pages is itself a mini-migration.

Pitfalls

Source

Charles Taylor (enterprise SEO background: LexisNexis, Verizon, Fox; SEO Fight Club), "Website Migrations With Zero Traffic Loss," Day 3 conference session. This page is conference-derived and reconstructed from the session notes; figures and examples are faithful to those notes only.

Connect it