HyperText Transfer Protocol (or HTTP) response status codes are returned whenever search engines or website visitors make a request to a web server.
HTTP Status codes are three-digit numbers returned by servers that indicate the status of a web element.
Header status response codes
The first digit of each three-digit status code begins with a number between 1 and 5. From the 100s through the 500s, status codes fall into the following categories:
100s - Informational. Request has been received, and the process is continuing.
200s - Success. Request was received and processed successfully.
300s - Redirection. Request has been received but needs to perform an additional step to complete the request.
400s - Client Error. Request was made by the client, but the page is not valid.
500s - Server Error. Valid request was made by the client, but the server failed to complete the request.
Common Header statuses and SEO
While there are many different HTTP status codes, most are not directly important to SEO. For SEO, generally you’ll work with the following status codes:
The request has succeeded. This is considered correct for most scenarios.
301 Moved Permanently
The requested resource has been assigned a new permanent URI, and any future references to this resource should use one of the returned URIs. The 301 redirect, as it is commonly called by SEOs, should be used any time one URL needs to be redirected to another.
The server is currently responding to the request with a page from a different location, yet the requestor continues to use the original location for future requests. This approach is not recommended. It is not an effective way to instruct search engine bots that a page or site has moved.
Using a 302 will cause search engine crawlers to treat the redirect as temporary and not pass the ranking signals they would with a 301 redirect.
Client Error Responses
404 File Not Found
The server has not found anything matching the requested URI. No indication is given as to whether the condition is temporary or permanent. This should occur any time the server can’t find a matching page request.
Webmasters sometimes display a text-based 404 error, but the response code is a 200. This tells search engine crawlers that the page has rendered correctly, and many times the webpage will get erroneously indexed.
The requested resource is no longer available at the server, and no forwarding address is known. This condition is expected to be permanent.
If the server does not know–or has no way to determine–whether the condition is permanent, the status code 404 (Not Found) should be used instead of 410 (Gone). This response is cacheable unless indicated otherwise.
Server error responses
500 Internal Server Error
The server has encountered a situation it does not know how to handle (e.g., corrupted .htaccess file, faulty third-party plugin or theme). A 500 internal error doesn't immediately tell you what the problem is or how to solve it.
503 Service Unavailable
The server is currently unable to handle the request due to a temporary overloading or maintenance on the server. The 503 should be used whenever there is a temporary outage (e.g., the server has to come down for maintenance).
This ensures that search engines know to come back soon—the page or site is down only for a short time.