
Chain versus loop, and why the pairing matters
Two related problems live under this name. A redirect chain is a link that goes A to B to C to D before landing on a real page: multiple hops, but it eventually resolves. A redirect loop is when the chain bites its own tail, A to B to C and back to A, so the request never settles and the browser gives up with ERR_TOO_MANY_REDIRECTS. Google typically follows a limited number of hops (Google has said around five) before it stops, so a long enough chain can behave like a loop from a crawler's point of view even if a browser might grind through it.
The "internal" part is what makes this your problem to own. These are links inside your own site, in your navigation, body copy, and templates, pointing at redirecting URLs instead of final destinations. You control every one of them, which means every one is fixable at the source.
What the hops look like
Why it costs you rankings
Three real costs, in order of severity. First, a genuine loop takes the page offline: users hit an error, Googlebot cannot reach the content, and if that URL was indexed it drops out. Second, chains waste crawl budget. Every hop is a request Googlebot spends on your redirect plumbing instead of on fresh or updated content, and on large sites that is the difference between new pages getting indexed this week or next month. Third, chains dilute link signals. While Google says PageRank passes through redirects, every extra hop is another opportunity for something to break or for value to leak, and internal links are how you distribute authority across your own pages. Making them travel through three hops to arrive is self sabotage.
Chain, loop, and clean, side by side
| Scenario | Hops | Resolves? | SEO impact |
|---|---|---|---|
| Clean internal link | 0 | Yes, 200 | None, ideal |
| Single redirect | 1 | Yes | Minor, tidy it up |
| Redirect chain | 2 or more | Eventually | Wasted budget, diluted signals |
| Redirect loop | Infinite | Never | Page dead, drops from index |
How to detect it
Screaming Frog is the workhorse. After a crawl, open Reports > Redirects > Redirect Chains, which exports every chain with each hop, the number of redirects, and whether it ends in a loop. The Redirect URL and status columns tell you the story per URL. Sitebulb surfaces the same under its redirect hints and draws the chains visually, which helps when you are explaining it to a client. For a single URL, curl -sIL https://example.com/page prints the full hop sequence; if it never terminates or you see the same URL twice, that is your loop. Search Console's Page Indexing report will also list URLs excluded with a "Redirect error," which is often a loop or an over long chain.
How to fix it, step by step
For a loop, break the circle first: find the two or more rules pointing at each other (grep your .htaccess, Nginx config, redirect plugin, or CDN rules for the URLs involved) and delete or correct the rule that closes the loop so the chain ends on a real 200. For chains, the durable fix is to collapse them: update each redirect so it points straight at the final destination rather than the next hop, turning A to B to C to D into A to D and B to D. Then, and this is the part people skip, fix the internal links themselves. Update your navigation, templates, and body links to point at the final URL directly so nobody has to follow a redirect at all. A find and replace across your CMS or database on the old URLs handles most of it. Re crawl to confirm zero chains and zero loops remain.
Do and don't
- Point internal links at the final 200 URL, not a redirect
- Collapse chains so each old URL redirects once, straight to the end
- Audit redirects before and after any migration or URL change
- Run the Redirect Chains report on a schedule, not just once
- Break loops at the config layer, then verify with curl
- Stack a new redirect on top of an old one instead of updating it
- Leave internal links pointing at URLs you already know redirect
- Let two systems (server plus plugin plus CDN) each redirect the same path
- Assume a working browser means no loop; crawlers stop sooner
- Fix the redirect but forget the links that feed it
FAQ
How many hops before Google gives up?
Do redirect chains lose link equity?
What usually causes an internal loop?
Is it enough to fix the redirects and leave the links?
Chains and loops hide in template links and stacked rules that nobody remembers writing. An audit maps every hop and hands you the exact links to fix. Book an advanced SEO audit and get your internal redirects untangled.
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.







