Skip to content

Redirect loop

Also called infinite redirect, too many redirects, ERR_TOO_MANY_REDIRECTS

What is a redirect loop?

A redirect loop happens when a chain of redirects points back to a URL it has already visited, for example A → B → A, so the browser or crawler never reaches a page that loads. Browsers stop after a set number of hops and show an error such as Chrome’s ERR_TOO_MANY_REDIRECTS. Search engines cannot index the URL.

Two robots walk on a mobile screen path, passing through a ring with two parallel bars, illustrating a redirect loop.

Loops are usually caused by conflicting rules: an HTTP-to-HTTPS rule on the server fighting a CDN that talks to the server over HTTP, a www rule and a non-www rule both active, a trailing-slash rule that undoes another, or a CMS redirect that clashes with one in the server config.

Why redirect loop matters for SEO

A loop makes a page completely unreachable for everyone. If it affects the homepage or a template, the whole site can drop out of search once Google recrawls it, and visitors see an error instead of your content.

Because loops often appear right after a migration, an HTTPS change or a CDN setup, they are one of the first things to check when traffic falls off a cliff.

How to fix a redirect loop

  1. Trace the hops with curl -IL https://example.com/page or a redirect checker to see exactly which URLs repeat.
  2. Find the rules responsible: server config, .htaccess, CMS settings, plugins and CDN rules can all issue redirects.
  3. With a CDN in front of an HTTPS site, make sure the CDN connects to your server over HTTPS (Cloudflare’s "Full" or "Full (strict)" SSL mode, for example) so the server does not keep redirecting it.
  4. Remove the conflicting rule so each URL redirects once, straight to its final version.
  5. Clear caches and test again in a private window, since browsers cache 301s.

Redirect loop example

The server redirects http://example.com to https://example.com. The CDN in front of it fetches pages from the server over plain HTTP, so every request from the CDN gets that redirect again, and the visitor bounces between the two forever.

Redirect loop FAQ

What causes ERR_TOO_MANY_REDIRECTS?

A redirect loop: two or more rules keep sending the browser between the same URLs. Common causes are conflicting HTTPS, www or trailing-slash rules, and CDN SSL settings.

Can Google index a page in a redirect loop?

No. Googlebot never reaches content, so the URL is reported as a redirect error in Search Console and is not indexed.

Related SEO terms

  • Redirect chain

    A redirect chain is when a URL redirects to another URL that redirects again, so it takes two or more hops to reach the final page.

  • 301 redirect

    A 301 redirect permanently sends visitors and search engines from one URL to another and tells Google the new URL should be indexed.

  • 302 redirect

    A 302 redirect temporarily sends visitors to another URL while telling search engines to keep the original URL indexed.

  • HTTPS

    HTTPS is the encrypted version of HTTP. It protects data between browser and site, and Google uses it as a lightweight ranking signal.

  • CDN (content delivery network)

    A CDN (content delivery network) is a network of servers around the world that caches and serves your site from locations close to each visitor.

  • HTTP status codes

    HTTP status codes are three-digit numbers a server returns with each response to say whether a request worked, moved or failed.

Back to the SEO glossary

Put the terms to work

Every term here is something OpenSEO measures. It is open source: start online in a minute, or run it on your own server.