# Redirect chain

A redirect chain is a URL that redirects to another URL that redirects again, such as A to B to C. Each hop costs the visitor a round trip and the crawler a fetch. Google follows up to about ten hops in one crawl before it gives up and tries again later.

Updated 2026-09-15 · Source: https://porteur.ai/glossary/redirect-chain

## What a chain looks like

```text
http://yourproduct.com/old-page   301 -> https://yourproduct.com/old-page
https://yourproduct.com/old-page  301 -> https://yourproduct.com/guides/old-page
https://yourproduct.com/guides/old-page  200
```

Three requests where one would do. The visitor waits for all of them, on a phone connection each one costs a round trip, and a crawler spends three fetches to read one page.

A redirect loop is the pathological case: A redirects to B and B redirects back to A. It never resolves, the browser gives up, and the URL leaves the index.

## Where chains come from

- Rules that accumulate: http to https, then non-www to www, then an old slug to a new one, each added by a different person on a different day.
- A migration where the old URLs point at the URLs of the previous migration rather than at the live page.
- A CDN rule and a server rule that both fire, each doing half the job.
- Internal links and sitemaps that still point at the first URL of the chain, so the chain is walked on every crawl.

## What it costs

| Hops | What happens |
| --- | --- |
| 1 | Normal. A permanent redirect passes the old URL’s standing to the new one. |
| 2 or 3 | Slower for the visitor, more fetches for the crawler. Worth flattening, not urgent. |
| More than 3 | Each hop is a place to break. Flatten them. |
| About 10 | Google stops following in that crawl and comes back later, so indexing of the target is delayed. |
| A loop | The URL never resolves and is dropped. |

## How to flatten one

1. **Read the chain** Request the first URL and follow the redirects, noting every status and destination. A redirect checker does this in one call.
2. **Point the first URL at the last** Replace the rules so the first URL redirects straight to the final 200, with a 301 when the move is permanent.
3. **Fix what feeds the chain** Update internal links, the sitemap, canonicals and any email or ad that still uses the old URL.
4. **Keep the old rules** Other sites still link to the old URLs. Leave the single-hop redirects in place; they cost nothing once they are one hop.
5. **Re-check after the deploy** A chain reappears the day someone adds a rule at the CDN. Check the important URLs after each migration.

## Questions

### How many redirects in a row are too many?

Google follows about ten hops in one crawl before giving up. In practice anything past three is worth flattening, because each hop is latency for the visitor and a place for the chain to break.

### Do redirect chains lose ranking signals?

Google has said since 2016 that redirects do not lose PageRank in themselves. The cost is crawling, latency and fragility, not a tax per hop.

### What is the difference between a chain and a loop?

A chain ends at a page that answers 200. A loop never ends: two URLs redirect to each other, the browser stops after a few tries, and the URL is dropped from the index.

### How do I find redirect chains on my site?

Crawl the site and look at the redirect report, or check the URLs that matter one at a time with a redirect checker. The usual suspects are the home page over http and any URL changed in a migration.

### Should I remove old redirects once the chain is flat?

No. Keep them as single hops for as long as the old URLs are linked anywhere, which in practice means permanently. They cost nothing once they point straight at the final URL.

## Read next

- [301 redirect](https://porteur.ai/glossary/301-redirect): A 301 redirect is a permanent move. Use it to send users and bots to a new URL, keep signals, avoid chains, and choose 308 when methods must persist.
- [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.
- [Redirect checker](https://porteur.ai/tools/redirect-checker): Follow a URL's redirects hop by hop: each status and destination, the time each took, the kind of hop, meta and script redirects, one rule to replace it.
- [Build a redirect map: one old URL, one new URL, tested](https://porteur.ai/guides/redirect-map): A practical redirect map: where to find old URLs, how to match them, store the table, apply 301s, and test every row for one hop and a 200.
- [HTTP status codes for SEO: what each one tells Google](https://porteur.ai/guides/http-status-codes-for-seo): See how 2xx, 3xx, 4xx and 5xx codes change crawling and indexing, when to use 301 vs 302, handle soft 404s, 503 for maintenance, and how to check URLs.
- [Moving from HTTP to HTTPS: the checklist that keeps rankings](https://porteur.ai/guides/http-to-https-migration): Move from HTTP to HTTPS without losing rankings. Use one-hop 301s, update canonicals and sitemaps, fix mixed content, and verify the HTTPS property.
- [www or non-www: pick one, redirect the other](https://porteur.ai/guides/www-vs-non-www): Pick www or non-www, there is no SEO gain either way. 301 redirect every path to the chosen host, set canonicals, and verify a Domain property.

The free check follows the redirects on your site and names the chains worth flattening, in about thirty seconds. Free check: https://porteur.ai/
