Skip to content
← All articles

Redirect Chains: How They Affect SEO and Speed

Redirects are an integral part of website management. They are needed when migrating to a new domain, changing URL structure, or switching from HTTP to SSL/TLS проверку. However, improper use of redirects creates redirect chains that slow down loading and harm SEO rankings. Let's examine this problem in detail.

Types of HTTP Redirects

301 — Permanent Redirect

A 301 code tells browsers and search engines that the page has been permanently moved. Search engines pass link equity (link juice) to the new URL and eventually replace the old URL with the new one in their index.

When to use 301:

302 — Found (Temporary Redirect)

A 302 code indicates a temporary redirect. Search engines keep the original URL in the index and do not pass link equity to the new address.

When to use 302:

307 and 308 — Strict Redirects

307 (Temporary) and 308 (Permanent) are stricter versions of 302 and 301 respectively. They guarantee that the HTTP request method (POST, PUT) is preserved during the redirect. For regular GET requests, the behavior is identical to 302 and 301.

CodeTypeLink Juice TransferMethod Preservation
301PermanentYes (90–99%)May change to GET
302TemporaryNoMay change to GET
307TemporaryNoPreserved
308PermanentYesPreserved

What Is a Redirect Chain

A redirect chain occurs when one URL redirects to another, which in turn redirects to a third, and so on. A simple example:

http://example.com → 301 → https://example.com → 301 → https://www.example.com → 301 → https://www.example.com/new-page/

In this case, the browser makes three sequential requests instead of one. Each redirect adds a delay of 100–500 ms (DNS Lookup, TCP connection, TLS handshake, response wait).

How Redirect Chains Affect SEO

Link Equity Loss

Google has stated that 301 redirects pass full link equity. However, in practice, each step in a chain can weaken the transfer. With a chain of 3–4 redirects, the loss can be significant.

Slower Indexing

Googlebot has a limited crawl budget for each site. Redirect chains waste this budget — the bot spends requests following chains instead of indexing useful pages.

Problems Discovering the Final URL

Google follows a maximum of 10 redirects in a chain. If the chain is longer, Googlebot will stop following the redirects and the page will not be indexed.

Mixing 301 and 302

If a 302 redirect appears in the chain, the search engine may conclude that the redirect is temporary and not pass link equity to subsequent links. This is a common mistake, especially when configuring through a hosting panel.

Impact on Loading Speed

Each redirect in a chain requires a full request-response cycle:

  1. DNS resolution (if the domain changes) — 20–120 ms
  2. TCP connection — 10–100 ms
  3. TLS handshake (for HTTPS) — 30–150 ms
  4. Sending request and receiving response — 10–200 ms

In total, each step adds 70 to 570 ms. A chain of three redirects can add over a second to load time — critical for mobile users and the LCP metric.

How to Find Redirect Chains

Manual Check

Use the enterno.io HTTP header checker tool. It shows the HTTP response code and the Location header if there is a redirect. Check each URL in the chain sequentially.

Tools for Bulk Checking

Checking via curl

curl -sIL https://example.com 2>&1 | grep -E "^HTTP/|^location:"

The -L flag tells curl to follow redirects, and -I shows only headers.

How to Eliminate Redirect Chains

1. Direct Redirect to the Final URL

Instead of a chain A → B → C → D, set up direct redirects: A → D, B → D, C → D. Each intermediate URL should redirect directly to the final address.

2. Update Internal Links

Find all internal links pointing to URLs with redirects and replace them with the final URLs. This eliminates redirects for users coming from your own site.

3. Canonicalization via Server Configuration

Set up a single canonicalization rule instead of multiple sequential ones. For nginx:

# One rule instead of a chain: http → https + www → non-www
server {
    listen 80;
    listen 443 ssl;
    server_name www.example.com example.com;

    # Single redirect to the final URL
    if ($scheme = "http") {
        return 301 https://example.com$request_uri;
    }
    if ($host = "www.example.com") {
        return 301 https://example.com$request_uri;
    }
}

4. Audit .htaccess (Apache)

Multiple RewriteRule directives added at different times often create unintended chains. It is recommended to:

5. Update External Links

Where possible, update links in social media, directories, email campaigns, and other external resources to point to current URLs.

Common Causes of Chains

Redirect Loops

Even more dangerous than chains are loops (redirect loops), where URL A redirects to B, and B redirects back to A. Browsers detect the loop and display an ERR_TOO_MANY_REDIRECTS error.

Common causes of loops:

Redirect Checklist

  1. Use 301 for permanent and 302 for temporary redirects
  2. Maximum chain length — 1 redirect (ideally 0)
  3. Regularly check your site for chains and loops
  4. Update internal links when URLs change
  5. Consolidate canonicalization rules into a single redirect
  6. Test redirects after every configuration change
  7. Monitor crawl budget in Google Search Console

Try It Yourself

Check your site for redirects using the enterno.io HTTP header analyzer or use the bulk URL checker to analyze multiple URLs at once.

Check your website right now

Check now →
More articles: SEO
SEO
Website SEO Audit: 20-Point Checklist
14.03.2026 · 9 views
SEO
The Complete Guide to robots.txt for SEO and Crawl Control
16.03.2026 · 11 views
SEO
Website Migration Checklist: Avoid SEO and Downtime Pitfalls
16.03.2026 · 15 views
SEO
Subdomain vs Subdirectory for SEO: Which Structure Wins?
16.03.2026 · 12 views