Skip to main content

HTTP Status Codes for Redirects

Every HTTP redirect uses a 3xx status code to tell the client where to go. Understanding these codes is essential for debugging redirects and making informed SEO decisions. For a broader overview, see our guide to HTTP redirects.

Redirect Status Codes

300

Multiple Choices

The request has more than one possible response. The user or agent should choose one of them. Rarely used for redirects.

SEO Impact

Minimal. Search engines may not follow this redirect reliably.

When to Use

Content negotiation — offering the same resource in multiple formats (HTML, PDF, etc.).

301

Moved Permanently

The requested resource has been permanently moved to a new URL. The Location header specifies the new URL.

SEO Impact

High. Passes approximately 99% of link equity to the new URL. Search engines update their index to show the new URL.

When to Use

Domain migrations, URL restructuring, HTTP-to-HTTPS migration, consolidating duplicate pages.

302

Found (Temporary Redirect)

The requested resource is temporarily located at a different URL. The original URL should remain in the index.

SEO Impact

Medium. Search engines may keep the original URL in the index. Link equity transfer is inconsistent.

When to Use

Temporary maintenance pages, A/B testing, location-based content, device-based redirects.

303

See Other

The response can be found at a different URL using a GET request. Typically used after a POST request to prevent form resubmission.

SEO Impact

Minimal. Not typically used for SEO purposes.

When to Use

Redirecting after a form submission to a thank-you page.

304

Not Modified

The resource has not been modified since the last request. Used with conditional caching. Not a redirect.

SEO Impact

None. This is a caching response, not a redirect.

When to Use

Browser caching — telling the client their cached version is still valid.

305

Use Proxy

Deprecated. The requested resource must be accessed through the specified proxy. Rarely used.

SEO Impact

None. Deprecated and not used for redirects.

When to Use

Legacy proxy configurations. Not recommended for modern use.

307

Temporary Redirect

The requested resource is temporarily at a different URL. Unlike 302, the request method must not change (POST stays POST).

SEO Impact

Medium. Similar to 302 — search engines may keep the original URL. Preserves request method.

When to Use

Temporary redirects where POST requests must be preserved, OAuth callbacks, temporary maintenance.

308

Permanent Redirect

The requested resource has been permanently moved to a new URL. Unlike 301, the request method must not change.

SEO Impact

High. Similar to 301 — passes link equity and updates the index. Preserves request method.

When to Use

Permanent redirects where POST requests must be preserved, API endpoint migrations.

Quick Reference Table

CodeNameTypePasses Equity
300Multiple ChoicesRedirectN/A
301Moved PermanentlyRedirect~99%
302Found (Temporary Redirect)RedirectInconsistent
303See OtherRedirectN/A
304Not ModifiedCacheN/A
305Use ProxyDeprecatedN/A
307Temporary RedirectRedirectInconsistent
308Permanent RedirectRedirect~99%

Decision Flowchart

1.

Is this redirect permanent or temporary?

Permanent →

Use 301 (default) or 308 (if preserving POST method)

Temporary →

Use 302 (default) or 307 (if preserving POST method)

Frequently Asked Questions

What is the most common redirect status code?

301 (Moved Permanently) is the most commonly used redirect status code. It tells search engines the page has permanently moved and passes nearly all link equity to the new URL.

What is the difference between 301 and 302?

A 301 redirect is permanent — search engines replace the old URL with the new one in their index. A 302 redirect is temporary — search engines keep the old URL in their index. Use 301 for permanent moves and 302 for temporary ones.

Do all redirects pass link equity?

301 redirects pass approximately 99% of link equity. 302 redirects may pass link equity inconsistently. 307 and 308 redirect status codes have less data on equity transfer but generally follow the same pattern as their 301/302 counterparts.

Can I use a 302 redirect permanently?

You can, but it's not recommended. Search engines may eventually treat a 302 as a 301 if the redirect has been in place for a long time, but this is unpredictable. Always use 301 for permanent redirects.

What status code should I use for maintenance?

Use a 302 (or 307) redirect during maintenance. This tells search engines the redirect is temporary and they should keep the original URL in their index.

Related Comparisons

Related Guides

More Redirect Checker Guides

Test Your Redirects

Use the Redirect Checker to trace full redirect chains and verify status codes.

Open Redirect Checker