What are redirects 307 vs 308?

What is an HTTP redirect?

An HTTP redirect points one URL address to another. A browser might try to open a redirected URL. It then opens a page with a different address. This happens on the server. The server sends a 3xx status code. This code signals the resource has moved. The server also sends a new URL location. The browser then requests this new page. This switch is seamless for the user.

Why are redirects critical for SEO?

Redirects are a key part of technical SEO. First, they preserve link equity. A page with good backlinks may move. A permanent redirect tells search engines to pass its ranking power. The old URL’s value moves to the new one. This action prevents a large loss in rankings. Second, they prevent bad user experiences. A deleted URL without a redirect causes a 404 Not Found error. This frustrates users and search engines. Redirects guide users and crawlers to the live page. Finally, redirects help fix duplicate content. Many sites have multiple versions of one page. For example, HTTP and HTTPS versions exist. Redirects point all versions to a single main URL. This is called a canonical URL. All SEO value is then focused on one address.

When should you use a redirect?

Use a redirect when a resource’s location changes. This can be a permanent or temporary move. Common cases include:

  • Permanent Content Moves. This is the most common use. It applies when a URL changes for good. Or when a page is deleted and its content is merged. It is also used in a full site migration. For example, moving from HTTP to HTTPS.
  • Temporary Content Moves. These are for short-term changes. For instance, a page may redirect during site work. Or for A/B testing on a different page. It can also point to a seasonal promotion page.

How do you implement a redirect?

The best way is a server-side redirect. You add rules to server configuration files. For Apache servers, this is the .htaccess file. For Nginx servers, you modify the nginx.conf file. If you use a CMS like WordPress, plugins can help. For example, the “Redirection” plugin is great. It offers a simple way to manage redirects. Server-level redirects are fast and efficient. They are processed before any page content loads.

The Anatomy of Redirects: A Deep Dive into 3xx Status Codes

The 3xx family of HTTP codes includes several redirect types. Each has a specific job. Knowing the difference is key for correct use. The main split is between permanent and temporary redirects. Another factor is how they handle request methods, like GET or POST.

The web has grown more complex. Early redirect codes (301, 302) had flaws. They were fine for simple GET requests. However, they handled POST requests poorly. For example, a user submits a form with a POST request. The URL is redirected with a 301 code. Many browsers would change the next request to GET. This action causes the form data to be lost. This problem led to stricter redirect codes. The 307 and 308 status codes were born. They ensure the request method is preserved.

Permanent Redirects 301 and 308

Permanent redirects tell clients a URL has changed for good. They should update their records to the new URL. These are the most important redirects for SEO.

  • 301 Moved Permanently. The 301 redirect is the most common type. It states the resource has a new, permanent home. Future requests should use the new URL. From an SEO view, a 301 passes most link equity. It tells search engines to transfer rankings. However, its main flaw is that it lets clients change the request method. A POST request often becomes a GET request. This is fine for content pages but breaks forms.
  • 308 Permanent Redirect. The 308 redirect is the modern, stricter version of the 301. It solves the request method problem. A 308 strictly forbids changing the request method. If the first request was a POST, the next must also be a POST. This makes it ideal for permanently moved APIs or forms. For SEO, Google treats a 308 just like a 301. It passes the same link equity. The choice is technical, not an SEO one.

Temporary Redirects 302 and 307

Temporary redirects are for when a resource moves for a limited time. They tell clients to keep using the original URL for future requests. Therefore, they do not pass link equity.

  • 302 Found. The 302 redirect was the first temporary redirect. It shows the resource is at a different URI for now. Because the move is not permanent, a 302 does not pass link equity. The original URL keeps its SEO value. Like the 301, the 302 code was unclear. Many clients changed POST requests to GET. This makes it a less reliable choice today.
  • 307 Temporary Redirect. The 307 redirect is the strict, clear version of the 302. It serves the same purpose but acts differently. Like its permanent twin (308), the 307 does not allow changing the request method. A POST request will stay a POST request. For SEO, a 307 passes no link equity. It tells search engines to keep the old URL indexed.

Choosing the Right Redirect

Now you know what each redirect does. The next step is choosing the proper one. Your decision depends on two key questions:

  1. Is the move permanent or temporary?
  2. Does the original HTTP request method need to be saved?

The most important technical difference is about the HTTP request method. It has major practical effects. For example, think of a checkout page. A user enters payment details and clicks “Submit.” This sends a POST request with their data. Now, say the page moves to a new URL. If you use a 301 redirect, the browser might change the request to GET. The user’s payment data is lost. The transaction fails.

Do you need an SEO Audit?

Let us help you boost your visibility and growth with a professional SEO audit.

Get in Touch

However, if you use a 308 redirect, the method is preserved. The browser repeats the POST request to the new URL. The transaction proceeds smoothly. For simple content pages, a 301 is fine. For forms or APIs, use a 308 for permanent moves. Use a 307 for temporary moves.

Permanent vs. Temporary: A Decision Framework for SEO

For SEO, the split between permanent and temporary is vital.

  • Use Permanent Redirects (301 or 308) when a change is forever. This is right for a site migration. Or for moving from HTTP to HTTPS. Use it when changing a page’s URL for good. A permanent redirect tells search engines to move all SEO value.
  • Use Temporary Redirects (302 or 307) when a change is short-term. For instance, when a page is down for maintenance. Or for running an A/B test. This tells search engines to keep the original URL indexed. It does not pass link equity.

