Skip to content

How to Fix Redirect Chains and Loops

Last Updated: August 22, 2026

Redirect chains and loops are silent SEO killers. A redirect chain is when URL A redirects to URL B, which redirects to URL C, creating multiple hops before the user reaches the final page. A redirect loop is when a chain circles back on itself (A redirects to B, B redirects to A), creating an infinite loop that results in an error. Both problems waste crawl budget, dilute link equity, slow page loads, and in the case of loops, make pages completely inaccessible. These issues often coexist with canonical tag problems and broken links, so address them together.

This guide shows you how to find redirect issues, diagnose the root cause, and fix them efficiently. Start by testing any URL with our redirect checker to see the full redirect path.

What is a redirect chain?

A redirect chain occurs when a URL redirects to another URL that itself redirects to yet another URL. For example:

  • example.com/page (301) redirects to www.example.com/page
  • www.example.com/page (301) redirects to https://example.com/page
  • https://example.com/page is the final destination

This three-step chain means every visitor and crawler makes two extra HTTP requests before reaching the content. On mobile connections, each redirect can add 100-300ms of latency.

What is a redirect loop?

A redirect loop is a chain that never terminates. The most common loop pattern:

  • http://example.com/page redirects to https://example.com/page
  • https://example.com/page redirects back to http://example.com/page

The browser eventually gives up and displays an error: "This page has too many redirects" or ERR_TOO_MANY_REDIRECTS. This makes the page completely inaccessible to both users and search engines.

Use the redirect checker to detect loops before your users encounter them.

Why redirect chains hurt SEO

  • Crawl budget waste: Googlebot has a limited crawl budget. Each hop in a chain consumes a portion of that budget.
  • Link equity dilution: While Google has confirmed that 301 redirects do not lose PageRank, each hop can introduce some signal loss. A single 301 is ideal.
  • Slower load times: Each redirect requires a new HTTP request and response. On slow networks, this adds noticeable delay.
  • Indexing issues: If chains are long enough, Google may give up before reaching the final URL.
  • User experience: Loops create error pages. Chains create flickering as the browser bounces through multiple URLs.

How to find redirect chains

Manual testing

Start with the most obvious URLs: old pages you have migrated, URLs changed during a site redesign, and any URL you know has been redirected before. Paste each into the redirect checker and review the full path.

Crawl-based detection

Use a site crawler to map all redirect chains across your entire site. Crawlers follow every link and can identify chains of 2, 3, 4, or more hops. Export the results to a spreadsheet grouped by chain length.

Server log analysis

Server logs show every request Googlebot makes, including redirects. Look for patterns where Googlebot hits a URL that returns 301, then immediately hits the redirect target, then hits another redirect target.

Search Console coverage report

Google Search Console sometimes flags redirect chains or loops in the coverage report. Check for pages marked as "redirect error" or "page with redirect."

Common causes of redirect chains

HTTP to HTTPS migration leftovers

The most common chain pattern: a page redirects from HTTP to a non-www HTTPS URL, but that URL then redirects to www HTTPS. The fix is to redirect directly from HTTP non-www to HTTPS www in a single hop.

Old CMS redirects

When you change CMS platforms, old redirects from the previous platform may still be active in the server config or .htaccess file. If the new platform also adds its own redirects, chains form.

Trailing slash inconsistencies

If your server redirects /page to /page/ (adding a trailing slash) and your CMS or CDN then redirects /page/ back to /page (removing it), you have created a loop. Standardize on one format.

URL parameter handling

Redirect rules that strip URL parameters can create chains if the stripping rule sends to a URL that has its own redirect rule. Test parameter URLs with the redirect checker to verify they resolve cleanly.

Plugin or app redirects

WordPress plugins (SEO plugins, caching plugins, security plugins) and Shopify apps each add their own redirect rules. If multiple plugins handle the same URL, chains form.

How to fix redirect chains

Step 1: Map the complete chain

For each chain, document the full path: starting URL, every intermediate hop, and the final destination. Use the redirect checker to get the complete path.

Step 2: Identify the final destination

The final URL (the one returning 200) is your canonical version. Every other URL in the chain should redirect directly to this URL in a single hop.

Step 3: Update redirect rules

Modify your server configuration, .htaccess, or CMS redirect rules so that each old URL redirects directly to the final destination, bypassing any intermediate URLs.

Step 4: Update internal links

Internal links should point directly to the final destination URL, not to a URL that redirects. Fixing internal links eliminates unnecessary hops for both users and crawlers.

Step 5: Test and verify

After making changes, re-test every affected URL with the redirect checker. Confirm that each URL reaches the final destination in exactly one hop. Also verify with the robots.txt checker that the final URLs are crawlable.

How to fix redirect loops

Loops require finding the conflicting rules that create the cycle. Common fixes:

  • Remove one of the two rules that conflict
  • Add a condition to skip the redirect if the URL already matches the target
  • Check server config, .htaccess, CDN rules, and CMS plugins for overlapping rules
  • Clear all caches (server, CDN, browser) after making changes

If you cannot identify the conflicting rules, temporarily disable all redirect rules and add them back one at a time until the loop appears.

Preventing redirect chains in the future

  • Use a redirect map: Maintain a spreadsheet of every redirect rule on your site. Record the source URL, destination URL, rule type, and the date it was added.
  • Audit before adding new rules: Before creating a new redirect, check if any existing rules already affect the source or destination URL.
  • Merge chains proactively: Set a policy: no redirect chain should be longer than 1 hop. Run a quarterly crawl to detect and flatten any new chains.
  • Use 301 for permanent moves: Use 301 for all permanent moves, not 302. 302 redirects accumulate over time.
  • Test after every deployment: Any time you change your server config, CDN, or CMS, re-test your key URLs with the redirect checker.

Redirect chains and international SEO

Multi-language or multi-country setups often use redirects to send users to the right locale version based on their IP or browser language. These geo-based redirects can create chains if the redirect logic conflicts with other rules. Test geo-redirects from multiple locations or with a VPN to verify they resolve in a single hop.

When chains are acceptable

A single redirect hop is perfectly fine and sometimes necessary (HTTP to HTTPS is the most common legitimate redirect). Two hops are tolerable but should be reduced. Three or more hops should always be flattened. Loops are never acceptable.

Quick diagnosis checklist

  • Run the redirect checker on every old or migrated URL
  • Check for chains: more than 1 hop means a fix is needed
  • Check for loops: the error page tells you a loop exists
  • Document every chain with the full path (source, intermediate, destination)
  • Update server rules so each source redirects directly to the final destination
  • Fix internal links to point to the final destination
  • Re-test after changes to confirm single-hop resolution
  • Audit quarterly to catch new chains before they accumulate

Clean redirects are a sign of a well-maintained site. A quarterly redirect audit takes 30 minutes and prevents the slow accumulation of chains that degrade crawl efficiency and user experience over time.

Related Articles

Related Tools