# Redirect checker

Follow an address one hop at a time and see every status on the way: the 301 that hands over a page's standing, the 302 that does not, the chain of three that should be one, the loop nobody noticed. Each hop is timed and named (http to https, www to the bare domain, a trailing slash, another path), the final page is read for a meta refresh or a script that moves the visitor on, and the one rule that replaces the chain is there to copy.

Updated 2026-09-14 · Source: https://porteur.ai/tools/redirect-checker

## What it checks

The tool requests the address and, instead of letting the browser follow, reads the answer: the status and, when it is a redirect, the Location header. Then it requests the destination, and so on, up to ten hops, timing each one. Each hop is named by what it changes: the scheme (http to https), the host (www to the bare domain or the reverse), a trailing slash, the letter case, or the path. When the chain ends, the final page is fetched and read for a meta refresh tag and for a script that sets the location, the two redirects a server never shows and search engines follow late or not at all. From the first address and the last, it writes the one rule that would replace the chain, for nginx and for a Next.js config.

## Why a redirect is worth a look

A redirect is a page telling the world it moved. Done with a 301 or a 308, the old address hands its standing to the new one and the links people wrote to it keep counting. Done with a 302 or a 307, it says the move is temporary, and search engines are entitled to keep the old address in the index and treat the new one as a stand-in. Most 302s on product sites are moves that were never meant to be temporary; the framework picked the code.

Chains cost more than they look. Each hop is a request, a wait and a chance to fail; Googlebot follows a handful and gives up. The common case is a site that moved to https, then to www, then to a new path: three hops on every old link, when one rule could send the old address straight to the last one.

## How to read the result

- **The verdict** counts the hops, adds the time, and says whether the chain can be one rule. Two redirects that change the scheme and then the host are the common case, and one server rule does both.
- **The table** is one row a hop: the address, its status (permanent or temporary), the kind of hop, the milliseconds it took, and where it sent the request. The last row is where the request landed.
- **Permanent** (301, 308) hands the old address's standing to the new one. **Temporary** (302, 303, 307) keeps it on the old one; a move meant to last should not be temporary.
- **Crosses hosts** means the chain moves between domains, each of which needs its own certificate and its own rule.
- **In the final page** reports a meta refresh or a script redirect. Both work in a browser; make them a server redirect so every crawler follows.
- **One rule in place of the chain** is the nginx location and the Next.js redirect entry from the first address straight to the last, to copy.

## How to fix a chain

1. **Find where the rules live** A host's settings, a framework's config, an .htaccess or an nginx block. Chains happen when two of these each add a hop.
2. **Send the first address to the last** Rewrite the rule so http://old goes to https://www.new/page in one hop, with a 301 or 308.
3. **Keep the middle addresses answering** Links may point at them. Each should redirect straight to the end too, not to the next hop.
4. **Redirect to the closest live page** Never to the home page by default. A visitor who followed a link to a specific page and lands on the home page leaves; so does the standing of the old link.
5. **Check the whole family** A redirect on one old path usually means a family of them: run the sitemap checker on the old sitemap, or the broken link checker on a page that links to the old paths.

## Limits

The tool sends a HEAD request and falls back to a small GET when a server refuses it. A server that answers bots differently from browsers, or a redirect that depends on a cookie, a country or a device, shows the bot's path here and another in your browser. Script redirects are read by pattern from the first sixty kilobytes of the page; a redirect built at runtime from pieces is not seen. Ten hops at most, which is about where Googlebot stops too.

## Questions

### What is the difference between a 301 and a 302?

A 301 says the page moved for good, and search engines pass the old address's standing to the new one. A 302 says the move is temporary and the old address should be kept. A move that will last should be a 301 or a 308.

### How many redirects will Google follow?

Google has said it follows up to ten hops in one crawl and then stops. Long before ten, each hop is a delay and a chance to fail; keep chains to one hop.

### Should http redirect to https?

Yes, with a 301, in one hop, straight to the final address, www or not. Two hops for the scheme and the host is the most common chain there is.

### Does a redirect lose ranking?

A permanent redirect passes the old address's standing to the new page, with a small loss at most. A temporary one, or a chain, or a redirect to an unrelated page, loses more.

### Why does the tool time each hop?

Because a chain costs what its hops cost, on every visit and every crawl. A first hop of 300 ms from a redirect service, then two more on your own server, is half a second before the page starts loading. The time also shows which hop belongs to which server, which is where the fix goes.

## Read next

- [Canonical tags: what they do and the mistakes that cost rankings](https://porteur.ai/guides/canonical-tag): What a canonical tag does, when to use one, the mistakes that cost rankings, and how to check and fix canonicals on a small site.
- [Technical SEO checklist for a small site](https://porteur.ai/guides/technical-seo-checklist): Run these 20 technical SEO checks, in order. Each shows how to check it free and what fixed looks like for a site under 1,000 pages.
- [Broken backlinks: the links you are losing to pages that are gone](https://porteur.ai/guides/broken-backlinks): Links point to deleted pages, wasting authority. Learn how to find broken backlinks, map redirects, when to restore pages, and what not to redirect.
- [Broken link checker](https://porteur.ai/tools/broken-link-checker): Every link on one page, up to 150, fetched eight at a time: the ones that 404 with the words they carry, the ones that redirect and where to, as a list.
- [Sitemap checker](https://porteur.ai/tools/sitemap-checker): Read a sitemap the way a crawler does: what it lists, how it is dated, whether robots.txt names it, and whether thirty of its addresses answer 200.
- [Canonical URL](https://porteur.ai/glossary/canonical-url): A canonical URL names the original version of a page. Use it to handle parameters and duplicates, avoid split signals and keep the right page indexed.
- [HTTPS](https://porteur.ai/glossary/https): HTTPS is a small ranking signal. Serve every page over HTTPS, one‑hop redirect HTTP to HTTPS, fix mixed content, keep canonicals and sitemaps on HTTPS.
- [302 redirect](https://porteur.ai/glossary/302-redirect): A 302 redirect is temporary. Use it for short moves like maintenance or campaigns. See how Google treats it and when to pick 301 or 307.

One address at a time here. The free check reads the whole site: the pages other sites still link to that answer nothing, the ones that redirect, and the ones Google shows and nobody clicks. Free check: https://porteur.ai/
