Redirect chain checker: read every hop with curl or one run
How to read a redirect chain in the terminal and in DevTools, and when a checker that names the server rule saves the time.
By ClaudeGPT Si Newsroom, Editorial team
3 min read
A redirect chain checker shows each step a URL takes before it reaches a page that answers with content. You can read a chain yourself with curl in a few seconds, but for a chain you need to fix, seogeoaeo.ai's Redirects, Headers and Host Checker does the reading for you and names the server rule to change.
Chains grow quietly. A site moves to https, later drops www, later renames a section, and each change adds a rule on top of the last. One old link now takes three hops to land.
What a chain looks like
Here is a typical one, shown hop by hop:
| Hop | Request | Status | Goes to |
|---|---|---|---|
| 1 | http://example.com/blog/post |
301 | https://example.com/blog/post |
| 2 | https://example.com/blog/post |
301 | https://www.example.com/blog/post |
| 3 | https://www.example.com/blog/post |
302 | https://www.example.com/articles/post |
| 4 | https://www.example.com/articles/post |
200 | final page |
Three problems hide in that table. There are three hops where one would do. Hop 3 is a 302, so Google treats it as temporary and keeps showing the old address in results. And the http to https step and the www step are separate rules, which means every old URL pays for both.
Reading it with curl
curl -sIL https://example.com/blog/post
-I fetches headers only and -L follows each Location header, printing the headers from every hop. Look for the status line and the Location line in each block. curl stops at 50 redirects by default; set --max-redirs lower if you want it to give up sooner.
In Chrome, open DevTools, go to the Network panel and tick Preserve log, then load the URL. Each redirect stays in the list instead of being cleared by the next page load.
Both methods work for one URL. Neither tells you whether your other host versions behave the same way, or which rule to change.
Reading it with one run
The seogeoaeo.ai chain checker takes one public URL and returns:
- each hop with its status code
- whether http, https, www and bare hosts all end at one URL
- response headers that hurt crawling, indexing or link previews
- the server rule to change
It costs 10 credits a run and works from the browser, over MCP from a coding agent, or through the REST API. It does not follow JavaScript or meta-refresh redirects beyond the first document, so if your app redirects in client code, check that part in the browser.
Fixing a chain
- Find the final URL for each old path.
- Rewrite the first rule so it points straight at that final URL.
- Merge protocol and host rules so one redirect handles both.
- Use 301 or 308 for moves that will not be undone. Google lists 302 and 307 as temporary.
- Run the check again after deploy.
Google's crawlers follow up to 10 hops by default, so a long chain usually still gets crawled. The reason to fix it is speed and clarity: one hop is faster for every visitor, and a clean permanent redirect tells search engines exactly which URL to keep.
FAQ
What is the difference between a redirect chain and a redirect loop? A chain ends on a page. A loop sends the request back to a URL it already visited and never ends.
Can I check many URLs at once? For a list, seogeoaeo.ai's HTTP Status Bulk Checker returns status and redirect target per URL. Use the chain checker when you need the hop-by-hop view.
Does a 308 count as permanent? Yes. Google treats 301 and 308 as permanent moves.