What Is ERR_TOO_MANY_REDIRECTS?
ERR_TOO_MANY_REDIRECTS is a browser error meaning a page keeps sending the visitor to another URL in an endless loop, so the browser gives up. Instead of loading, the site bounces between addresses, such as http redirecting to https and https redirecting back to http. Common causes include a misconfigured SSL setting, conflicting WordPress or CDN redirect rules, a wrong site URL, or bad cookies. Chrome shows it as 'This page isn't working' with the code ERR_TOO_MANY_REDIRECTS; other browsers describe a redirect loop.
- What it is
- A redirect loop the browser stops after too many hops between URLs
- Typical trigger
- Conflicting HTTP-to-HTTPS or www/non-www redirect rules
- Loop limit
- Browsers cap redirects (Chrome around 20) then abort (Chromium behavior)
- Frequent on
- WordPress sites with mismatched Site URL settings or a plugin conflict (WordPress.org)
- Also caused by
- Corrupted cookies, wrong Cloudflare SSL mode, or a bad .htaccess rule
What a redirect loop actually is #
ERR_TOO_MANY_REDIRECTS appears when a web page keeps forwarding the visitor to another address, which forwards back again, forming a loop with no end. A redirect is a normal instruction that tells the browser 'this page moved, go here instead.' Used correctly, redirects send visitors from an old URL to a new one or from an insecure address to a secure one. The error happens when two or more rules disagree and point at each other, for example a rule that forces every http request to https while another rule forces https back to http. The browser follows the chain a fixed number of times, then stops to protect you from an infinite loop and shows the error instead of loading anything. Because nothing renders, the site looks completely broken to visitors even though the underlying content is intact. The fix is always to find and untangle the conflicting rules, and stubborn cases are a common reason owners reach for our /services/website-rescue page.
How the browser detects the loop #
Browsers do not follow redirects forever. Each time a server answers with a redirect status such as 301 or 302, the browser records another hop and requests the new location. After a set number of hops, typically around twenty in Chrome, it decides the chain will never resolve and aborts with ERR_TOO_MANY_REDIRECTS rather than looping endlessly. You can see the loop yourself in the browser's developer tools under the Network tab, where the same one or two URLs repeat with 301 or 302 status codes over and over. That repeating pattern is the signature of the problem and tells you which addresses are fighting.
GET https://example.com/ 301 -> http://example.com/
GET http://example.com/ 301 -> https://example.com/
GET https://example.com/ 301 -> http://example.com/
... repeats until the browser gives up: ERR_TOO_MANY_REDIRECTSSSL and HTTPS misconfiguration #
The single most common cause is a clash between how your site and a proxy handle secure connections. A classic example involves Cloudflare set to 'Flexible' SSL: Cloudflare talks to visitors over https but connects to your origin server over http, while your server has a rule forcing everything to https. The server sends the request back to https, Cloudflare downgrades it to http again, and the loop begins. Setting the SSL mode to 'Full' or 'Full (strict)' so both legs use https usually clears it. Similar loops appear when a server-level https redirect duplicates one already added by a plugin or load balancer. Because a valid certificate and consistent secure handling underpin the whole site, getting SSL configured correctly is part of the work on our /services/website-security page. When you change SSL settings, always clear your cache and test in a private window, since the browser may keep replaying the old loop from a stored redirect until the cache is emptied.
WordPress causes and fixes #
WordPress sites hit this error often, usually because the two address settings disagree. If the WordPress Address and Site Address fields, or the equivalent WP_HOME and WP_SITEURL values, mix http with https or www with non-www, WordPress can redirect requests in a circle. Correcting both to the exact same protocol and hostname resolves many cases. Redirect and SSL plugins are another frequent source: two plugins each enforcing https, or a caching plugin serving a stale redirect, can loop against each other. The safe diagnostic is to deactivate redirect, security, and caching plugins one at a time until the loop stops, which identifies the culprit. A malformed rule in the .htaccess file can do the same, so regenerating a clean rewrite block helps. Because these settings interact in subtle ways, ongoing WordPress maintenance matters, and our /services/wordpress-development page covers configuring redirects, SSL, and plugins so they cooperate instead of fighting, which is the difference between a one-time fix and a recurring outage.
Cookies and browser-side triggers #
Not every redirect loop lives on the server. Sometimes a corrupted or conflicting cookie stored in your browser tells the site you are in a state that triggers a redirect, and the site responds by redirecting again, looping only for you while other visitors load the page fine. This is common with login or region-selection cookies that have gone stale. The quick test is to open the site in a private or incognito window, which starts with no cookies; if it loads there, a cookie is the cause. Clearing cookies for that specific domain, rather than your whole history, then reloading usually fixes it. Because this version of the error affects only certain visitors, owners can wrongly assume the site is healthy when a segment of their audience is stuck. When reports are inconsistent across users, suspect cookies before rewriting server rules, and confirm whether the site actually responds from the outside using /tools/website-down-checker before making sweeping changes to live configuration.
www vs non-www and trailing-slash loops #
Redirects that normalize your address are healthy until two of them disagree about the destination. Many sites choose a single canonical form, such as https://www.example.com, and redirect the other variants to it. A loop starts when one rule forces www while another forces non-www, or when a trailing-slash rule and a no-trailing-slash rule point at each other. The browser bounces between example.com and www.example.com, or between /page and /page/, until it aborts. The fix is to pick one canonical hostname and one slash convention, then make sure every layer, the server, the CMS, the CDN, and any redirect plugin, agrees on the same target with no contradictory rule. Consolidating redirects like this also matters during a move between domains or platforms, where legacy rules often collide with new ones. That careful mapping is a core part of our /services/website-migrations page, because a botched redirect map is one of the most common ways a migration knocks a previously working site offline.
How to diagnose it step by step #
Work from the outside in. First, reproduce the error and open developer tools' Network tab to see exactly which URLs repeat and whether they use 301 or 302; the repeating pair names the conflict. Next, test in an incognito window to rule cookies in or out. If a proxy like Cloudflare sits in front, check its SSL mode and set it to Full so it does not downgrade https to http. Then inspect your CMS address settings, ensuring the protocol and hostname match exactly. Deactivate redirect, SSL, and caching plugins one at a time to isolate a software conflict, and review .htaccess or server config for duplicate https or www rules. Clear all caches after every change, because stale redirects keep replaying the old loop. Document each rule you find so you can rebuild a single clean chain rather than layering new fixes on top of the broken ones, which is how loops quietly return weeks later after a seemingly successful repair.
Why redirect hygiene matters beyond this error #
Fixing one redirect loop is worth it, but the deeper lesson is that messy redirects cause problems well beyond this single error. Every extra hop in a redirect chain adds a round trip that slows the page, and long chains can dilute the ranking signals passed from an old URL to a new one, quietly weakening SEO. Redirects that loop, chain, or point at outdated destinations also confuse crawlers and waste crawl budget on a large site. The healthy standard is that any URL should reach its final destination in a single, deliberate redirect, with one clear rule per canonical form rather than overlapping rules layered across the server, CMS, and CDN. Auditing your redirects periodically catches drift before it becomes a loop or a speed drag. Because redirect performance directly affects load times, tidy redirects support the work on our /services/speed-optimization page, where removing unnecessary hops is one of the simplest ways to make a site feel faster without touching its content or its design at all.
Preventing redirect loops going forward #
The durable fix is to keep your redirects simple, deliberate, and in one place. Decide on a single canonical URL, choosing http or https and www or non-www once, and enforce it with exactly one rule rather than several overlapping ones across the server, CMS, and CDN. Use a valid SSL certificate and a matching secure mode end to end so no layer downgrades the connection. Avoid stacking multiple redirect and security plugins that each think they own the https rule. When you launch a redesign or change domains, map old URLs to new ones as a flat list with no chains that fold back on themselves. Test the whole set in a private window before and after going live. Regular maintenance catches drift before it becomes an outage, which is part of what a care plan on our /services/care-plans page provides, and if a loop ever does take the site down, an external check at /tools/website-down-checker confirms whether visitors are truly blocked before you start changing configuration.
FAQ
What does ERR_TOO_MANY_REDIRECTS mean?
It means a page keeps forwarding the browser to another address in an endless loop, so the browser gives up rather than looping forever. Most often two redirect rules disagree, such as http forcing to https while https forces back to http. The result is a page that never loads even though its content is intact.
How do I fix a redirect loop on my website?
Open developer tools to see which URLs repeat, then check your SSL mode, CMS address settings, and redirect plugins. Set any proxy like Cloudflare to Full SSL, make the site URL protocol and hostname consistent, and disable conflicting plugins one at a time. Clear all caches after each change and retest in a private window.
Why does the loop only happen for me and not others?
That points to a corrupted or stale cookie stored in your browser rather than a server fault. The cookie tells the site you are in a state that triggers a redirect, and it redirects again. Open the site in an incognito window; if it loads, clear cookies for that specific domain and retry.
Does Cloudflare cause ERR_TOO_MANY_REDIRECTS?
It can, when its SSL mode is set to 'Flexible.' Cloudflare then serves visitors over https but talks to your server over http, while your server forces https, creating a loop. Changing the SSL mode to 'Full' or 'Full (strict)' so both connections use https usually resolves it after you clear the cache.
Can a WordPress plugin cause a redirect loop?
Yes. Two plugins each forcing https, a caching plugin serving a stale redirect, or a security plugin's rule clashing with a server rule can all loop. Deactivate redirect, SSL, and caching plugins one at a time until the loop stops to identify the culprit, then keep only one rule enforcing your canonical URL.
How many redirects are too many?
Browsers follow a limited number of redirects, roughly twenty in Chrome, before aborting with the error. In practice any genuine chain longer than two or three hops is a design problem. Healthy sites resolve to their final URL in a single redirect, so a long chain signals conflicting rules that should be consolidated into one.
How Local Web Advisor checks this for you
Is your own website getting web tech right?
Our free AI audit scans your site and tells you — in plain English — exactly what to fix for web tech and seven other areas, with the business impact and the fix for each. No login needed to start.
Run my free website audit →Was this helpful?