Google’s crawlers understand all redirect types. For ranking signals, Google treats 301 and 308 redirects equally. They are strong signals to pass link equity. In contrast, 302 and 307 redirects are weak signals. They usually don’t pass link equity. However, if a 302 is left for a long time, Google may treat it as a 301. This is not a good strategy. Always use the code that fits your intent.

A Practical Implementation Guide

Knowing which redirect to use is half the battle. Implementing it correctly is the other half. Here is a practical guide for common web server setups.

Server-Side Redirects: The Gold Standard

Server-side redirects are the best method for SEO and users. The web server executes them instantly. This is much faster and more reliable than client-side methods. Search engine crawlers also process them more efficiently.

On Apache Servers (via .htaccess)

On Apache servers, you set up redirects in the .htaccess file. This file is in your site’s root directory. To redirect a single page, add a line like this:

# Permanent 301 Redirect
Redirect 301 /old-page.html [https://www.example.com/new-page.html](https://www.google.com/search?q=https://www.example.com/new-page.html)

# Permanent 308 Redirect for a form

Redirect 308 /contact-form [https://www.example.com/new-contact](https://www.google.com/search?q=https://www.example.com/new-contact)

# Temporary 307 Redirect for maintenance

Redirect 307 /products [https://www.example.com/maintenance.html](https://www.google.com/search?q=https://www.example.com/maintenance.html)
Code language: PHP (php)

On Nginx Servers (via nginx.conf)

For Nginx, you configure redirects inside the server block of your config file. Use the return directive:

# Permanent 301 Redirect
location = /old-page {
return 301 [https://www.example.com/new-page](https://www.example.com/new-page);
}

# Permanent 308 Redirect

location = /api/v1/submit {
return 308 [https://www.example.com/api/v2/submit](https://www.example.com/api/v2/submit);
}
Code language: PHP (php)

Within WordPress (via Plugins)

If you would rather not edit server files, use a WordPress plugin. “Redirection” is a popular, reliable choice. You install the plugin. Then you go to its settings page. Enter the old “Source URL” and the new “Target URL.” Choose the redirect type (301, 308, etc.) from a menu. The plugin handles the rest.

Client-Side Redirects: Use With Caution

Client-side redirects run in the user’s browser. They use JavaScript or a meta refresh tag. While Google can process them, they are a last resort. They are much slower than server-side redirects. This is because the browser must first download the page. Only then does it find the redirect rule. This adds delay and is a weak SEO signal.

Mastering Redirects: Common Mistakes & Best Practices

A bad redirect can do more harm than good. It can hurt your SEO value and frustrate your users. Here are common mistakes to avoid and best practices to follow.

Critical Mistakes That Erode SEO Value

  • Mistake 1: Redirect Chains and Loops. A redirect chain is when Page A redirects to B, which redirects to C. A redirect loop is worse. Page A redirects to B, and B redirects back to A. Both problems slow down your site. They also waste your crawl budget. Google might give up after a few hops. To fix this, audit your site with a tool like Screaming Frog. Then, change the first redirect to point directly to the final page.
  • Mistake 2: The Irrelevant Redirect. This happens when you delete a page. You then redirect it to an unrelated page, like the homepage. This creates a bad user experience. Google sees this mismatch. It will often ignore the redirect and treat it as a “Soft 404.” No link equity is passed. Always redirect to the most topically relevant page. If no such page exists, it is better to let the URL return a 404 (Not Found) or 410 (Gone) error.
  • Mistake 3: Using a Temporary Redirect for a Permanent Move. This is a very common and damaging error. A site owner moves a page forever. But they use a 302 or 307 redirect. This tells search engines not to pass link equity. It negates the whole point of redirecting for SEO. Always use a 301 or 308 for a permanent change.

SEO Best Practices for Flawless Execution

  • The Rule of Relevance. This is the most important rule. A redirect should always take a user to similar content. Prioritize the closest topical match.
  • Internal Link Housekeeping. After creating a redirect, update your site. Find all internal links pointing to the old URL. Change them to point directly to the new URL. This prevents internal redirect chains. It also helps search engines crawl your site cleanly.
  • Auditing and Monitoring. Regularly crawl your site to locate redirect issues. Use tools like Ahrefs or Sitebulb. Moreover, watch the “Page with redirect” report in Google Search Console. It helps you see what Google sees.
  • Managing Redirects in a Site Migration. After a site migration, keep redirects active. Keep them for at least one year. This ensures all SEO signals are passed. For a domain move, use the Change of Address tool in Google Search Console.

Frequently Asked Questions (FAQ)

  1. Is a 308 or a 301 redirect better for SEO?

    Neither is better for pure SEO. Google treats them as equal permanent redirects. They pass the same link equity. The choice is technical. Use 301 for most content pages. Use 308 only when you must preserve the request method, like for forms or APIs.

  2. What does “Page with redirect” in Google Search Console mean?

    This status is usually normal. It’s not an error. It just means Google found a URL that redirected to another one. Google then indexes the final URL. This report is useful for checking that your redirects are working as you intend.

  3. How long should I keep redirects after a site migration?

    The SEO best practice is to keep them for at least one full year. Ideally, keep them active forever. This gives Google plenty of time to transfer all ranking signals. It also helps users with old bookmarks or sites that link to your old domain.

Not getting enough traffic from Google?

An SEO Audit will uncover hidden issues, fix mistakes, and show you how to win more visibility.

Request Your Audit

Related Posts