Guide Technical SEO Stable

How to fix redirect chains and status codes

How to audit and clean up redirects and HTTP responses so crawlers and users reach the right page in one hop.

ID
SS-GD-012
Version
1.0
Confidence
Established · 84
Evidence
Strong
Updated
2026-07-08
Review
2026-10-08

Executive summary

Every redirect should resolve to its final destination in a single hop with the correct status code. Use permanent 301 redirects for moved pages, return proper 404 or 410 for genuinely gone content, and never redirect en masse to the home page. Chains, loops and soft 404s waste crawl budget and bleed equity.

What this helps you decide

Which redirects and status codes are costing you crawl efficiency and equity, and how to correct each one.

Business problem

Years of migrations leave redirect chains, loops and wrong status codes that leak link equity, slow crawling and occasionally send crawlers in circles. Soft 404s and 302s used where 301s belong quietly confuse indexing.

Step-by-step process

  1. 1
    Crawl for the full response chain

    Run a crawl that records every hop and final status so you can see chains, loops and mismatched codes across the site.

  2. 2
    Flatten chains to one hop

    For any redirect that passes through intermediate URLs, update the source to point directly at the final destination.

  3. 3
    Correct the status codes

    Use 301 for permanent moves and reserve 302 for genuinely temporary ones; a permanent move served as 302 muddles consolidation.

  4. 4
    Handle gone content honestly

    Return 404 or 410 for pages that are truly gone rather than redirecting them to irrelevant pages or the home page.

  5. 5
    Fix soft 404s

    Find pages that return 200 but show 'not found' content and make them return a real 404, or restore genuine content if the page should exist.

  6. 6
    Break redirect loops

    Identify any URL that redirects back into its own chain and set a single correct destination to end the loop.

  7. 7
    Update internal links to targets

    Point internal links straight at final URLs so crawlers never hit the redirect at all.

Worked example

Checklist

  • Crawl and record every redirect hop and final status
  • Flatten multi-hop chains to a single redirect
  • Use 301 for permanent moves and 302 only when truly temporary
  • Return 404 or 410 for genuinely removed pages
  • Convert soft 404s into real 404s or restore real content
  • Repoint internal links directly at final destinations

Common mistakes

  • Redirecting large numbers of removed pages to the home page instead of returning 404 or 410
  • Using temporary 302 redirects for permanent moves and diluting consolidation
  • Leaving internal links pointing at redirected URLs so every visit incurs an extra hop

30-minute experiment

KPIs to track

  • Number of multi-hop redirect chains
  • Count of soft 404s
  • Internal links pointing at redirected URLs

FAQs

Is it fine to redirect an old page to the home page?

Only if the home page is the genuine equivalent. Redirecting unrelated removed pages to the home page creates soft 404s and passes little value; return 404 or 410 instead.

Do redirect chains really hurt SEO?

Yes. They waste crawl budget, slow users, and can dilute the equity that reaches the final URL, so flattening them to one hop is worthwhile.

Recommended next steps

    Apply the method Crawlability Framework Framework See the wider capability Crawl Optimisation Capability Decide your next move Should I migrate my URL structure? Decision

Where this fits - and what's next

The SearchScore path from a problem you feel to visibility you can measure.

    Problem Spot the pattern Method Pick the framework Do it Follow the guide Check Run the checklist Score Interactive audit TrackSearchScore Tracker StartFree audit →