A Comprehensive HTTP Status Codes Cheat Sheet
Has it ever happened to you to detect an error that says "500 Internal Server Error" without knowing what the cause of it is? Or to try to access a resource only to be welcomed with a line that reads "401 Unauthorized?" Maybe you're wondering what type of status codes are most relevant to SEO.
To help you understand the different types of status codes and their meaning, we've put together a comprehensive HTTP status codes cheat sheet. Hopefully, you'll use it to quickly reference codes and determine what each type of error implies and how you can fix it.
At the end of the post, you'll find an HTTP status codes cheat sheet PDF file that you can easily download and keep it close at hand at all times.
What are HTTP Status Codes?
There are two main players on the Internet, clients, and servers. When you open your laptop and click on a browser, let's say Google Chrome, you're accessing the Internet through a web client. You're sending a request to a webserver to access a page.
For example, if you're trying to access Amazon, you type Amazon.com into your browser and hit enter. You, the client, are making a request to Amazon, the server.
You're making the request using what is known as HTTP protocol. In short, protocols are standards everyone has agreed to. When you're trying to access a page, what you're basically doing is this:
- You type in the domain name.
- You hit enter.
- You're making a request for files on a server.
- You make that request with the HTTP protocol.
- The server responds to you.
Every time you're interacting with a website, this kind of relationship is happening continuously. It happens every time you click on a link.
In other words, HTTP is the standard protocol that defines how messages are formatted and sent across the web.
Bottom of Form
The Five Core HTTP Status Codes
There are a few different classes of HTTP response status codes. They all inform a user whether a specific HTTP request has been successfully completed. The five core status codes include:
- 1xx status codes: Informational requests
- 2xx status codes: Successful requests
- 3xx status codes: Redirects
- 4xx status codes: Client errors
- 5xx status codes: Server errors
HTTP Status Codes Cheat Sheet
1xx status codes: Informational requests
The 1xx status codes are informational requests. They indicate that the server received and understood the request and that the browser should wait a little longer for the server to process the information. These status codes are less common and don't directly affect your SEO.
- The server has accepted the complete request, but is still processing it.
2xx status codes: Successful requests
These are the successful requests. Meaning, your request to access a file was successful. For example, you tried accessing Facebook.com, and it came up. One of these status codes was used. Expect to see these types of responses frequently when using the web.
Regarding SEO, the 2xx HTTP status codes only show that things are working correctly.
- 200 OK: Successful request.
- 201 Created: The server acknowledged the created resource.
- 202 Accepted: The client's request has been received but the server is still processing it.
- 203 Non-Authoritative Information: The response that the server sent to the client is not the same as it was when the server sent it.
- 204 No Content: The server processed the request but is not giving any content.
- 205 Reset Content: The client should refresh the document sample.
- 206 Partial Content: The server is sending only a portion of the resource.
- 207 Multi-Status: The message body that follows is by default an XML message and can contain a number of separate response codes.
- 208 Already Reported: The members of a WebDAV binding have already been enumerated in a preceding part of the (multistatus) response, and are not being included again.
3xx status codes: Redirects
The 3xx HTTP status codes indicate a redirection. When a user or search engines come across a 3xx status code, they will be redirected to a different URL from the initial. If SEO is crucial for the success of your business, then you must educate yourself about these codes and how to use them properly.
The 3xx status codes, such as the "301 moved permanently" and "308 permanent redirect", affect your user experience and SEO performance. When a user visits your site, they're expecting to be able to access your content freely and without any interruptions. If you have many broken links, your users will likely leave your site and go to your competitor's.
Moreover, the high bounce rates from your visitors leaving your site in a matter of seconds can negatively affect your SEO. When a user enters a site and quickly leaves without clicking anywhere, Google's algorithm will realize that that website doesn't match the user's intent. Consequently, the website will rank lower in search results.
For that reason, you want to have your redirects in check. Checking for any errors should be part of your monthly website maintenance plan.
- 300 Multiple Choices: The request the client made has several possible responses.
- 301 Moved Permanently: The server tells the client that the resource they look for has been moved permanently to another URL. All users and bots will be redirected to the new URL. It's a very important status code for SEO.
- 302 Found: A website or page has been moved to a different URL temporarily. It's another status code relevant to SEO.
- 303 See Other: This code tells the client that the server is not redirecting them to the requested resource but to another page.
- 304 Not Modified: The requested resource has not been changed since the previous transmission.
- 305 Use Proxy: The client can only access the requested resource through a proxy that's given in the response.
- 307 Temporary Redirect: The server tells the client that the resource they look for has been redirected temporarily to another URL. It's relevant to SEO performance.
- 308 Permanent Redirect: The server tells the client that the resource they look for has been redirected temporarily to another URL.
4xx status codes: Client errors
The 4xx status codes are client errors. They include the HTTP status codes, such as the "403 forbidden" and "407 proxy authentication required". It means that the page wasn't found, and something is wrong with the request. Something that is happening on the client-side is the issue. It might be an incorrect data format, unauthorized access, or a mistake in the request.
- 400 Bad Request: The client is sending a request with incomplete data, poorly constructed data, or invalid data.
- 401 Unauthorized: Authorization is needed for the client to access the requested resource.
- 403 Forbidden: The resource the client is trying to access is forbidden.
- 404 Not Found: The server is reachable, but the specific page the client is looking for is not. If a website has too many 404 errors, search engines, such as Google and Yahoo, will get a negative impression. The simplest and easiest way to fix a 404 error code is to redirect the page using a 301 redirect.
- 405 Method Not Allowed: The server has received and recognized the request, but has rejected the specific request method.
- The 406 Not Acceptable status code is an error message that means your website or web application does not support the client's request with a particular protocol
- 407 Proxy Authentication Required: This status code is similar to 401 Unauthorized. The only difference is that authorization needs to be done by a proxy.
- 408 Request Timeout: The request the client sent to the website server has expired.
- 409 Conflict: The request that it was sent conflicts with the server's internal operations.
- 410 Gone: The resource the client wants to access has been permanently erased.
Other 4xx HTTP status codes that you should know about include:
- 402 Payment Required
- 412 Precondition Failed
- 415 Unsupported Media Type
- 416 Requested Range Not Satisfiable
- 417 Expectation Failed
- 422 Unprocessable Entity
- 423 Locked
- 424 Failed Dependency
- 426 Upgrade Required
- 429 Too Many Requests
- 431 Request Header Fields Too Large
- 451 Unavailable for Legal Reasons
5xx status codes: Server errors
The 5xx HTTP status codes are server errors. These errors are no fault of the client but suggest that there's something wrong with the server-side of things. The request the client made is good, but the server cannot generate the requested resource. The 5xx HTTP status codes, such as the "503 service unavailable" HTTP status code, are crucial for your SEO as they can tell search engines to de-index your page. Make sure you check for 5xx errors regularly when performing your website maintenance.
- 500 Internal Server Error: The server run into a situation it can't handle while processing the client's request.
- 501 Not Implemented: The server doesn't know or can resolve the request method sent by the client.
- 502 Bad Gateway: The server was acting as a gateway or proxy and received an invalid message from an inbound server.
- 503 Service Unavailable: The server might be down and can't process the client's request. This HTTP status code is one of the most common server issues you can come across on the web. It can also negatively affect your SEO. If the 503 error doesn't get resolved soon, search engines will register it as a permanent issue and de-index the page.
- 511 Network Authentication Required: The client needs to get authenticated on the network before it can access the resource.
Other less common 5xx HTTP status codes that you should know about include:
- 504 Gateway Timeout
- 505 HTTP Version Not Supported
- 506 Variant Also Negotiates
- 507 Insufficient Storage
- 508 Loop Detected
- 510 Not Extended
Use this HTTP status codes cheat sheet to improve the future performance of your website. Make sure you perform a monthly website maintenance to detect errors faster and resolve them timely. Eventually, you'll make your online business a more attractive place for both visitors and search engines.
To sum up:
- The 1xx HTTP status codes are the informational requests that indicate that the server received and understood the request, but it needs a little longer to process the information. They include the "100 Continue", "101 Switching Protocol", and "102 Processing HTTP status codes."
- The 2xx HTTP status codes are the successful requests. The ones you're most likely to encounter are the "205 reset content" and "207 multi-status" HTTP status codes. The less likely to encounter is "208 already reported".
- The 3xx HTTP status codes indicate a redirection. The most crucial 3xx HTTP status codes for SEO include the "301 moved permanently", "302 found", and "307 temporary redirect" HTTP status codes.
- The 4xx status codes are client errors. The most important 4xx status codes for SEO include the "404 not found" and the "410 gone" HTTP status code.
- The 5xx HTTP status codes are the server errors. The 5xx HTTP status code that's most relevant to SEO is the "503 service unavailable" status code.