seoder

Redirect chain checker

Enter a URL and see the whole path a crawler takes: every hop, the status code that caused it, the URL that finally answers, and a warning if the chain loops or drops to http.

Start from the URL people actually have, the one in the old link or the printed advert. Starting from the destination hides the hops you are looking for.

Result

The hop list lands here, in the order a crawler walks it.

Following the chain. This takes a few seconds.

The check did not finish.

Why the chain matters and not just the destination

A browser hides redirects. You click a link, you land on a page, and the two or three round trips in between never reach your attention. A crawler experiences them as separate requests against your crawl allowance, and each one is a chance for something to answer wrong. That is why a link audit that only records the final URL misses the interesting part.

The checker records the status code on every hop because the codes mean different things. A 301 says the move is permanent and the new URL should replace the old one everywhere. A 302 says the original is still the right address and this detour is temporary. A 307 says the same as a 302 while promising the request method survives, which matters for anything that is not a plain GET. Mixing them up does not break the page for a human and does change which URL ends up in the index.

The chains that cost you something

The usual accident is stacking. Someone adds a rule to move an old category to a new one. A year later the new one moves again and a second rule goes on top. Then the site gains an apex to www rule and a trailing slash rule, and a single old link now takes four hops before anything renders. Nothing is broken, the page loads, and every visit pays for it. Rewrite the old rules to point straight at the current destination rather than letting them chain.

Worse is the circle. Two rules disagree, or an application redirect fights a server one, and the URL never arrives anywhere. A browser gives up with an error and a crawler drops the URL from its index, which is how a page disappears with nobody having deleted it. The checker flags any URL that appears twice, and what a loop does to a crawler covers how to trace the two rules that are arguing.

Then there is the redirect that should have been a status code. Retiring a product and sending every dead URL to the home page looks tidier than a wall of errors, and search engines treat it as a kind of lie, because the destination has nothing to do with what was asked for. Return a real 404 or a 410 instead. Why 404s are healthy makes the case better than a redirect rule can.

After the chain is clean

Once a URL resolves in one hop or none, check that the destination agrees with itself. A page that redirects correctly and then names a different address in its canonical tag sends two conflicting signals, and the canonical URL entry explains which one wins and when. The rest of the picture, including what each crawler receives from the final page, comes from the full report. The hop limits, timeouts and politeness rules behind this check are on the how it works page.

Common questions

How many redirects are too many?

One is fine, two is tolerable, three starts costing you. Google follows up to about five hops in a single pass and picks the chain up later if it runs out, which delays the move rather than stopping it. Browsers usually allow around twenty.

Does a 302 pass ranking signals?

Treat it as temporary and expect the original URL to stay indexed. Search engines can decide a long-lived 302 is really permanent, but that is their inference on their schedule. For a move that is not coming back, return a 301.

Why does my chain show an extra hop I did not create?

Usually the host or the trailing slash. A request to the apex is redirected to www, or a path without a slash is redirected to one with it, and each of those is a separate hop that stacks on top of whatever rule you wrote.

What counts as a redirect loop here?

Any URL that appears twice in the chain. The checker stops there and flags it rather than running to the hop limit, because the repeat is the evidence you need.