What Is Redirect Loop?
A redirect loop is a misconfiguration in which redirects point back to a URL already in the sequence, so a request cycles endlessly and never reaches real content. Browsers abort with a “too many redirects” error, and Google Search Console reports the affected page as a redirect error and excludes it from indexing.
- A redirect loop never resolves: URL A redirects to B, which redirects back to A, and the cycle repeats until the client gives up.
- Google Search Console lists a redirect loop as one of four causes of a ‘Redirect error’, alongside a chain that is too long, a URL exceeding max length, and a bad or empty URL in the chain.
- Browsers halt the cycle and show an error such as ERR_TOO_MANY_REDIRECTS rather than looping forever, so a looping page serves no content to anyone.
- Because no page is ever returned, a looping URL cannot be crawled, indexed, or ranked — it is a total availability failure, not a ranking penalty.
How a Redirect Loop Works
A redirect loop is a redirect chain that never ends. In a normal chain, each hop moves a request closer to a real page and the sequence eventually terminates at a 200 OK response. In a loop, one of the redirects points back to a URL that is already earlier in the sequence, so the request is sent in a circle: URL A redirects to B, and B redirects back to A, which redirects to B again. No hop ever returns actual content, so the cycle would run forever if nothing stopped it.
Clients do stop it. Browsers keep a running count of redirects for a request and, once the count grows unreasonable, abort with an error rather than loop indefinitely — Chrome shows ERR_TOO_MANY_REDIRECTS, and other browsers display equivalent “redirected you too many times” messages. The practical result is the same everywhere: the visitor sees an error page, not your content. Because a search crawler behaves the same way, a looping URL is completely unreachable. It cannot be crawled, so it cannot be indexed, so it cannot rank. This is an availability failure, not a ranking penalty — the page is simply gone as far as the web is concerned.
Google names the condition explicitly. In the Search Console Page indexing report, “Redirect error” is triggered by one of four problems, and a redirect loop is one of them. The other three — a redirect chain that was too long, a redirect URL that eventually exceeded the maximum URL length, and a bad or empty URL in the redirect chain — sit in the same bucket, all describing redirects that fail to deliver real content.
What Causes a Loop, and How to Break It
Loops are almost always born from redirect rules that each look correct alone but contradict each other when combined. The usual suspects:
- HTTP vs HTTPS conflict — one rule forces every request to HTTPS while another, elsewhere in the stack, forces HTTP. The two bounce a request back and forth.
- www vs non-www conflict — a CDN or edge rule forces the
wwwhost while the origin server forces the bare domain, or vice versa. - CMS canonical vs server rewrite — a CMS emits its own canonical redirect that disagrees with a hand-written server rewrite rule.
- Trailing-slash disagreement — one layer appends a trailing slash and another strips it, ping-ponging the URL.
The reason these slip through is that each rule is individually reasonable and often lives in a different config layer — server, CDN, and application — so the collision only appears in production where all three run together. The fix is diagnostic, not clever: request the URL with a tool that prints each hop’s status code and Location header, watch where the sequence turns back on itself, and remove or reorder the rule causing the reversal. After correcting the rules, clear any caches, since cached redirect responses can keep serving the loop even after the underlying configuration is fixed.
Example of a Redirect Loop
A textbook loop comes from two well-meaning canonicalization rules that disagree. Suppose the origin server is configured to force the bare domain, so it redirects any www request back to the apex:
https://www.example.com/page— 301 tohttps://example.com/page
Meanwhile, a CDN sitting in front of the site is configured to force www, so it does the reverse:
https://example.com/page— 301 back tohttps://www.example.com/page
Now trace a single request. It arrives at the www URL, the origin sends it to the apex, the CDN sends it back to www, the origin sends it to the apex again, and the cycle repeats. The browser counts the redirects, gives up, and prints ERR_TOO_MANY_REDIRECTS. Googlebot hits the same wall, and Search Console files the URL under “Redirect error” as a redirect loop, excluding it from indexing. Neither rule is wrong by itself — the site simply cannot enforce www and non-www at the same time. Pick one canonical host, make every layer agree on it, and the loop resolves into a clean single hop.
A redirect loop is one of the few SEO problems that is genuinely all-or-nothing: the page returns zero content to every visitor and every crawler, no exceptions. The causes are almost always conflicting rules that each looked correct in isolation — an HTTPS rule and an HTTP rule that disagree, a CDN forcing www while the origin forces non-www, or a CMS canonical redirect fighting a server rewrite. Because each rule is fine on its own, the loop only appears where they collide, which is why it so often slips past local testing and only surfaces in production. When I hit one, I stop guessing and trace the actual response headers hop by hop with a request tool; the loop is always obvious the moment you can see the two rules pointing at each other.
Frequently Asked Questions
What causes a redirect loop?
How does a redirect loop affect SEO?
How do I fix ERR_TOO_MANY_REDIRECTS?
Is a redirect loop the same as a redirect chain?
The Bottom Line
A redirect loop is a redirect that eats its own tail — the URLs point back at one another so a request circles forever and no page is ever delivered. Browsers cut it off with a “too many redirects” error and Google reports it as a redirect error, dropping the page from its index. There is no partial version of this failure: fix the conflicting rules that feed the loop, or the page stays invisible to users and search alike.
Sources
- Page indexing report — Redirect error — Google Search Central
- How Google handles redirects for Search — Google Search Central
Roborank crawls your site and flags redirect loops the moment they appear, so a conflicting rule doesn’t quietly pull a page out of Google’s index.
Catch redirect loops →Rank & Cash — the weekly SEO breakdown
One practical teardown a week on ranking in search and getting cited by AI. No fluff.
