HTTP Status Codes
What is a permanent redirect?
A permanent redirect is an HTTP redirect that tells browsers and search engines a URL has moved to a new location forever and will not be returning to its original address. It is the standard method for handling URL changes that are intended to last indefinitely, domain migrations, page restructuring, rebranding, and anything else where the old URL is being retired permanently.
When a browser or web crawler encounters a permanent redirect, it follows the redirect to the new URL and updates its records. Browsers cache the new destination so future visits go directly to the new URL. Search engines update their index to replace the old URL with the new one and transfer accumulated SEO equity to the destination.
How a permanent redirect works
When a visitor or crawler requests a URL that has a permanent redirect in place, the server responds with a 3xx status code and a Location header pointing to the new URL. The browser follows the location automatically and loads the destination page.
The key technical property that makes a redirect permanent rather than temporary is cacheability. Permanent redirects are cached by browsers, meaning on subsequent visits the browser goes directly to the new URL without making a request to the original. This is efficient for performance but means permanent redirects need to be set up carefully, once a browser has cached a permanent redirect, removing it does not immediately restore access to the original URL for users who have already visited.
Which status codes are permanent redirects
There are two HTTP status codes that signal a permanent redirect:
301 redirect: the most widely used permanent redirect. It tells browsers and search engines the URL has moved permanently and passes full SEO equity to the destination. Most browsers switch the request method from POST to GET when following a 301, which is acceptable for the vast majority of web redirects involving standard browser navigation.
308 redirect: the newer permanent redirect introduced to fill a gap the 301 left. It behaves identically to a 301 in terms of permanence and SEO treatment, but strictly preserves the original HTTP request method. A POST request remains a POST at the destination. This makes it the correct choice for permanent redirects involving API endpoints, webhooks, and form submissions where the request method carries meaning.
For almost all standard web use cases, page moves, domain migrations, HTTP to HTTPS redirects, www to non-www, the 301 is the right choice. The 308 is reserved for situations where method preservation matters.
Permanent redirects and SEO
The relationship between permanent redirects and SEO is one of the most important reasons to use them correctly. When a URL accumulates backlinks, traffic, and authority over time, that value is associated with the specific URL. If that URL disappears without a redirect, all of that accumulated value is lost, incoming links lead to a 404 error and search engines eventually drop the URL from their index.
A permanent redirect preserves this value by transferring it to the new URL. Search engines follow the redirect, recognise it as permanent, and consolidate the link juice and ranking signals from the old URL to the new one. Over time the old URL is removed from the index and the new URL inherits its authority.
This transfer is not always instant. Google can take days to weeks to fully process a permanent redirect and update its index depending on how frequently it crawls the affected URLs. High-traffic pages on well-established sites tend to update faster than low-traffic pages on newer sites.
When to use a permanent redirect
A permanent redirect is appropriate any time a URL is changing and the old address will not be reused. The most common scenarios are:
Domain migration: moving an entire website from one domain to another, whether due to rebranding, a company merger, or acquiring a better domain. Every URL on the old domain should have a permanent redirect pointing to its equivalent on the new domain.
HTTP to HTTPS: redirecting all HTTP traffic to HTTPS is one of the most universal uses of permanent redirects. Every page on the HTTP version of a site should permanently redirect to its HTTPS equivalent.
WWW to non-www or vice versa: if a site is accessible at both
www.example.comandexample.com, one version should permanently redirect to the other to consolidate SEO equity and prevent duplicate content.URL restructuring: changing URL slugs, removing dates from URLs, or reorganising site architecture all require permanent redirects from old URL patterns to new ones.
Page consolidation: merging two or more pages into a single page and permanently redirecting the retired URLs to the new combined destination.
Domain parking: pointing parked domains permanently to a primary domain so that any traffic or links pointing to the parked domain are forwarded correctly.
Permanent vs temporary redirects
The distinction between permanent and temporary redirects is one of the most important concepts in redirect management. Getting it wrong has real consequences for both user experience and SEO.
A permanent redirect tells search engines to update their index, transfer SEO equity, and stop crawling the old URL over time. Browsers cache it and skip the original URL on future visits. It is a one-way signal, use it only when you are certain the old URL is gone for good.
A temporary redirect tells search engines to keep the original URL in their index and continue crawling it. No SEO equity is transferred to the destination. Browsers do not cache it permanently. It is reversible and appropriate for short-term situations.
The most damaging mistake in redirect management is using a temporary redirect (typically a 302) when a permanent redirect is what you actually need. Search engines keep indexing the old URL, SEO equity does not transfer, and rankings can suffer as a result. Always match the redirect type to the intent.
Permanent redirects and caching
Because permanent redirects are cached by browsers, they require more care than temporary redirects when it comes to making changes. Once a browser has cached a permanent redirect from URL A to URL B, it will continue going directly to URL B even if you remove or change the redirect on the server. The cached redirect persists until it expires or the user clears their browser cache.
This means if you set up a permanent redirect incorrectly, pointing to the wrong destination, for example, some users will continue being sent to the wrong place even after you fix it on the server. Always double-check permanent redirect destinations before deploying them, and be especially careful when setting up redirect chains that could lock users into a cached path.
Common mistakes with permanent redirects
Using a temporary redirect for a permanent move: the most common and costly mistake. Always use a 301 or 308 for moves that are intended to last indefinitely.
Redirecting everything to the homepage: during site migrations it is tempting to point all old URLs to the homepage with a permanent redirect rather than mapping each page individually. Search engines treat these as soft 404s and do not pass SEO equity. Always map old URLs to their closest equivalent new URL.
Not redirecting all URL variants: a complete permanent redirect setup covers HTTP and HTTPS, www and non-www, and any other variants of the URL that are accessible. Missing a variant means some traffic and links are not being captured correctly.
Creating redirect chains: a redirect chain happens when URL A redirects to URL B which redirects to URL C. Each hop dilutes SEO equity and adds latency. Audit redirects regularly and always point directly to the final destination.
Forgetting to update internal links: permanent redirects preserve external link equity but internal links should always be updated to point directly to the new URL rather than relying on the redirect. This reduces unnecessary hops and keeps your site architecture clean.