SEO glossary

What is a Redirect Loop?

Learn what redirect loops are, how A→B→A cycles block Googlebot, common causes in HTTPS and www rules, and debugging steps to break loops without breaking SEO.

Technical SEOUpdated August 14, 2026
Also known asinfinite redirectcircular redirectredirect cycle

Definition

A redirect loop occurs when a series of HTTP redirects cycles back to a previous URL in the chain—such as A redirecting to B and B redirecting to A—preventing clients and crawlers from ever reaching a final 200 OK response.

Redirect loop: crawlers trapped in endless redirects

A redirect loop is a cycle in the redirect graph: URL A redirects to B, B redirects to C, and eventually a URL redirects back to A—or directly B → A. No 200 OK destination exists. Browsers show "too many redirects"; Googlebot logs crawl errors and abandons the fetch.

Loops are more severe than redirect chains. Chains eventually deliver content after wasteful hops. Loops deliver nothing—blocking indexing, wasting crawl budget, and stranding external link equity at a dead transport layer.

Loop vs chain

Chain (terminates):
A → B → C → 200 OK

Loop (never terminates):
A → B → A → B → A → ... (failure)

Some loops involve three nodes:

http://example.com → https://www.example.com → http://example.com → ...

Classic loop patterns

HTTP ↔ HTTPS conflict

Origin forces HTTP while CDN forces HTTPS:

http://example.com/page
  → 301 https://example.com/page  (edge)
  → 301 http://example.com/page   (origin insecure redirect)
  → loop

Fix: origin must accept HTTPS or edge must not redirect back—single policy on HTTPS canonical host.

www ↔ apex ping-pong

https://www.example.com → 301 https://example.com
https://example.com → 301 https://www.example.com

Marketing chose apex; legacy CMS chose www—both issue 301 Redirect.

Trailing slash oscillation

/blog/post → 301 /blog/post/
/blog/post/ → 301 /blog/post

Apache and nginx slash rules duplicated inversely.

/page → 302 /en/page → 302 /page when geo cookie resets—302 Redirect loop invisible to single-region tests.

Load balancer health redirect

Unhealthy pool redirects to maintenance host; maintenance redirects back to primary—loop during partial outage.

CMS canonical plugin + server rule

Plugin redirects to "canonical" slug; server redirects bare slug to prefixed path—cycle on every product URL.

SEO impact

Complete fetch failure

No HTML to render or index. URL stuck in error state—worse than 404 Error where at least status is honest terminal.

Crawl error reports

Search Console may show "Redirect error" or failed fetch. Spikes after CDN rule changes warrant immediate loop audit.

Equity stranded

Backlinks to looped URL pass nothing to indexable destinations until loop broken and 301 Redirect points to stable 200 OK target.

Sitewide risk

Loops on:

  • / homepage
  • robots.txt path
  • Global host redirect rules

can near-stop host crawling—catastrophic during peak season.

Distinction from 502 Bad Gateway

Proxies may return 502 when redirect depth exceeds internal limits—symptom looks like gateway failure; root cause is loop.

Detecting redirect loops

curl with redirect limit

curl -v -A "Googlebot" -L --max-redirs 5 -o /dev/null \
  'http://www.example.com/' 2>&1 | grep -E '< HTTP|< Location'

Repeating Location pairs indicate loop.

Browser devtools

Network tab—watch redirect count climb until failure.

Crawl graph cycle detection

Algorithms mark strongly connected components in redirect graph—loops appear as cycles, not trees.

Compare user-agent and region

Some loops trigger only for Googlebot or specific PoPs—reproduce with matching UA and CDN trace headers.

Breaking loops without SEO collateral damage

Choose one canonical host policy (apex or www, HTTPS only, slash convention). Enforce in a single layer—CDN or origin—not both. Remove opposing CMS rules. Verify every template returns ≤1 hop to 200 OK, then request Search Console recrawl on key URLs.

Example: dual CDN migration loop

shop.example added second CDN for DDoS protection. Outer CDN HTTPS → inner CDN HTTP → origin HTTPS → outer HTTP—four-node loop on assets and HTML.

Symptoms:

  • 60% Googlebot fetch failures sitewide
  • Revenue drop correlating with migration—not algorithm

Fix: end-to-end TLS on single redirect hop to canonical HTTPS host; inner CDN origin pull HTTPS only; removed origin HTTP downgrade. Crawl errors normalized within 72 hours; indexation rate recovered over three weeks.

Fix server rules first; then update internal links still pointing at loop entry URLs—otherwise crawlers keep queueing doomed fetches from crawl paths you control.

How Crawlox helps with redirect loops

Crawlox detects cycles in redirect graphs during authorized crawls—flagging URLs that never reach 200 OK. Visualize opposing 301 Redirect rules between host variants, trace loop entry points from internal links, and validate post-fix crawls show a single hop (or direct link) to indexable destinations without "too many redirects" failures blocking Googlebot.

Related terms

Frequently asked questions

How does Google handle redirect loops?

Googlebot cannot retrieve a final document. The URL fails as a crawl error—no indexing update—and may appear as redirect error in Search Console.

Why do browsers say 'too many redirects'?

Browsers cap redirect follows (often ~20). A loop hits the cap and aborts—the same failure crawlers experience without a user-facing message.

Can a redirect loop affect my whole site?

If homepage or global host rules loop, sitewide crawling stops. A loop on one obscure path only blocks that URL and inbound links to it.

How do I find the loop?

Trace redirects with curl -v -L, browser devtools network tab, CDN redirect logs, and crawl tools that detect cycles in redirect graphs.

Is a loop worse than a long redirect chain?

Loops are total failure—zero content. Long chains still may reach 200 OK eventually but waste budget. Both need fixes; loops are urgent.

References

Explore authoritative guidance and frameworks related to redirect loop.

Explore every glossary definition

Return to the glossary to search by term, alias, starting letter, or category.

Browse glossary