Indexability and crawling

How to fix redirect chains on your site

A redirect that points at another redirect makes the reader wait through every hop, and a bit of the value from the original link leaks away at each one. Chains build up quietly over years of moving pages around.

What it is

A redirect chain is two or more redirects in a row: /old/older/current. Each hop is a separate request and response before the reader sees anything.

Why it costs you

Every hop adds latency, which hurts most on mobile. Search engines follow chains but dislike them, and a little of the ranking signal from the first URL dissipates along the way. Long chains (five-plus hops) sometimes stop being followed at all. They accumulate: an old redirect from one site move gets caught by a redirect from the next.

How to fix it

The rule is the same everywhere: point the first URL straight at the final one, so there is a single hop.

  • WordPress: if you manage redirects in Redirection, Yoast Premium, or Rank Math, edit the source rule to target the final URL directly instead of an intermediate.
  • Nginx / Apache: find the rewrite / Redirect rules and collapse the chain so /old sends a 301 straight to /current.
  • Cloudflare / CDN: check your Bulk Redirects or Page Rules for stacked entries pointing at each other, and repoint the first at the destination.

How to check your site

A browser’s Network tab shows each hop for a single URL (watch for several 301s in a row). To find them across a whole site, crawl it and look for any URL with more than one redirect before a 200.

What this looks like in practice

A store had migrated platforms twice. Product URLs ran /shop/x/products/x/p/x, three hops on every old link and every ad still pointing at the oldest form. Flattening them cut load time on those pages by roughly a second.

Questions people ask

Is a single redirect a problem?
No. One 301 is normal and fine. The issue is only chains of two or more.
301 or 302?
For a permanent move, use 301. It passes ranking value and tells Google to update its index. Use 302 only for temporary redirects.

Does your site have this?

Check your site to see which URLs take more than one hop to load.

See also

All SEO checks →