HTTP status code families
HTTP status codes are three-digit numbers returned by a server to describe the outcome of a request. They are grouped into five classes by their first digit.
- 1xx Informational — the request was received and processing is continuing.
- 2xx Successful — the request was received, understood, and accepted.
- 3xx Redirection — further action is needed to complete the request.
- 4xx Client errors — the request contains bad syntax or cannot be fulfilled.
- 5xx Server errors — the server failed to fulfil a valid request.
Most important HTTP status codes
- 200 OK — standard success for GET and POST requests.
- 301 Moved Permanently — permanent redirect; most link equity transfers to the destination.
- 302 Found — temporary redirect; search engines may not update the indexed URL.
- 304 Not Modified — the cached version of the resource is still valid.
- 400 Bad Request — the server could not parse the request due to invalid syntax.
- 401 Unauthorized — authentication is required and has not been provided.
- 403 Forbidden — the client does not have permission to access the resource.
- 404 Not Found — the server cannot find the requested resource.
- 429 Too Many Requests — rate limiting is in effect; slow down requests.
- 500 Internal Server Error — an unexpected condition was encountered on the server.
- 503 Service Unavailable — the server is temporarily unable to handle requests.
SEO impact of HTTP response codes
A 301 (permanent redirect) passes most link equity to the destination; a 302 (temporary redirect) may not. Pages returning 404 or 410 are typically removed from the index. Pages returning 5xx server errors may be temporarily de-ranked if the errors persist across many crawls.
Frequently asked questions
What is a 400 error?
A 400 Bad Request error means the server could not process the request because of malformed syntax on the client side. Common causes include invalid JSON in a request body, missing required parameters, an incorrect Content-Type header, or a URL that is too long.
What is a 500 error?
A 500 Internal Server Error is a generic server-side error meaning something went wrong on the server. Common causes include unhandled exceptions in application code, misconfigured server environments, or a database connection failure. Unlike 4xx errors, a 500 is not the client's fault.
What is a 404 error?
A 404 Not Found error means the server could not find the requested resource at that URL. The page may have been deleted, moved without a redirect, or the URL may simply be wrong. Google removes persistent 404 pages from its index — fix or redirect valuable URLs.
What is the difference between 401 and 403?
401 Unauthorized means the request lacks valid authentication — the user is not logged in or the token is expired. 403 Forbidden means the server knows who the user is but they do not have permission. In short: 401 = not authenticated, 403 = authenticated but not authorised.
What does a 302 redirect mean?
A 302 Found redirect is temporary — the resource is at a different URL for now but the original URL should still be used in future. Use 301 Moved Permanently when the move is final so search engines update the indexed URL and pass link equity to the new location.
What are 5xx server errors?
5xx codes mean the server failed to fulfil a valid request — the problem is on the server side. Common ones: 500 Internal Server Error, 502 Bad Gateway, 503 Service Unavailable, 504 Gateway Timeout.