Home›Academy›Technical SEO›Redirects

Technical SEO · Lesson 03

Redirects

How permanent and temporary redirects move users and crawlers from one URL to another, and why redirect chains, redirect loops, and incorrect redirect targets create crawl, indexing, and usability problems.

03 Technical SEO13 min Read timeBeginner Level

03 / Technical SEO

A redirect tells browsers and search engine crawlers that a requested URL should lead to another URL.

Redirects are used when pages move, URL structures change, websites migrate to a new domain or to HTTPS, or an old URL needs to point to a new destination. A well-configured redirect gives users and Googlebot one clear path from the source URL to the intended final URL, preserves the link equity that external backlinks point at the old address, and avoids wasting crawl budget on unnecessary hops.

This lesson covers 301 redirects, 302 redirects, redirect chains, redirect loops, and redirect targets. It also explains how to review redirect implementation during a technical SEO audit and use SiteAuditLint to identify redirect issues across a website.

1. What is a redirect?

A redirect tells a browser or crawler to request a different URL instead of continuing with the original URL.

https://www.example.com/old-page/
        ↓
https://www.example.com/new-page/

The original URL is the source URL. The URL the redirect points to is the target URL. Server-side redirects return a 3xx HTTP status code together with a Location response header that names the target:

HTTP/1.1 301 Moved Permanently
Location: https://www.example.com/new-page/

The status code communicates the intended nature of the URL change. The two redirect types most commonly encountered during technical SEO audits are 301 Moved Permanently and 302 Found, a temporary redirect. Their close relatives, 308 Permanent Redirect and 307 Temporary Redirect, behave the same way for SEO purposes but also preserve the request method.

How redirects work

RequestOriginal URLA user or crawler requests the source URL.
3xx responseRedirectThe server returns a redirect status code and a Location header.
New requestTarget URLThe browser or crawler requests the destination URL.
200 OKFinal responseThe target URL returns its final, successful response.

Simplified redirect structure. The goal is a path from source to final destination that is as direct and consistent as possible.

Server-side redirects come first

Redirects can also be triggered with a meta refresh tag or JavaScript, but these are processed later and less reliably by search engines. Where you control the server, configure redirects at the server or CDN level, for example in .htaccess, an Nginx return 301 rule, or your CMS redirect manager.

A redirect is not simply about whether another page eventually loads. The status code, target, number of hops, and final response should all be reviewed.

2. 301 redirects

A 301 redirect indicates that a URL has moved permanently.

https://www.example.com/old-page/
        ↓ 301
https://www.example.com/new-page/

A permanent redirect is a strong canonicalization signal. Over time, search engines replace the old URL with the target in their index and consolidate ranking signals, such as backlinks, onto the new URL. A 301 redirect is commonly used when:

  • A page has permanently moved or been replaced by a new equivalent page.
  • A URL structure has changed, for example after a slug rewrite or category restructure.
  • A site migration moves content to a new domain, platform, or URL scheme.
  • HTTP URLs are redirected to HTTPS as part of a secure protocol setup.
  • Hostname or trailing-slash variations such as www and non-www versions are being consolidated.
  • Multiple thin or outdated pages are merged into one stronger page.

Example: Service page rename

Suppose a website changes https://example.com/services/seo-audit/ to https://example.com/services/technical-seo/. A direct redirect would be:

/services/seo-audit/
        ↓ 301
/services/technical-seo/

The target should be the closest equivalent replacement for the original URL.

What to check

Intended permanence

Is the URL change actually meant to be permanent?

Relevant target

Is the target URL an equivalent replacement for the original page?

Successful response

Does the target return a 200 status code rather than another redirect or an error?

Single hop

Does the redirect point directly to the final URL without a chain or loop?

Updated internal links

Do internal links, canonicals, and the XML sitemap point to the new URL instead of the old one?

A 301 redirect should provide a clear route from the old URL to the appropriate replacement URL, and it should stay in place long term, typically at least a year, so external links and bookmarks keep resolving.

3. 302 redirects

A 302 redirect generally indicates that a URL has moved temporarily.

