Redirect Chains Explained
How redirect chains form, why they're bad for SEO and performance, how to detect them, and how to fix them by pointing all redirects directly to the final destination.
A redirect chain is what happens when URL A redirects to URL B, which redirects to URL C, which redirects to URL D. Instead of one clean hop from old to new, you get a chain of hops that wastes time, confuses search engines, and degrades user experience.
This article explains how chains form, why they matter, and exactly how to eliminate them.
What a Redirect Chain Looks Like
A single redirect is clean:
https://example.com/old --> https://example.com/new
(1 hop, fast, clean)
A redirect chain is not:
https://example.com/page-v1
--> https://example.com/page-v2
--> https://www.example.com/page-v2
--> https://www.example.com/page-v3
--> https://www.example.com/articles/page
(4 hops, slow, messy)
Each hop adds latency, burns crawl budget, and dilutes link equity. Three or more hops is a chain. One or two hops is normal.
How Redirect Chains Form
Chains rarely happen on purpose. They accumulate over time through a series of individually reasonable decisions.
Initial redirect
In 2020, you move /blog/my-post to /articles/my-post. You set up a 301 redirect. Clean and correct.
Domain change
In 2022, you rebrand and move from example.com to newbrand.com. You redirect all old URLs to the new domain. Now /blog/my-post redirects to /articles/my-post, which redirects to newbrand.com/articles/my-post. Two hops.
URL restructuring
In 2024, you reorganize your content. /articles/my-post becomes /resources/guides/my-post. Now you have three hops.
HTTPS enforcement
Your CDN adds an HTTP-to-HTTPS redirect. Now any HTTP link adds yet another hop. Four hops for some users.
Each individual redirect made sense. But nobody went back to update the original redirects to point directly to the final destination.
Why Redirect Chains Are Bad
Performance
Every hop in a redirect chain requires a full HTTP round trip. On a mobile connection with 100ms latency, a 4-hop chain adds 400ms before the user sees any content. That is before DNS resolution, TLS handshakes, and actual content loading.
| Hops | Added Latency (100ms RTT) | User Impact |
|---|---|---|
| 1 hop | ~100ms | Imperceptible |
| 2 hops | ~200ms | Barely noticeable |
| 3 hops | ~300ms | Noticeable delay |
| 4+ hops | ~400ms+ | Users start bouncing |
SEO Impact
Google follows redirect chains, but with diminishing patience:
- Link equity loss: Google has stated that link equity passes through redirects, but each hop may lose a small percentage. A 4-hop chain passes less equity than a 1-hop redirect.
- Crawl budget waste: Googlebot has a crawl budget for your site. Every hop in a chain consumes part of that budget following redirects instead of discovering new content.
- Indexing delays: Longer chains mean it takes longer for Google to discover and index the final URL.
Google's redirect hop limit
Google follows up to 10 redirect hops before giving up. Most browsers stop at 20. But hitting these limits means something is seriously wrong. The real damage happens well before those limits.
User Experience
Users on slow connections feel every hop. Users with strict privacy settings or browser extensions may have redirect-following disabled or limited. And if any link in the chain breaks, the entire path fails.
Trace your redirect chains
Find redirect loops, broken chains, and unnecessary hops instantly.
How to Detect Redirect Chains
With curl
curl -v -L https://example.com/old-page 2>&1 | grep -E "^< HTTP|^< [Ll]ocation"
This shows every hop with its status code and destination. If you see more than one Location header, you have a chain.
With browser DevTools
- Open DevTools (F12)
- Go to the Network tab
- Check "Preserve log"
- Navigate to the old URL
- Look for multiple 301/302 responses before the final 200
With a redirect tracing tool
For checking more than a handful of URLs, use a tool that can trace chains in bulk and report the hop count for each URL.
How to Fix Redirect Chains
The fix is conceptually simple: make every redirect point directly to the final destination.
Before fixing:
/page-v1 --> /page-v2 --> /page-v3 --> /current-page
After fixing:
/page-v1 --> /current-page
/page-v2 --> /current-page
/page-v3 --> /current-page
Step-by-Step Fix Process
Audit all redirects
Export your redirect rules from your server config, .htaccess, CDN, and CMS. Build a complete map of every redirect.
Trace each chain to its final destination
For every redirect, follow the chain to the end. Record the final URL.
Update each redirect to point to the final URL
Rewrite every redirect rule so it points directly to the final destination. Do not remove intermediate redirects if external sites might link to those URLs.
Test and verify
After updating, trace every redirect again to confirm chains are eliminated. Watch for new chains introduced by CDN or load balancer rules.
Don't delete intermediate redirects
When flattening chains, update the destination of each redirect rather than removing it. External sites, bookmarks, and search engine indexes may still reference any URL in the old chain. Removing a redirect turns it into a 404.
Preventing Redirect Chains
The best fix is prevention. Every time you add a new redirect:
- Check if the destination URL itself redirects somewhere else
- If it does, point your new redirect to the ultimate final destination instead
- Check if any existing redirects point to the URL you are redirecting away from
- If they do, update those existing redirects to point to the new destination
This takes discipline, but it keeps your redirect map clean and flat.
When Chains Are Acceptable
A 2-hop chain (e.g., HTTP to HTTPS, then www to non-www) is normal and generally acceptable. These protocol and subdomain normalizations happen at the edge and add minimal latency. Do not obsess over eliminating every single 2-hop sequence.
Focus your effort on chains of 3 or more hops, especially those involving different paths or domains.
Related Articles
The shortest path between two URLs is always one redirect. Make it so.
Never miss a broken redirect
Trace redirect chains and detect issues before they affect your users and SEO. Free instant tracing.