linkutm Logo
Glossary Term

308 Redirect

glossary 308 redirect featured

A 308 redirect is an HTTP status code that permanently sends one URL to another while preserving the original request method. It tells browsers and search engines that a page has moved for good to a new location. Unlike a 301, a 308 guarantees the browser repeats the exact request method and body, so a POST stays a POST.

The full label is “308 Permanent Redirect.” It was defined in RFC 7538 in 2015 as the permanent counterpart to the 307 temporary redirect.

HTTP/1.1 308 Permanent Redirect
Location: https://example.com/new-permanent-page

How a 308 Redirect Works

A 308 redirect runs at the server level before any page content loads. When a client requests the old URL, the server returns a 308 status and a Location header pointing to the new URL. The client then reissues its original request to that new address.

The process happens in three steps:

  1. A user or bot requests the original URL. The request reaches the server, including its method (GET, POST) and any body data.
  2. The server returns a 308 status and the new location. No content loads at the original address.
  3. The client repeats the same request at the new URL. The method and body are carried over unchanged.

Browsers cache a 308 aggressively, the same way they cache a 301. Once cached, the browser skips the old URL and goes straight to the destination on future visits. That is correct behavior for a move that is final.

308 vs 301 Redirect

Both are permanent redirects, and search engines treat them the same. The difference is method handling.

  • 301 (Moved Permanently). Permanent. Browsers historically converted a POST to a GET when following it, which could drop form or API data.
  • 308 (Permanent Redirect). Permanent. The browser must repeat the exact method and body, so a POST stays a POST.

For a normal GET page move, the two behave identically, and a 301 has broader support across old clients and proxies. Reach for a 308 when a permanent redirect must keep a POST or PUT intact, such as an API endpoint or form handler. For the standard permanent case and its setup, see the 301 redirect glossary entry.

On the SEO side, both transfer ranking signals to the new URL and drop the old one from the index over time. Google’s Gary Illyes confirmed in 2016 that all 30x redirects pass full PageRank, and Google treats a 308 the same as a 301.

308 vs 307 Redirect

The difference between a 308 and a 307 is permanence. A 308 is permanent. A 307 is temporary. Both preserve the request method and body, so a POST survives either one.

  • 307 (Temporary Redirect). The original URL stays indexed because the move is expected to reverse.
  • 308 (Permanent Redirect). Ranking signals move to the new URL and the original drops from the index.

Choose based on whether the move is final. Use a 308 for a permanent method-preserving move and a 307 for a temporary one.

When to Use a 308 Redirect

Use a 308 for a permanent move where the request method must survive. Common cases include:

  • API endpoint changes. Permanently move a POST or PUT endpoint without downgrading it to a GET.
  • Form handler migrations. Redirect a form submission URL for good while keeping the payload intact.
  • HTTPS or domain moves on non-GET routes. Enforce a permanent switch without losing method or body data.

For ordinary page and URL moves, a 301 is usually the safer default because of its universal client support. Choose a 308 specifically when method preservation matters.

After setting any redirect, confirm it returns the status code you intended. linkutm’s redirect checker shows the exact code and the full redirect path for any URL.

Frequently Asked Questions

What is a 308 redirect?

A 308 redirect is a server response that permanently points one URL to another while preserving the request method. It tells browsers and search engines the page has moved for good. Because the browser repeats the exact method and body, a POST request stays a POST.

What is the difference between a 308 and a 301 redirect?

Both are permanent redirects that transfer ranking signals to the new URL. The difference is method handling. A 301 historically let browsers change a POST to a GET, while a 308 forces the browser to repeat the original method and body unchanged.

Is a 308 redirect good for SEO?

Yes, a 308 is fine for SEO, since Google treats it the same as a 301 and confirmed 30x redirects pass full PageRank. It transfers ranking signals to the new URL and removes the old one from the index over time. There is no SEO advantage over a 301 for a standard page move.

What is the difference between a 308 and a 307 redirect?

A 308 is permanent and a 307 is temporary. Both preserve the request method and body. A 308 moves ranking signals to the new URL, while a 307 keeps the original URL indexed because the move is expected to reverse.

To confirm a redirect returns the right status code and avoids chains, run the free redirect checker at linkutm.