https://example.com/sale/
        ↓ 302
https://example.com/summer-sale/

A temporary redirect tells search engines to keep the original URL indexed, because it is expected to remain the primary URL once the temporary change ends. Common situations include temporary campaigns, short-term A/B testing, temporary maintenance, out-of-stock product routing, and geolocation or language routing that sends visitors to a regional page.

Example: Short-term campaign

Suppose a page is temporarily replaced while a site runs a seasonal campaign:

/original-page/
        ↓ 302
/campaign-page/

If the original page is expected to return, a 302 communicates that the move is not intended to replace the original URL permanently. If the original page has been permanently replaced, switch the redirect to a 301.

301 vs 302

RedirectGeneral purposeIndexed URL over time
301 / 308Permanent URL moveThe target URL
302 / 307Temporary URL moveUsually the source URL
Long-lived 302s

A 302 left in place for months is one of the most common redirect mistakes. Google may eventually treat a long-standing 302 like a permanent redirect, but the mixed signal delays consolidation and can keep the wrong URL indexed. Choose the status code that matches the real intent, not simply the one that makes the page load.

4. Redirect chains

A redirect chain occurs when one redirect points to another redirect before reaching the final URL.

/old-page/
    ↓ 301
/page-two/
    ↓ 301
/new-page/
    ↓ 200

The crawler must follow multiple hops before reaching the final page. A direct redirect would be:

/old-page/
    ↓ 301
/new-page/
    ↓ 200

Every extra hop adds latency for users, uses crawl budget, and increases the chance that a crawler stops early. Googlebot follows up to 10 hops, but other crawlers and many tools give up sooner, and long chains make redirect configurations harder to maintain.

How chains build up

Chains usually develop gradually when websites change URL structures multiple times. A page moves from /old-page/ to /page-two/, then later from /page-two/ to /new-page/. If the original rule is never updated, the site ends up with a two-hop chain. Protocol and hostname rules often add hops too, for example http://example.com/page redirecting to https://example.com/page, then to https://www.example.com/page, then to https://www.example.com/page/.

Flattening a chain

Hop 1/old-page/Update this rule to point straight at the final URL.
Hop 2/page-two/Keep its own redirect to the final URL for links that still use it.
200 OK/new-page/Every source URL now reaches this in one hop.

Flattening means every legacy URL redirects once, directly to the final destination.

What to check

  • The original source URL and each intermediate URL.
  • The redirect status at every hop.
  • The final destination and whether it returns a 200 status code.
  • Whether intermediate redirects are still necessary.
  • Whether internal links point at any URL in the chain other than the final one.

5. Redirect loops

A redirect loop occurs when URLs redirect back to one another without ever reaching a final destination.

/page-a/
    ↓
/page-b/
    ↓
/page-a/
    ↓
/page-b/

There is no final page. Browsers stop and display an error such as ERR_TOO_MANY_REDIRECTS, and search engines cannot crawl or index the content.

Example: Conflicting protocol rules

Consider a server rule that sends http://example.com/page/ to https://example.com/page/. If another rule, perhaps in a CDN or plugin, incorrectly sends the HTTPS version back to HTTP, the two URLs redirect to each other forever.

Common causes

CauseWhat to review
Conflicting redirect rulesTwo rules that send the same URLs in opposite directions
HTTP and HTTPS rulesSSL settings at the CDN and origin server that disagree
WWW and non-WWW rulesHostname preferences set differently in the server and the CMS
Trailing-slash rulesOne rule adding a slash while another removes it
URL rewritingRegex rewrite patterns that match their own target
Overlapping systemsServer, CDN, and CMS plugin redirects applied to the same URLs

A redirect path should always end in a final response instead of returning to an earlier URL.

6. Redirect targets

The redirect target is the destination URL specified by a redirect.

/old-product/
    ↓ 301
/new-product/

Here, /new-product/ is the redirect target. A good redirect target represents the intended replacement page, returns a 200 status code, avoids further redirects, and follows the site's preferred protocol, hostname, and trailing-slash format.

Example: Relevant vs irrelevant targets

