How to Fix Redirect Loops

You click a link, or a page you've visited a hundred times before, and instead of loading you get "This page isn't working" or "Too many redirects." The browser keeps spinning, never actually landing anywhere. It feels like the site is broken — but it isn't, not in the way it looks.

What's actually happening is a redirect loop: one URL is telling the browser to go to another URL, which is telling it to go back to the first one (or somewhere that eventually leads back to it). The browser just keeps following instructions that never end. Once you can see the loop, fixing it is usually a matter of correcting one conflicting rule, not rebuilding anything.

Quick Answer

A redirect loop happens when two or more redirect rules point back to each other instead of ending at a real page. To fix it, trace the full redirect chain with a checker tool to find the repeating URL, then correct the conflicting rule — usually in your .htaccess file, CMS redirect settings, or CDN/HTTPS configuration — so the chain ends instead of circling back.

What is a redirect loop?

A redirect loop is a chain of HTTP redirects that never resolves to a final, loadable page. Instead, the last URL in the chain points back to a URL that's already appeared earlier in the sequence, so the browser keeps following redirects until it hits its limit and gives up with an error.

The practical takeaway: a redirect loop is a routing problem between two or more rules, not damage to the page. Find the repeated URL in the chain, and you've found the fix.

Why redirect loops matter

A redirect loop isn't just an inconvenient error message — it has real consequences for both visitors and search engines:

📊 Quick stat Most redirect loops trace back to just one conflicting rule out of dozens — the fix is almost always small once the exact repeating URL in the chain has been identified.

Step-by-step: finding and fixing a redirect loop

  1. Confirm it's actually a loop. Reload the URL in a fresh private/incognito window first, since a cached redirect in your regular browser can look identical to a live loop.
  2. Trace the full redirect chain. Run the URL through a redirect checker tool that lists every hop in order with its status code, rather than guessing from the error message alone.
  3. Find the repeating URL. The URL that shows up twice in the chain is where the loop closes — everything before it is a normal redirect, everything from there on is the loop.
  4. Identify which layer set that rule. Check, in order: your .htaccess or server config, your CMS's redirect or SEO plugin settings, and your CDN or reverse proxy's HTTPS/WWW rules — the conflict is usually between two of these.
  5. Correct the conflicting rule, don't just delete it. Adjust the rule so it redirects to the intended final URL instead of back into the chain, keeping the original intent (like enforcing HTTPS) intact.
  6. Clear caches before retesting. Purge CDN and browser cache, since an old redirect rule can keep serving from cache even after the underlying config is fixed.
  7. Re-run the checker to confirm a single, clean chain. The URL should now resolve in one or two hops to a real 200-status page, with no repeated URLs anywhere in the sequence.
Try the Rebrixe Redirect generator — free Paste a URL, see the links. No sign ups , no accounts , no tracking.
Generate Redirects →

Common mistakes that create redirect loops

1. Forcing HTTPS at two layers that disagree

A CDN or load balancer that forces HTTPS, paired with an origin server that separately forces HTTP (or the reverse), is one of the most common causes — each layer keeps sending the request back to the other.

2. Stacking WWW and non-WWW rules in opposite directions

If one rule redirects the non-WWW version to WWW, and another rule (often added later, by a different person or plugin) redirects WWW back to non-WWW, the two rules cancel each other into a loop.

3. Running two redirect plugins or settings at once

A CMS-level redirect setting and a separate SEO or caching plugin can both try to manage the same URL, each unaware of the other's rule, producing a loop neither one alone would cause.

4. Trusting a cached result instead of a fresh one

Testing a fixed redirect in the same browser tab that's already cached the old, looping version can show the loop as "still broken" even after the server-side fix is correct.

💡 Pro tip Keep a simple list of every place a redirect rule can live for your site — server config, CMS, CDN — so the next loop only takes a quick check of three spots instead of a guessing game.

Real-world examples

How different redirect loops actually show up, and where the fix usually lives:

Migrated site
HTTP ↔ HTTPS loop
2-layer conflict
CDN forces HTTPS while the origin server's old config still forces HTTP, sending every request back and forth.
Rebranded domain
WWW ↔ non-WWW loop
Two opposing rules
An old .htaccess rule redirects to WWW while a newer CMS setting redirects back to non-WWW.
WordPress site
Plugin conflict loop
Silent overlap
A caching plugin and an SEO plugin each add their own redirect for the same URL, unaware of each other.
Just-fixed site
Phantom cache loop
Fix looks broken
Server config is already corrected, but a stale CDN or browser cache keeps serving the old looping rule.

In every case, the loop wasn't random — it was two rules, set at different times or by different tools, each unaware the other existed.

Types of redirect loops compared

A quick reference for the most common loop patterns, what usually causes them, and how hard each one typically is to fix.

Loop type Common cause Fix difficulty Where to look first
Self-redirect loop A rewrite rule reapplies to its own output Usually easy Server config / .htaccess
Two-way ping-pong loop Two rules each redirect to the other's source Moderate CMS redirect settings + server config
Chain-then-loop A long chain eventually points back to an earlier hop Moderate Full redirect chain trace, hop by hop
Cache-based phantom loop Server config is fixed but CDN/browser cache is stale Usually easy CDN purge + private browser window

Check your redirects right now — free

The Rebrixe Redirect Checker follows every hop of a URL's redirect chain, shows the status code at each step, and flags the exact point where a loop closes — so you're fixing the real cause instead of guessing.

Free Redirect Generator Paste a URL, see the links. No sign ups , no accounts , no tracking.
Open Redirect Generator →

Frequently asked questions

A redirect loop happens when a URL redirects to another URL that eventually redirects back to the original URL (or to itself), so the browser keeps following redirects and never reaches a page that actually loads.
Browsers cap the number of redirects they'll follow for a single request. Once that cap is hit without landing on a final page, the browser stops and shows a "too many redirects" or "redirect loop" error instead of loading the site.
The most common causes are conflicting HTTP-to-HTTPS rules, a CDN or proxy forcing HTTPS while the origin server forces HTTP, mismatched WWW and non-WWW rules, or two plugins/settings each redirecting the same URL in opposite directions.
Yes. A CDN, proxy, or browser can cache an old redirect rule, so the loop keeps happening even after the underlying server config is fixed, until the cache is purged and the browser is tested in a fresh, private window.
Yes. A looping URL can't be crawled or indexed, wastes crawl budget, breaks internal links pointing to it, and shows visitors an error page, which increases bounce rate and blocks any ranking value that page could otherwise earn.
A redirect checker tool that lists every hop in order, with its status code, shows exactly where the chain repeats — the URL that appears twice in the sequence is where the loop begins.
Only after checking why that rule exists. Deleting it might fix the loop but silently break an intended redirect from an old URL, so it's safer to correct the conflicting rule than to remove one at random.
The three most common places are the .htaccess or server config file, a CMS redirect or SEO plugin, and CDN or reverse proxy settings — a loop often forms when two of these three layers each try to enforce a different rule.

Generate redirect links in seconds

The Rebrixe Redirect Generator creates the correct redirect links for any URL — no account, no watermark, just paste a link and see the code.

Launch the Redirect Generator →
← Back to blogs