Check redirects
A browser follows redirects without showing them. This page shows them: how many hops, of which type, and where you actually land.
How to read this result
What matters about a redirect is not that it exists, but its type and the number of hops. Both are in the left-hand column.
Permanent or temporary
| Code | What it says | What to do |
|---|---|---|
| 301 | Moved permanently | Rewrite the links pointing at the old address |
| 308 | Moved permanently, method preserved | Same as 301 |
| 302 | Moved temporarily | Nothing: the old address is still the right one |
| 303 | See other, as GET | Nothing: normal after a form submission |
| 307 | Temporary, method preserved | Nothing |
The costliest confusion is using a 302 for a permanent move. The search engine then keeps the old address as the reference and waits for it to come back, sometimes for months.
The number of hops
A redirect costs a network round trip. Three hops means three round trips before the page even starts to appear, on every visit, for every visitor. It is also three chances for a link in the chain to break: a chain is rarely repaired in full during a redesign.
The usual rule: one hop is normal, two is tolerable, three needs a reason. Beyond that, redirect straight to the final destination.
The special case of a loop
The chain is followed for at most five hops. If it is cut off at that limit, it is not a long redirect: it is almost always a loop, and the site is unreachable for everyone.
What this tool does not do
- It does not follow beyond five hops. Past that it is a loop, and saying so is more useful than following it any further.
- It does not catch redirects triggered by JavaScript or by a meta refresh tag: only server-side ones show up here.
- It does not crawl your site to find chains that are too long. That is the job of a full crawl.
Frequently asked questions
Do redirects hurt SEO?
A clean 301 does not. It is the mechanism designed for moving a page, and it passes on most of the link value. What hurts is the multi-hop chain, the loop, and the 302 used where a 301 belongs.
Why does my site redirect when I set nothing up?
Two redirects are almost always in place without anyone writing them: http to https, and between the domain with and without www. They are normal and desirable. What to avoid is chaining them, for example http without www to https without www to https with www.
What does “the destination returns an error” mean?
That the redirect works but leads to a page that no longer exists. It is the worst case: the link looks valid to a naive checker, and the visitor lands on an error.
Going further
Redirect or delete a page: the decision tree You are about to remove a page. Four questions decide whether it deserves a 301, a 410, or nothing at all, and the honest answer is often nothing.The other tools
Check a domain name
Expiry date, registrar and status of a domain name.
Check an SSL certificate
Certificate expiry date, issuer, and the names it actually covers.
Check a backlink
Whether the link is there, with which anchor, dofollow or nofollow.
Every chain on your site, in one pass
The Expansel crawl walks your pages, records the redirects it meets and puts the ones whose final destination returns an error first.