A product page at /products/widget/ that is permanently replaced by /products/widget-pro/ should redirect there. Redirecting it to the homepage instead gives users no equivalent content, and search engines often treat irrelevant redirects like this as a soft 404, which means the old URL's signals are not passed on. If no close replacement exists, a relevant parent category or a genuine 404 or 410 response is usually more honest than a blanket homepage redirect.

Common redirect target problems

Redirecting targets

The target returns another redirect, creating a chain.

Broken targets

The target returns a 404 or 5xx error.

Unrelated targets

The target has little in common with the original page, often the homepage.

Inconsistent URL format

The target uses the wrong protocol, hostname, or trailing-slash version.

Outdated targets

The target is an old URL that has since moved again.

Use a redirect map for migrations

Before a site migration, build a one-to-one redirect map of every old URL and its closest new equivalent. Prioritize URLs with backlinks, organic traffic, and internal links, then crawl the old URL list after launch to confirm each one reaches its target in a single hop.

7. How to audit redirects with SiteAuditLint

A website crawler such as SiteAuditLint reviews redirects across many URLs without checking each one manually. A crawl surfaces redirected URLs, redirect targets, redirect chains, redirect loops, and redirect-related response issues.

SiteAuditLint redirect audit workflow

  1. Enter your website URLStart with the homepage or the section of the website you want to audit.
  2. Start the crawlLet SiteAuditLint discover and request the pages within the crawl scope.
  3. Review redirect findingsLook for URLs returning 301, 302, 307, 308, and other redirect responses.
  4. Inspect affected URLsCompare the source URL, redirect status, target URL, and final response.
  5. Check chains and loopsFollow redirect paths to find unnecessary intermediate hops or loops.
  6. Fix and compareCorrect redirect issues where appropriate. Run another crawl after making changes and compare the new results with the previous audit.

What to look for in a crawl report

FindingWhat to review
301 redirectsWhether permanent URL changes use the intended redirect type
302 redirectsWhether temporary redirects are actually temporary
Redirect chainsURLs that pass through multiple hops before the final URL
Redirect loopsURLs that never reach a final destination
Redirect targetsWhether targets are relevant and accessible
Broken targetsRedirect destinations that return 4xx or 5xx errors
Internal linksInternal links that point to redirected URLs instead of final URLs
HTTP/HTTPS redirectsWhether protocol redirects are consistent and single-hop
WWW/non-WWW redirectsWhether hostname redirects are consistent
Crawl comparisonsWhether redirect issues were resolved or new ones appeared between audits
Fix internal links, not just redirects

Redirects are a safety net for external links and bookmarks. Internal links, canonical tags, and XML sitemap entries should point directly to final URLs, so users and crawlers never pass through a redirect you control. A crawler identifies the patterns, but the correct target should still be judged against the purpose and content of the original URL.

8. Practical exercise: Review the redirect structure of a page

Use this exercise to review redirect implementation on a real website.

Redirect audit checklist

0 of 6 tasks completed

9. Key takeaways

  • A redirect sends users and crawlers from a source URL to a target URL.
  • A 301 generally communicates a permanent URL move and consolidates signals onto the target.
  • A 302 generally communicates a temporary URL move and keeps the source URL indexed.
  • Redirect chains occur when multiple hops are required before reaching the final URL.
  • Redirect loops prevent a redirect path from ever reaching a final destination.
  • Redirect targets should be relevant, accessible, and appropriate for the original URL.
  • Irrelevant redirects, such as sending every removed page to the homepage, can be treated as soft 404s.
  • Internal links should point directly to final URLs instead of passing through redirects.
  • SiteAuditLint helps identify redirect patterns and issues across a website.

Knowledge check

1. A service page has been permanently renamed. Which redirect fits best?
2. /old-page/ redirects to /page-two/, which redirects to /new-page/. What is the better fix?
3. A browser shows "too many redirects" for a page. What is the most likely cause?
4. What should internal links point to after a URL has been redirected?

Ready to go further? Review the technical SEO checklist, or revisit Lesson 02: Canonicals.