What Is a Redirect Loop? Causes & Fixes
A redirect loop is when URLs redirect to each other in a circle, so the browser gives up and shows an error. The page becomes unreachable for users and search engines alike.
Explain It Like I'm 5
A redirect loop is like two people each saying "no, ask HIM" forever. The browser walks in circles until it gets dizzy and gives up with an error page. Nobody ever gets an answer.
Understanding Redirect Loops
A redirect loop occurs when URL A redirects to URL B, and URL B redirects back to URL A (directly or through a chain). Browsers stop after roughly 20 hops and display ERR_TOO_MANY_REDIRECTS. Search engines similarly fail to fetch a final destination.
Common causes: HTTP-to-HTTPS rules that conflict with a plugin forcing HTTP back, a www versus non-www mismatch between the site address setting and redirect rules, caching layers serving stale redirect headers, and canonical tags that contradict the redirect direction.
In WordPress specifically, loops typically come from the site URL settings disagreeing with server redirect rules, or from cache plugins storing redirects that later conflict with changed settings.
Loops are urgent because the affected URL serves nothing at all: no content, no status a crawler can use, no user experience. It is functionally worse than a 404.
Types of Redirect Loop
Direct Loop (A to B, B to A)
Two URLs redirecting to each other.
Example: http://site.com redirects to https://site.com which redirects back to http://site.com.
Chain Loop (A to B to C to A)
A longer cycle through multiple URLs, often across www, HTTPS, and trailing-slash variants.
Example: site.com to www.site.com to https://www.site.com/ to site.com/.
Why Redirect Loops Matter
A loop takes a URL completely offline for users and crawlers. If the URL carries rankings or links, they go dark immediately until the cycle is broken.
Best Practices
Standardize One Canonical Host Format
Pick https and one of www or non-www, set it in WordPress and in server rules, and redirect everything else there once.
Clear All Cache Layers After Redirect Changes
Page cache, object cache, CDN cache, and browser cache can all replay stale redirects. Purge every layer when you change redirect rules.
Trace Before You Edit
Use curl -I or a redirect tracer to see the exact hop sequence. The loop is always one rule pointing backward; find it before touching anything else.
Align Canonical Tags With Redirects
If A redirects to B, the canonical on B must not point back to A. Contradictions between redirects and canonicals confuse crawlers.
Common Mistakes
Stacking redirect plugins and server rules
Fix: One layer should own redirects. If the server redirects, disable the plugin's redirect features and vice versa.
Fixing loops by deleting all redirects blindly
Fix: Trace the cycle first. Deleting working rules creates new 404 problems while the original conflict remains.
Forgetting CDN cache after a fix
Fix: The rule is fixed but the CDN keeps serving the loop. Purge everything, then retest in an incognito window.
How WPLink Helps Prevent Link Rot
WPLink's crawl records redirect chains and loops that internal links pass through, so a misconfigured rule shows up as a flagged link target instead of silently breaking pages.
Frequently Asked Questions
Related Articles
Ready to optimize your internal links?
Get started with WPLink today and see the difference.
Download WPLink