HTTP 301 Moved Permanently: What It Means and When You See It
Quick Answer
HTTP 301 Moved Permanently means the requested resource has been permanently moved to the URL given in the Location header. Browsers and search engines update their records.
When to Use HTTP 301
HTTP 301 Moved Permanently tells browsers and search engines the URL has moved forever. Browsers cache 301 redirects aggressively - repeat visits go directly to the new URL without a server round-trip. Search engines transfer ranking signals (PageRank) through 301 redirects, making them the correct choice for permanent URL changes: site migrations, slug changes after a rename, HTTPS upgrades, and removing www from a domain.
301 vs 302 vs 308
HTTP 302 Found is a temporary redirect - do not cache, keep using the original URL. HTTP 301 is permanent - cache the new URL. HTTP 308 Permanent Redirect is like 301 but preserves the HTTP method (a POST stays a POST; in 301, POST may become GET). For standard page redirects, 301 is correct. For API endpoints where POST must remain POST after redirect, use 308. For SEO purposes, 301 and 308 both transfer ranking signals.
Try the interactive tool
Convert any value instantly — no sign-up required
Frequently Asked Questions
Related Values
100
HTTP 100 Continue means the server has received the request headers and the client should proceed to send the request body. It is an interim response used to inform the client to continue.
101
HTTP 101 Switching Protocols indicates the server is switching to the protocol specified in the Upgrade header field. Commonly used when upgrading to WebSocket connections.
200
HTTP 200 OK is the standard success response. The request has succeeded and the server has returned the requested resource in the response body.
201
HTTP 201 Created means the request succeeded and a new resource was created as a result. The Location header typically points to the new resource URL.