"Redirect error" in Search Console
Google followed a redirect from this URL and never arrived anywhere usable. Here is what breaks a redirect chain, and how to see the whole chain the way a crawler does.
This URL is not indexed and it should be. Something is in the way.
Is it still happening?
Paste the URL Search Console flagged. We follow the chain hop by hop without shortcuts and show you every status code and Location header along the way.
The full redirect path for this URL, where it loops, how long it is, and what status it finally lands on.
We request from one location, with no cookies and no session. A redirect that only fires for certain countries, devices, or signed-in users will look clean here and still trap Googlebot.
What this error actually means.
Google requested this URL, got a redirect, followed it, and the attempt failed. Not "the destination was disappointing". The chain itself did not resolve.
There are four ways that happens: the chain loops, it is longer than Google will follow, a hop points at something malformed or unreachable, or it ends on an error status. Google reports all four under one label, which is why the fix starts with seeing the chain rather than guessing.
A single clean redirect is not this error. If a URL 301s once to a working page, Google indexes the destination and reports the source as "Page with redirect", which is normal and needs no action.
5 things that produce this error.
Ordered by how often they turn out to be the cause, not by how obvious they look.
Two normalisation rules fighting each other
The classic loop. One layer enforces a trailing slash and another strips it, or one forces www and another strips it. Each rule is correct on its own; together they bounce forever. This is especially easy to create when a CDN, a web server, and an application framework each hold an opinion.
GET /about -> 301 /about/
GET /about/ -> 301 /about
GET /about -> 301 /about/ ...A chain that accumulated one hop at a time
HTTP to HTTPS, then non-www to www, then old path to new path, then a trailing-slash normalisation. Each was added by a different person solving a different problem, and none of them is wrong. Google follows a limited number of hops and gives up beyond that.
http://example.com/old
-> https://example.com/old
-> https://www.example.com/old
-> https://www.example.com/new
-> https://www.example.com/new/The chain ends on a 404 or a 5xx
The redirect works perfectly and points at something that no longer exists. Common after a migration where redirect rules were written from an old sitemap and the new URLs changed again afterwards.
A redirect that depends on who is asking
Geo-based, language-based, device-based, or cookie-based redirects. Googlebot mostly crawls from US IP addresses with no cookies and no session, so a rule that redirects unknown visitors to a country selector can trap it in a loop that no human ever experiences. This is the hardest variant to reproduce, because the site works fine in your browser.
A malformed Location header
A relative path that resolves incorrectly, a missing protocol, an unencoded character, or a redirect to a URL that fails DNS. The redirect status is returned, but the destination cannot be requested.
How to clear it.
Look at the full chain first
Do not fix a redirect you have not traced end to end. Every hop, its status code, and its Location header. Most chains turn out to contain a hop nobody knew about, added at the CDN or by a platform default.
curl -sIL https://example.com/page \
| grep -iE '^(HTTP|location)'Redirect to the final destination in one hop
Rewrite the rules so the original URL points straight at the URL you actually want indexed. When you move content, update the old redirect targets rather than chaining a new redirect onto the end of the previous one.
Resolve the conflict rather than adding another rule
For a loop, find the two rules fighting and delete one. Decide on a single canonical form for protocol, host, and trailing slash, enforce it in exactly one layer, and make every other layer pass through. A loop cannot be fixed by adding an exception; it is fixed by removing the second opinion.
Test as a crawler, not as yourself
If the chain looks clean in your browser but Google disagrees, the redirect is conditional. Request it with no cookies, from a plain client, and check whether a geo or locale rule fires. Personalisation rules should never apply to a crawler.
curl -sIL -A "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" \
https://example.com/page | grep -iE '^(HTTP|location)'Next to check.
LintPage rules covering this: canonical-url, meta-refresh-redirect
Questions, answered.
How many redirects will Google follow?
What is the difference between 'Redirect error' and 'Page with redirect'?
Do 302 redirects cause indexing problems?
Can a JavaScript or meta refresh redirect cause this?
Why does the redirect work in my browser but fail for Google?
Catch this one before Search Console does.
Search Console tells you weeks after the fact. LintPage runs 60 checks against a URL in about 30 seconds. Free, no signup.
run a full scan →