Skip to content
SiteShiftCo

301 redirect

An HTTP response status code that permanently sends visitors and search engines from one URL to another, used to preserve traffic and rankings during URL changes.

Also known as: 301, permanent redirect, HTTP 301

A 301 redirect is an HTTP response status code that tells web browsers and search engines that a URL has permanently moved to a new location. When a user (or bot) requests the old URL, the server responds with a 301 status and a Location header pointing to the new URL. The browser then follows the redirect and loads the new URL.

301 redirects are essential for preserving traffic, search rankings, and inbound links when URLs change.

What 301 means

HTTP status codes in the 3xx range indicate redirects:

CodeMeaning
301Moved Permanently
302Found (temporary)
303See Other
307Temporary Redirect (preserves request method)
308Permanent Redirect (preserves request method)

301 and 308 both indicate permanent moves; 302 and 307 indicate temporary moves. For SEO purposes, 301 is the most commonly used.

How a 301 redirect works

  1. A user (or search engine bot) requests https://example.com/old-url
  2. The web server responds with HTTP status 301 Moved Permanently and a Location header: Location: https://example.com/new-url
  3. The browser receives the response and automatically requests the new URL
  4. The new page is displayed
  5. Search engines update their index over time, replacing the old URL with the new one and transferring most ranking signals

Why 301 redirects matter

When URLs change, redirects:

  • Preserve user experience. Visitors using bookmarks or following old links land on the new page rather than seeing a 404 error
  • Preserve search rankings. Search engines transfer most ranking signals from the old URL to the new one (Google has confirmed this)
  • Preserve inbound links. External links to the old URL continue to send traffic and link equity to the new URL
  • Avoid SEO disruption during site migrations, redesigns, and reorganizations

Common use cases

  • Site migration to a new platform. Redirect every old URL to its corresponding new URL
  • Domain change (e.g., oldname.comnewname.com)
  • HTTP to HTTPS migration
  • www to non-www consolidation (or vice versa)
  • Content reorganization. Moving /blog/post to /articles/post
  • Removed content. Redirecting deleted pages to relevant alternatives
  • URL canonicalization. Forcing the canonical version of a URL
  • Trailing slash standardization. /page/page/ or vice versa

Where redirects are configured

Different platforms handle redirects differently:

PlatformHow redirects are configured
Apache.htaccess file with RewriteRule or Redirect 301 directives
Nginxnginx.conf with rewrite or return 301 directives
CloudflareBulk Redirects, Single Redirects, or Page Rules in dashboard
Netlify_redirects file or netlify.toml
Vercelvercel.json redirects configuration
Cloudflare Pages_redirects file
WordPressPlugins (Redirection, Rank Math, Yoast) or .htaccess
ShopifyURL Redirects in admin
SquarespaceURL Mappings in settings
WebflowSite settings → Hosting → 301 Redirects
Static site generatorsConfiguration files specific to the host

301 vs 302

Aspect301 (permanent)302 (temporary)
Intended durationPermanentTemporary
Search engine behaviorTransfers ranking signals to new URLKeeps original URL in index
Browser cachingStrong (long-lived)Weak (revalidated more often)
Typical useURL has truly movedA/B testing, maintenance pages

Using 302 when 301 is appropriate (or vice versa) can cause SEO confusion. For permanent moves, 301 is the standard choice.

Bulk redirects for migrations

A site migration often involves thousands of redirects. Common approaches:

  1. Crawl the existing site to capture all current URLs (Screaming Frog, Sitebulb)
  2. Map old URLs to new URLs in a spreadsheet
  3. Implement redirects in bulk via the platform’s redirect file or admin
  4. Test every redirect after deployment
  5. Monitor server logs and Search Console for 404 errors

For very large sites, regex-based redirect rules can handle URL pattern changes in bulk (e.g., /blog/(.*)/articles/$1).

Redirect chains and loops

Two patterns to avoid:

  • Redirect chain. A → B → C → D. Each hop adds latency and can dilute ranking signals. Always redirect directly: A → D.
  • Redirect loop. A → B → A. Browsers detect and stop these, but they break the page entirely. Caused by misconfigured rules.

Tools like Screaming Frog identify redirect chains and loops during a site audit.

How long ranking signals take to transfer

When Google sees a 301 redirect, it transfers most ranking signals from the old URL to the new one. The transfer is not instant; it can take days to weeks depending on crawl frequency and the size of the change. Persistent 301s (kept in place indefinitely) typically transfer signals fully.

Removing a 301 redirect after a short time can cause search engines to revert to the old URL or treat the new URL as unrelated.

Common misconceptions

  • “301 redirects lose ranking power.” Modern Google guidance confirms 301s transfer ranking signals fully (or nearly so).
  • “Redirects are temporary fixes.” Properly configured 301s should persist indefinitely; removing them later breaks the redirect chain.
  • “Redirects can be added later if pages get traffic.” Best practice is to set up redirects before launch; missing redirects mean lost traffic from day one.
  • “301 and canonical do the same thing.” 301 redirects users and bots to a new URL; canonical tells search engines which version to index while keeping multiple URLs accessible.