Redirect Chain Checker
Enter any URL and trace every hop to its final destination. See the status code and response time at each step, plus warnings for loops, long chains, protocol downgrades and 302s that should be 301s.
Short answer
A redirect chain is a URL that redirects to another URL that redirects again. One hop is normal, three or more has accumulated by accident. Chains cost you latency and crawl budget, and Google stops following after a handful of hops, so a page at the end of a long one may never be reached. Fix a chain by pointing every rule in it directly at the final destination. The two failures that matter more than length are loops, where the page becomes permanently unreachable, and 302s used for permanent moves, which keep the old URL indexed and stop the new one taking over.
What a redirect chain is, and where they come from
A redirect sends whoever requested one URL along to another. A single hop is completely normal and costs nothing worth worrying about. A chain is what you get when the destination redirects too, and then that one does as well.
Chains accumulate rather than appear. Each of these adds a layer, and almost nobody goes back to flatten the older ones:
- A move from http to https, which redirects every URL on the site
- A move between www and the bare domain, or the reverse
- A change of URL structure, such as dropping /blog/ from post paths
- A rebrand onto a new domain, redirecting the whole of the old one
- A CMS or platform migration that changes slugs
- A trailing slash policy applied after the fact
A site that has been through two of those routinely carries four-hop chains nobody on the team knows exist, because every individual change looked like one redirect at the time.
What a chain actually costs
The everyday cost of a chain is modest and the failure modes are not. It is worth separating the two, because chasing the wrong one wastes effort.
| Finding | Severity | What to do |
|---|---|---|
| Redirect loop | Critical | The page is unreachable for everyone. Find the two rules fighting each other and remove one |
| Chain of four or more hops | High | Point every rule directly at the final destination |
| 302 on a permanent move | High | Change to 301, then wait for a re-crawl before expecting the new URL to rank |
| https downgraded to http mid-chain | High | Rewrite the offending rule. Browsers warn on this and some block it |
| Chain of two or three hops | Medium | Worth flattening on the next release, not worth an emergency |
| Redirect to an unrelated page | Medium | Google treats it as a soft 404. Redirect to the closest match or return 410 |
| Slow hop, over 500ms | Low | Usually a redirect handled in application code that should live at the edge |
The one that is not a chain problem
Link equity. Google has said since 2016 that 30x redirects do not lose PageRank, so flatten chains for crawl budget, latency and reliability rather than out of fear that each hop is taxing you.
How to trace and fix a redirect chain
Six steps. The important part is step five: flattening only the first rule leaves the rest of the chain in place for anyone linking to a middle URL.
- 01
Start from the URL people actually reach
Use the address that appears in your backlinks, your old sitemap or your email campaign, not the destination. The chain you care about is the one a real visitor travels, and it starts at the old URL.
- 02
Count the hops
One hop is healthy. Two is tolerable. Three or more means the chain has been extended by successive migrations and should be flattened. Google follows at least five hops but stops treating the chain as a reliable signal well before that.
- 03
Check the status code on each hop
A permanent move should be a 301 (or 308). A 302 or 307 tells search engines the move is temporary, so the old URL keeps its place in the index and the new one never inherits it.
- 04
Look for a protocol downgrade
A chain that drops from https to http part way exposes the request and triggers browser warnings. This usually means one rule in the chain was written before the site moved to HTTPS.
- 05
Flatten the chain at the source
Update the first rule to point straight at the final destination, then update every intermediate rule to do the same. Do not delete the intermediate rules: other links may still point at those URLs.
- 06
Re-run and confirm a single hop
After deploying, trace the same URL again. You are looking for one redirect returning 301 followed by a 200. Anything else means a rule somewhere is still firing.
Three chains worth knowing by sight
The migration stack
http://example.com/old-post to https://example.com/old-post to https://www.example.com/old-post to https://www.example.com/blog/new-post. Four hops built by three separate projects, each of which added one redirect and tested only its own.
The trailing slash flip-flop
A server rule strips trailing slashes and a framework adds them back. The result is a loop, and the tell is that both hops return the same status code and alternate between two nearly identical URLs.
The silent 302
A single hop that looks fine until you read the status code. Many CMS redirect plugins default to 302, and a permanent move on a 302 means the new URL never inherits the old one's standing. This is the cheapest fix on the list and the one people most often miss.
After you fix them
Redirected URLs should not appear in your sitemap, because a sitemap should list final destinations only. The sitemap crawler checks every URL a sitemap declares and reports the ones that redirect.
What this tool checks
Every hop
The full path from the URL you enter to the final destination
Status code per hop
301, 302, 307, 308 and anything else the server returns
Redirect loops
Chains that return to a URL already visited
302 misuse
Temporary redirects standing in for permanent moves
Protocol downgrades
Chains that drop from https back to http
Response time per hop
Which step in the chain is costing the most time
Chain length warnings
Flags chains long enough to be worth flattening
Final status
Whether the destination actually returns a 200
Test the URL people use, not the one you want them to reach
Frequently asked questions
What is a redirect chain?
A redirect chain is what you get when a URL redirects to another URL that redirects again. For example an old post redirects to a new path, which redirects to the https version, which redirects to the trailing-slash version. Each hop is a full round trip the visitor waits through, and each one is a place the chain can break.
Why are redirect chains bad for SEO?
Three reasons. They add latency, because each hop is another request before anything renders. They consume crawl budget, since a crawler spends requests on redirects rather than on pages. And Google stops following after a handful of hops, so a page at the end of a long chain may never be reached at all.
How many redirects is too many?
One is the target. Google's documentation says it follows at least five hops in a single crawl attempt and resumes on the next, but that is a description of its tolerance rather than a recommendation. Anything over three has almost always accumulated by accident and can be flattened without cost.
What is the difference between a 301 and a 302 redirect?
A 301 is permanent: it tells search engines the resource has moved for good and that ranking signals should transfer to the new URL. A 302 is temporary: the old URL stays indexed and the new one is treated as a stand-in. Moving a site permanently on 302s is a common accident, and the symptom is that the new URLs never take over in search.
What about 307 and 308?
307 is the strict version of 302 and 308 is the strict version of 301. The difference is that 307 and 308 guarantee the request method is preserved, so a POST stays a POST. For SEO purposes 308 behaves like 301 and 307 like 302. HSTS-enforced http to https redirects appear as 307 in browsers, which is expected and not a problem.
What is a redirect loop?
A loop is a chain that returns to a URL it has already visited, so the page can never load. Browsers give up with an error like ERR_TOO_MANY_REDIRECTS. The usual causes are two rules written by different people in opposite directions, or a rule interacting with a CMS setting, such as a force-www rule fighting a canonical-domain plugin.
Does a redirect lose link equity?
Google has said since 2016 that 30x redirects do not lose PageRank. That guidance is about a single redirect rather than a licence to build chains: the practical costs of chains are crawl budget, latency and the risk of a hop failing, not a per-hop tax. Flatten them for those reasons, not because you are leaking authority.
Should I redirect a deleted page to the homepage?
Only if the homepage is genuinely the closest equivalent, which it rarely is. Google treats a redirect to an unrelated page as a soft 404 and drops the old URL anyway, so you get the confusion without the benefit. Redirect to the closest relevant page, or return a 410 and let the URL go.
How do I fix a redirect chain?
Point every rule in the chain directly at the final destination. If A goes to B goes to C, change A to point at C and change B to point at C as well. Keep the intermediate rules in place, because external links may still target those URLs. Then re-trace the original URL and confirm one hop.
Do redirects slow down my site?
Each hop is a full request and response, so on a mobile connection a three-hop chain can add several hundred milliseconds before the browser starts loading anything. It counts against Time to First Byte, and the effect is worst for the visitors on the slowest connections.
Should redirected URLs stay in my sitemap?
No. A sitemap should list final destinations only. URLs that redirect signal to Google that the file is stale, and a sitemap full of redirects gets crawled less often. Check yours with the sitemap crawler, which reports every entry that does not return a 200.
Why does this tool show a different chain from my browser?
Usually because the browser has cached a 301, which browsers do aggressively and sometimes permanently. This tool makes a fresh request each time. If the two disagree, trust the tool and clear your browser cache before testing again.
Other crawl and indexing tools
Website URL Extractor
Crawl any website and download every URL it links to as CSV, TXT, or JSON. Works straight from the live site, no sitemap required.
Use toolPage Indexability Checker
Find out why a page is not indexed. Checks status codes, noindex tags and X-Robots-Tag headers, robots.txt rules, canonicals, sitemap membership, and rendered content.
Use toolBroken Link Checker
Find broken internal and external links on any page. Checks up to 50 links for 404 errors, redirects, and timeouts.
Use toolRobots.txt Tester
Analyze robots.txt to see which AI crawlers and search engines are blocked, find sitemaps, and identify access issues.
Use toolRobots.txt Generator
Build a correct robots.txt from presets for WordPress, ecommerce, and AI crawlers. Decide which bots to allow, add your sitemap, copy the file.
Use toolFind every redirect issue across your entire site
Chains are a site-wide problem discovered one URL at a time. CrawlRaven traces every redirect on your site in a single crawl, flags the loops and the 302s, and ranks them by the traffic the affected pages already earn.