Use this HTTP status codes cheat sheet ⇣ as a reference to every HTTP status and HTTP error code, what each code means, why they are being generated, when the code might be a problem, and how to deal with the problems. Download this HTTP Status Codes Cheat Sheet ⇣
The internet is made up of two fundamental but very different things: clients and servers. This relationship between clients (like Chrome, Firefox, etc.) and servers (like websites, databases, emails, applications, etc.), is called the client-server model.
Clients make requests to the server and the server responds.
HTTP status codes let us know the status of the request to the server is, if it was a success, had an error, or something in between.
An HTTP status code is a number that summarizes the response associated to it – Fernando Doglio, from his book “REST API Development with NodeJS”.
HTTP Status Codes Cheat Sheet
HTTP response status codes are grouped into five classes:
- 1XX status codes: Informational Requests
- 2XX status codes: Successful Requests
- 3XX status codes: Redirects
- 4XX status codes: Client Errors
- 5XX status codes: Server Errors
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.
- 100 Continue: Everything so far is OK and that the client should continue with the request or ignore it if it is already finished.
- 101 Switching Protocols: The protocol the server is switching to as requested by a client which sent the message including the upgrade request header
- 102 Processing: The server has accepted the complete request, but is still processing it.
- 103 Early Hints: Allowing the user agent to start preloading resources while the server is still preparing a response.
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.
- 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 important for the success of your business, then you must educate yourself about these codes and how to use them properly.
- 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 authentications 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.
- 405 Method Not Allowed: The server has received and recognized the request, but has rejected the specific request method.
- 406 Not Acceptable: The 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 less common 4xx HTTP status codes 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.
- 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.
- 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 include:
- 504 Gateway Timeout
- 505 HTTP Version Not Supported
- 506 Variant Also Negotiates
- 507 Insufficient Storage
- 508 Loop Detected
- 510 Not Extended
You can use this HTTP status code cheat sheet as a reference to all the possible HTTP status and HTTP error codes, what each code means, why they are being generated when the code might be a problem, and how to deal with the problems.
Click here to download 📥 this HTTP status codes cheat sheet and keep it close by as a quick reference of all status codes.
To sum it up:
- 1XX HTTP status codes are purely informational requests.
- 2XX HTTP status codes are success requests. The HTTP 200 OK success status response code indicates that the request has succeeded.
- 3XX HTTP status codes indicate a redirection. The most common 3xx HTTP status codes include the “301 moved permanently”, “302 found”, and “307 temporary redirect” HTTP status codes.
- 4XX status codes are client errors. The most common 4xx status codes are “404 not found” and the “410 gone” HTTP status code.
- 5XX HTTP status codes are server errors. The 5xx HTTP status code that is most common is the “503 service unavailable” status code.