Redirect manual: which redirect types exist, when to use them, and how not to break SEO
This is not a blog post. It is a working reference page for teams, developers, and SEOs who need a practical guide to redirect types, production patterns, and decision rules.
Reference
Which redirect types exist
Not every redirect solves the same problem. The most common production mistake is not the presence of a redirect, but choosing the wrong one.
A permanent server-side redirect.
A temporary server-side redirect.
A temporary redirect that preserves the HTTP method.
A permanent redirect that preserves the HTTP method.
A redirect implemented in HTML instead of HTTP.
A redirect triggered in the browser after page load.
Decision
Which redirect to use in real scenarios
The most useful question is not “which status code exists?” but “which one is correct in this case?”
A page moved to a new slug permanently
The URL changed permanently, so browsers and search engines need a stable permanent signal.
A full move to a new domain
This is a classic permanent migration. Old URLs should point directly to final canonical URLs.
A temporary promo page or short-term campaign
When the campaign ends, the original URL should return as the main destination.
An API endpoint moved temporarily, but POST must stay POST
307 preserves the request method and is better for technical flows.
An API endpoint moved permanently, and the method must stay the same
It combines a permanent move with preservation of the request method.
You want to “solve it quickly” with a JavaScript redirect
That is usually a temporary hack that later damages SEO, debugging, and crawl stability.
Checklist
Production-safe redirect rules
Even the correct status code is not enough if the redirect layer is assembled carelessly.
Prefer one direct hop to the final canonical URL instead of a chain with two or three intermediate steps.
Do not mix multiple goals in one chain. HTTP to HTTPS, non-www to www, and old-path to new-path should ideally collapse into one final redirect.
Do not keep temporary 302s in place when the decision is already permanent.
Do not redirect removed content to the home page just to avoid a 404.
Test redirects not only in the browser, but as a real HTTP chain: intermediate hops, final URL, response time, and issues.
Before rollout, the migration map should be checked on the most linked and most important URLs.
Risks
What not to do
These are the patterns that most often make a redirect layer technically “working” but operationally harmful.
It mixes permanent and temporary semantics, complicates crawl paths, and adds extra failure points.
This is weak UX and weak semantic matching. For SEO, it is often worse than an honest 404/410 or a relevant target.
The browser may render the right screen, but the HTTP response stays wrong for search engines and external clients.
That “later” often never happens. The migration ends up living on a weak redirect mechanism for months.
If a URL moved permanently, in most cases you want a 301.
If the change is temporary, use a 302.
If this is an API or form flow and the HTTP method must be preserved, look at 307 or 308.
If the idea is to solve it with JavaScript redirect or meta refresh, the architectural choice is usually wrong.
Is 301 always better than 302?
No. 301 is better only when the change is permanent. If the change is temporary, 302 is the more honest and correct choice.
Can I use 308 instead of 301?
Yes, but for most content SEO cases 301 remains the more familiar and expected option. 308 is more useful when preserving the HTTP method matters.
When is 404 or 410 better than a redirect?
When the old URL has no relevant replacement. Redirecting to an unrelated page only to avoid a 404 is often worse.
Even after reading the manual, you still need to test redirects on a real chain
The correct redirect type on paper does not guarantee that production returns it without extra hops, loops, or temporary responses. The final check should always happen at HTTP level, not just in the browser UI.
Related Paths
Use the manual with live tools and deeper articles
Status Signals
301 Redirect Checker
Use a 301 redirect checker to confirm that old URLs resolve with the right permanent status code and land on the intended canonical destination.
Open resourceMigration QA
Redirect Chain Checker
Use a redirect chain checker to identify multi-hop redirects, weak canonical flows and chain regressions after deploys or migrations.
Open resourceLaunch Prep
Website Migration Redirect Checklist
Prepare for domain, HTTPS and URL-structure migrations with a redirect checklist focused on canonical targets, chain cleanup and repeatable validation.
Open resourceSEO
What Is a 301 Redirect and Why It Matters for SEO
A 301 redirect permanently moves a URL to a new destination. Learn how it passes link equity and when you should use it over a 302.
Open resource