A 301 redirect is an HTTP status code that signals a permanent URL change. When a browser or search engine bot requests a URL with a 301 redirect, the server responds with the new destination URL and the message 'Moved Permanently.' Users and bots are automatically forwarded to the new location, and search engines transfer the majority of the original page's ranking authority (approximately 90-99%) to the destination URL.
301 vs. Other Redirect Types
- 301 (Moved Permanently): Permanent redirect — use for URL changes, site migrations, HTTP to HTTPS. Passes most link equity.
- 302 (Found / Temporary Redirect): Temporary redirect — use when the original URL will return. Does NOT reliably pass link equity.
- 307 (Temporary Redirect): HTTP/1.1 temporary redirect, maintains request method. Not for SEO purposes.
- 308 (Permanent Redirect): Like 301 but maintains HTTP method. Used in some modern frameworks like Next.js.
- Meta refresh: Client-side redirect (HTML-based) — slow, passes no equity, SEO unfriendly.
When to Use 301 Redirects
- Site migrations: When moving from HTTP to HTTPS (redirect all HTTP URLs to HTTPS equivalents)
- Domain changes: Moving from old-domain.com to new-domain.com (preserve link equity)
- URL restructures: Changing /blog/2019/article-name to /blog/article-name
- Page consolidation: Merging two similar pages into one canonical destination
- Removing pages: When deleting a page that has backlinks, redirect to the most relevant existing page
- www vs. non-www: Redirect all traffic to a single canonical version
301 Redirects and Link Equity
When external sites link to a URL that has a 301 redirect, Google consolidates that link equity at the destination URL. Historically there was some 'redirect tax' (a small equity loss), but Google has confirmed that 301 redirects pass full PageRank for well-established redirects. The key condition: the redirect must be in place long enough for Google to process and update its index.
During site migrations, 301 redirects are non-negotiable. Without them, all the backlinks pointing to old URLs effectively become broken links — their equity is lost entirely. Proper migration with 301 redirects preserves the accumulated SEO value built over years.
Redirect Chains and Loops
A redirect chain occurs when URL A redirects to URL B, which redirects to URL C. Each hop in the chain introduces latency (slowing page load) and potentially reduces equity transfer. Best practice is to update all redirect sources to point directly to the final destination URL, eliminating intermediate hops.
A redirect loop is a circular chain (A redirects to B, B redirects to A) — this results in an error and breaks both user experience and bot crawling. Always test redirects with tools like Screaming Frog or browser developer tools to verify the final destination.
Implementing 301 Redirects
Implementation varies by platform:
- Next.js: Use the redirects() function in next.config.js (permanent: true generates 308 in Next.js, equivalent to 301 for SEO)
- Apache: .htaccess file with Redirect 301 or RewriteRule directives
- Nginx: server block with return 301 directive
- WordPress: Via Yoast SEO plugin redirects, or .htaccess
- Vercel / CDN: Platform-level redirect rules (recommended for performance — handled before origin server)
Sagara implements redirects at the Next.js config level for all client sites, with Vercel platform-level redirects as a secondary layer for edge-speed performance. All redirects are tested post-implementation via curl -I to verify the correct status code and destination URL.