Skip to content

Redirect chains

A redirect chain is a link that passes through two or more redirects before it reaches a page: the first address sends you to a second, which sends you to a third. Each hop costs a round trip, and long chains can stop crawlers before the end. You fix a chain by pointing every old address straight at the final page.

Redirect checkerUpdated 3 min read

How chains build up

Nobody plans a chain. They grow one sensible change at a time:

  1. Your site moves from http to https: http://example.com/menu redirects to https://example.com/menu.
  2. Later you standardise on www: that redirects to https://www.example.com/menu.
  3. Then the page moves: that redirects to https://www.example.com/food/menu.

Now an old link in a printed flyer makes three hops. Add a link shortener and a tracking redirect on top, and five hops is easy.

Why chains are worth fixing

  • Speed. MDN notes each redirect costs an extra round trip. On a slow mobile connection, three of them before the page even starts to load are noticeable.
  • Crawlers stop. Google says its crawlers follow up to 10 redirect hops by default, and some of its tools don't follow redirects at all.
  • Old clients give up early. The HTTP standard, RFC 9110, notes that an earlier version recommended at most five redirects, and that some clients might still stop there.
  • Mixed signals. If one hop in the chain is a temporary 302, Google treats it as a weak signal that the target should replace the original, where a 301 is a strong one.

Find the chain

Paste the old address into the checker. It follows each hop from our server and lists them in order with their status codes and timings. It stops at 10 hops, and stops at once on a loop.

Redirect checker

Open the full tool

Check the addresses people actually use, not just your home page: old blog URLs, links in email signatures, QR codes on print, and the http and non-www versions of your domain.

Fix it

  1. Note the final address the checker shows: the last hop that answers 200.
  2. Point each old address straight at it. In the example above, http://example.com/menu, https://example.com/menu and https://www.example.com/menu should each redirect to https://www.example.com/food/menu in one step. On Apache that's a Redirect 301 line per old path; in Cloudflare it's a redirect rule; in a CMS it's the redirect list.
  3. Keep the general rules too. Your http-to-https and non-www-to-www rules still catch addresses you haven't listed. Put the specific redirects first, so they answer before the general rules do.
  4. Update your own links. Menus, sitemaps, canonical tags and social profiles should use the final address, so visitors and crawlers don't need any redirect.
  5. Check again. Every old address should now show one hop with a 301 or 308, then a 200.

Redirect loops

A loop is a chain that comes back to an address it has already visited, so it never ends. MDN notes it's usually a server problem, and that a loop can be spread over several servers that each lack the full picture: a CDN rule that adds www and a server rule that removes it, for example. Browsers stop with an error; MDN quotes Chrome's "This Webpage has a redirect loop". The checker names the address where the loop closes, so you know which two rules to compare.

Chains you don't control

Short links, ad trackers and email click tracking add hops you can't remove. You can still keep your side short: give those services your final address, not an old one that redirects again.

For platform steps, see how to redirect a URL with .htaccess, in Cloudflare or in IIS.

Sources

Questions

What are redirect chains?

A link that goes through two or more redirects before it reaches a page: A redirects to B, B redirects to C. Each step is a hop, and each hop is an extra request.

How do I fix a redirect chain?

Point the first address, and every address in between, straight at the final page. Then update your own links to use the final address, so most visitors skip the redirects altogether.

Should I use a 301 or a 302 redirect?

A 301 (or 308) when the move is permanent, which is most chains. Use 302 or 307 only when the old address will come back.

Why do I get redirected to a site I didn't want to visit?

A link you clicked may pass through tracking or ad redirects, or a site may have been changed to send visitors elsewhere. Paste the link into a redirect checker to see every hop before you open it.