A redirect loop occurs when a URL redirects to another URL that eventually redirects back to the original, creating an infinite chain that never resolves.
Web developers or SEO professionals reading about server configuration and crawl errors.
01What it is and how it works
An HTTP redirect (3xx status) tells a client to request a different URL. If the target URL later issues a redirect that points back — directly or through a series of intermediate URLs — the client follows the chain indefinitely. Browsers and crawlers stop after a configurable hop limit (often 20) and report a redirect loop error. The loop can be caused by mis‑configured server rules, CMS plugins, or conflicting canonical tags.
When a page sends you to another page that sends you back, the browser keeps looping forever.
02What to do about it
First, map the redirect chain with a tool like curl -I -L or the Network tab in DevTools. Identify the URL that points back to an earlier step. Then edit the server configuration, .htaccess, or CMS redirect manager to break the cycle — usually by removing the offending rule or changing the destination to a final 200 OK page. After the fix, re‑crawl the URL to confirm a single redirect or none at all.
03How it is measured or noticed
Search Console’s Coverage report flags “Redirect error” for URLs that exceed the hop limit. Server logs show repeated 301/302 responses for the same request IP. Lighthouse and PageSpeed Insights also surface a “Redirects” audit that lists the chain length. Monitoring tools that track crawl depth will report a sudden spike in crawl errors when a loop appears.
04Common mistakes
- Adding a site‑wide redirect to a new domain while the old domain still redirects back to the new one.
- Using a plugin that forces HTTPS and another that forces HTTP on the same path.
- Setting a canonical tag that points to a URL which itself redirects to the original page.
05Limits
A redirect loop is distinct from a long but finite redirect chain (e.g., legacy URL → new URL → final page). It also differs from a soft 404 where a page returns 200 but shows an error message. The concept applies only to HTTP‑level redirects; meta refresh or JavaScript location changes are not counted as redirect loops by crawlers.
06Worked example
curl -I -L https://example.com/old-pagereturns:
HTTP/1.1 301 Moved Permanently
Location: https://example.com/new-page
HTTP/1.1 301 Moved Permanently
Location: https://example.com/old-page
... (repeats until hop limit)
Frequently asked questions
How does a redirect loop differ from a long but finite redirect chain?
A redirect loop creates an infinite cycle that never resolves, while a long but finite chain has a clear endpoint. Search engines may abandon URLs in a loop, but they typically follow finite chains to the final destination. The distinction matters because loops break crawlers, whereas long chains may only slow them down.
Should I fix a redirect loop immediately, or can it wait?
Yes, fix it immediately. A redirect loop prevents users and search engines from accessing the target page, leading to lost traffic and indexing issues. Delaying repairs risks permanent exclusion from search results.
How do I detect a redirect loop using curl or browser tools?
Use curl -I -L to follow redirects and watch for repeated URLs or a 'too many redirects' error. In browser DevTools' Network tab, look for URLs cycling endlessly. Both methods reveal the chain's structure and identify where the loop begins.
Can a redirect loop still work in modern browsers?
No, modern browsers enforce a maximum redirect limit (typically 20 hops) and will display an error instead of following an infinite loop. This prevents resource exhaustion but breaks user access to the intended content.
What happens if I ignore a redirect loop on my site?
Users encounter errors, and search engines may deindex affected pages. Traffic drops as visitors cannot reach the content, and Google's Coverage report flags these as 'Redirect error' entries, harming SEO performance.
How long before Search Console flags a redirect loop?
Search Console typically detects and reports redirect loops within 24 to 48 hours after the loop is created. The Coverage report will show 'Redirect error' for affected URLs, allowing you to prioritize fixes.
Asked out loud
spoken, not typedThe same term in the words somebody uses speaking to an assistant rather than typing into a box — written from the situation, which is why each one carries the situation it came from.
Yes, you need to fix it now. Use a mobile-friendly tool like Screaming Frog or online redirect checkers to map the chain and identify where it loops back. Breaking the cycle restores access immediately.
It means their URL is stuck in an infinite redirect cycle, preventing users from reaching the page. I'd check the redirect chain with curl or DevTools to pinpoint the loop's origin and suggest fixing the misconfigured redirect.
Yes, use curl -I -L in your terminal or the Network tab in browser DevTools to trace the redirect path. If the same URL repeats or you hit an error, you've got a loop that needs immediate correction.