Redirect Mapping

No Comments
Redirect mapping

What redirect mapping is

Redirect mapping is the 1:1 spreadsheet that pairs every old URL with the single most relevant new URL it should send visitors and search engines to after a migration — implemented as 301 (permanent) redirects. Get it right and rankings and link equity flow to the new URLs; get it wrong — chains, loops, or lazy redirects to the homepage — and Google treats the moves as soft 404s and you lose the traffic those pages earned.

This is where a migration is won or lost. It runs off the top-URL list from your pre-migration audit, gets validated on your staging environment, and gets watched closely during post-migration monitoring.

The rules that keep redirects clean

  • One hop, not a chain. Old URL should land on the final new URL in a single 301. A → B → C wastes crawl budget and dilutes signals. Redirect A straight to C.
  • No loops. A → B → A is a dead end that serves nobody. Loops usually come from conflicting rules stacked on top of each other.
  • Relevance beats convenience. Map each old page to its true equivalent. Dumping everything on the homepage is the fastest way to get moves seen as soft 404s.
  • 301, not 302. Permanent moves need the permanent status code so equity transfers. 302s tell Google the move is temporary.
  • Keep them for months. Don't rip redirects out after launch. Leave them in place well past the point where Google has recrawled and links have updated — think many months, not weeks.

Example: real redirect map rows

The deliverable is this simple — and this exact. Notice the last row demotes a killed page to its category, not the homepage.

old_url                              new_url                                  type
/blog/2019/log-file-analysis/        /guides/log-file-analysis/               301
/products/widget-pro/                /shop/widgets/widget-pro/                301
/services.html                       /services/                               301
/category/tools?page=2               /tools/                                  301
/old-discontinued-gadget/            /shop/gadgets/                           301

Example: catching a chain with curl

Follow the redirects and count the hops. More than one 301 before a 200 is a chain to flatten.

$ curl -sIL https://example.com/services.html | grep -iE 'HTTP/|location'
HTTP/2 301
location: https://example.com/services/
HTTP/2 301
location: https://www.example.com/services/
HTTP/2 200

Two 301s here (non-www→path, then http/www normalization). Rewrite the source rule so /services.html lands on the final https://www.example.com/services/ in one hop.

Redirect status codes at a glance

CodeMeaningPasses ranking signals?Use it for
301Moved permanentlyYesMigrations, permanent URL changes — your default
302 / 307TemporaryTreated as temporaryGenuinely short-term redirects only, not migrations
308Permanent, method-preservingYesPermanent moves where request method must be kept
200OK (final destination)n/aWhere every redirect should end
404 / 410Gone / not foundNoTruly retired pages with no relevant equivalent
Soft 404Redirect to irrelevant pageNo — equity lostNever on purpose — the failure mode to avoid

How to check it on your own site

  1. Start from the audit list. Take every URL from your pre-migration crawl — not a curated subset. Each one needs a destination or an intentional 410.
  2. Map 1:1 by relevance. For each old URL, pick the closest new equivalent. Where none exists, map up to the parent category, and only 410 pages with genuinely no home.
  3. Bulk-test the whole map. Feed the list through a redirect checker or a script that curls each old URL and records the final status and hop count. Every row should end in one 301 to a 200.
  4. Flatten chains and kill loops. Any row with 2+ hops gets its source rule rewritten to point at the final destination. Any loop gets its conflicting rules untangled — see self-redirect loops.
  5. Spot-check the money pages by hand. Curl your top 20 URLs by traffic and links individually. These are the ones you cannot afford to get wrong.
  6. Re-test on production after launch. Rules behave differently live than on staging. Re-run the whole map against the real domain within hours of cutover.

Common mistakes & how to fix them

  • Redirecting everything to the homepage. It's fast, it's lazy, and Google reads it as a soft 404 — equity gone. Fix: map to the real equivalent, or the parent category at worst.
  • Leaving redirect chains in place. Every extra hop leaks a little signal and burns crawl budget. Fix: point sources directly at final destinations; re-flatten whenever you add new rules.
  • Using 302s for a permanent move. Google keeps the old URL in play and equity stalls. Fix: use 301 (or 308) for anything permanent.
  • Removing redirects too soon. Pull them at three weeks and any old link or slow-to-recrawl page 404s. Fix: keep the map live for many months — there's little cost to leaving 301s in place.
  • Forgetting query-string and paginated URLs. ?page=2, tracking params, and faceted URLs still get crawled and linked. Fix: include them in the map or handle them with a catch-all rule.

Frequently asked questions

How long do I keep the redirects?

Months, not weeks — well past the point where Google has recrawled the old URLs and inbound links have updated. Old backlinks can linger for years, and a 301 costs you nothing to leave in place, so err toward keeping them.

Do redirect chains really hurt that much?

They dilute signals, slow crawling, and add latency for users. One or two hops won't sink you, but they compound as you stack migrations. Flatten them — it's cheap insurance. See our 301 redirects case study for how messy this gets in practice.

What if an old page has no equivalent?

Redirect it to the most relevant parent category if one fits. If nothing fits, return 410 (Gone) — an honest 410 is better than a soft-404-inducing redirect to somewhere irrelevant.

Can't I just wildcard-redirect a whole folder?

Only if the folder maps cleanly 1:1 to a new folder. Wildcards that flatten many distinct pages onto one destination create soft 404s. Use them for structural moves, not to paper over missing mappings.

What tool builds the map?

A spreadsheet plus your audit export is enough for most sites. Our redirect map generator speeds up matching old URLs to new ones, and how to set up 301 redirects covers implementation.

Claude Vincent is a technical SEO consultant focused on crawlability, rendering, and AI-search visibility. He writes the field guides and case studies at SEO ProCheck, with a bias toward the durable, unglamorous work that decides whether search engines and AI answer engines can actually read and cite a site.

About SEO ProCheck

Technical SEO consulting and GEO strategy with 20 years of enterprise experience. Case studies, resources, and tools for search and AI visibility.

Work With Me

Technical SEO audits, GEO strategy, site migrations, and international SEO. Hourly consulting for teams who need hands-on support, not just reports.

Subscribe to our newsletter!

More from our blog