Skip to main content

Understanding HTTP status codes is crucial for ensuring smooth interactions between clients and servers. These codes provide information about the status of a client’s request to the server, indicating whether the request was successful, encountered an error or requires further action. Whether you are an SEO specialist, digital marketer or website owner, it is vital to grasp the significance of these codes. In this HTTP status codes cheat sheet guide, we will delve into their meanings, classifications and practical applications.

 Reference guide
Download HTTP Status Codes Cheat Sheet

What are HTTP Status Codes?

HTTP, which stands for Hypertext Transfer Protocol, serves as the foundation of data communication on the World Wide Web. When a browser or web client interacts with a server, it sends an HTTP request, and the server responds with an HTTP status code to indicate the outcome of the request. These status codes, three-digit numeric codes, convey specific information about the result of the request.

Understanding Classes of HTTP Status Codes

HTTP status codes fall into five broad categories, each denoted by the first digit of the status code:

  • Informational (1xx): These codes indicate that the server received and understood the request, and the process continues. Additionally, they provide insights into the ongoing process.
  • Success (2xx): These codes signify that the server successfully fulfilled the request. Furthermore, they assure users that their actions were successful.
  • Redirection (3xx): These codes indicate further action is needed to complete the request. Consequently, users are directed to take additional steps.
  • Client Error (4xx): These codes indicate errors made by the client in the request. As a result, users are notified of errors originating from their end.
  • Server Error (5xx): These codes indicate the server failed to fulfill a valid request. Consequently, users are informed about server-side issues affecting their requests.
Chipotle HTTP Status Code 404
Chipotle’s 404 Not Found page, a commonly encountered HTTP status code.

Commonly Encountered HTTP Status Codes

  • 200 OK: Indicates that the request was successful. Consequently, users receive confirmation of successful interactions.
  • 301 Moved Permanently: The resource or page requested has been permanently moved to a new location. Consequently, users are informed about resource relocation.
  • 401 Unauthorized: Signifies that the request requires user authentication. Consequently, users are prompted to provide authentication credentials.
  • 404 Not Found: The resource or page requested could not be found on the server. As a result, users are informed about unavailable resources.
  • 500 Internal Server Error: Indicates that something has gone wrong on the server’s end. Consequently, users are alerted about server-side issues.

 Related article
Six actionable tips to improve your technical SEO

SEO Optimization and HTTP Status Codes

Understanding HTTP status codes is crucial for SEO. Status codes like 404 (Not Found) or 500 (Internal Server Error) can negatively impact a website’s indexing and ranking. Therefore, webmasters must ensure their servers return appropriate status codes to maintain healthy SEO performance.


In conclusion, HTTP status codes serve as the backbone of communication between clients and servers on the internet. They provide vital information about HTTP request outcomes, aiding in troubleshooting and ensuring smooth user experiences. By familiarizing yourself with these codes and their meanings, you will better navigate web development intricacies and enhance your digital assets’ performance.

HTTP Status Codes Cheat Sheet: A Complete List

These HTTP status codes play a critical role in facilitating communication between clients and servers on the web. They provide essential information about request outcomes, guiding subsequent actions. Below is a categorized list of HTTP status codes, each accompanied by its individual definition.

 Reference guide
Download HTTP Status Codes Cheat Sheet

1xx Informational

  • 100 Continue: The server received the initial part of the request, and the client should proceed with the rest of the request.
  • 101 Switching Protocols: The server agrees to switch protocols as requested by the client.
  • 102 Processing: The server received the request headers and is processing the request, but the process is not yet complete.
  • 103 Early Hints: The server is likely to send a final response with the headers included in the informational response.

2xx Success

  • 200 OK: The request has succeeded. The server fulfilled the request.
  • 201 Created: The system has fulfilled the request and created a new resource as a result.
  • 202 Accepted: The server accepted the request for processing, but it has not completed processing.
  • 204 No Content: The server successfully processed the request but will not return any content.
  • 205 Reset Content: The server received the request, but the client needs to reset the document view.
  • 206 Partial Content: The server delivered only part of the resource requested by the client, used when a browser only requests a portion of a page.
  • 207 Multi-Status: Provides status for multiple independent operations, allowing the client to understand the status of several operations in a single response.
  • 208 Already Reported: Members of a WebDAV binding have already been enumerated in a preceding part of the response and will not be included again.
  • 226 IM Used: The server fulfilled the request, but the response is a representation of the result of one or more instance-manipulations applied to the current instance.

3xx Redirection

  • 300 Multiple Choices: The request has multiple possible responses the client may follow.
  • 301 Moved Permanently: The requested resource or page has been permanently moved to a new location.
  • 302 Found: The requested resource temporarily resides at a different location.
  • 304 Not Modified: The response indicates that the server has not modified the resource since the version specified by the request headers, and so it returns no content.
  • 307 Temporary Redirect: The requested resource or page resides temporarily under a different URI.
  • 308 Permanent Redirect: The resource resides at a new permanent URL and all old URLs will point to the new URL.

4xx Client Error

  • 400 Bad Request: The server does not understand the request due to a client-side errors.
  • 401 Unauthorized: The request requires user authentication.
  • 403 Forbidden: The server refuses to authorize the request.
  • 404 Not Found: The server could not find the requested page or resource.
  • 405 Method Not Allowed: The resource does not allow the method specified in the request.
  • 406 Not Acceptable: The server cannot respond with the content type or language desired by the client.
  • 407 Proxy Authentication Required: The server requires authentication to access the requested resource via a proxy server.
  • 408 Request Timeout: The client took too long to complete the request and the server timed out.
  • 409 Conflict: The resource conflict prevented the completion of the request.
  • 410 Gone: The requested resource no longer exists on the server.
  • 411 Length Required: The server cannot accept the request without a defined Content-Length header.
  • 412 Precondition Failed: Conditions specified in the request header fields evaluated to false.
  • 413 Request Entity Too Large: The server refuses to process the request because the payload is larger than the server is willing or able to process.
  • 414 URI Too Long: The URI provided in the request is longer than the server is willing to interpret.
  • 415 Unsupported Media Type: The server denies the request due to an unsupported media type.
  • 416 Range Not Satisfiable: Indicates that the server cannot fulfill the request because the client has asked for a portion of the file that is not available or valid.
  • 417 Expectation Failed: The server cannot meet the conditions of the Expect request-header field.
  • 418 I’m a teapot: Code defined in the April Fools’ Day RFC 2324 as an April Fools’ joke. Servers should not implement it.
  • 422 Unprocessable Entity: The server understands the content type of the request entity but cannot process the contained instructions.
  • 424 Failed Dependency: The request failed due to another dependent action that failed.
  • 426 Upgrade Required: The server refuses to perform the action and requests switching to a different protocol.
  • 428 Precondition Required: The server requires the request to be conditional in order to process the request.
  • 429 Too Many Requests: The user has sent too many requests in a given amount of time.
  • 431 Request Header Fields Too Large: The server rejected the request because the header fields are too large.
  • 444 No Response: Status code used by Nginx to indicate that the server has closed the connection without sending any response to the client.
  • 449 Retry With: Microsoft servers use this status code to indicate that you should retry your request after taking the appropriate action.
  • 450 Blocked by Windows Parental Controls: Status code used by Microsoft servers to indicate that Windows Parental Controls have blocked access to a resource.
  • 451 Unavailable For Legal Reasons: The server refuses to serve the request due to legal reasons.
  • 499 Client Closed Request: This status code commonly used by Nginx to indicate that the client closed the connection before receiving the server’s response.

5xx Server Error

  • 500 Internal Server Error: A generic error message indicating something has gone wrong on the server’s end.
  • 501 Not Implemented: The server does not support the feature requested by the user.
  • 502 Bad Gateway: The server received an invalid HTTP response from an upstream server.
  • 503 Service Unavailable: The server cannot handle the request due to temporary overload or maintenance.
  • 504 Gateway Timeout: The server did not receive a timely response from the upstream server while acting as a gateway or proxy.
  • 505 HTTP Version Not Supported: The server does not support the HTTP protocol version sent in the request.
  • 506 Variant Also Negotiates: The server has an internal configuration error and cannot complete the request.
  • 507 Insufficient Storage: The server is unable to complete the request due to a lack of storage space.
  • 508 Loop Detected: The server detected an infinite loop while processing the request and terminated it.
  • 509 Bandwidth Limit Exceeded: Status code not defined in the HTTP standard and it indicates that the client has exceeded the allocated bandwidth limit.
  • 510 Not Extended: Indicates the request needs further extensions for the server to fulfill it.
  • 511 Network Authentication Required: The client must first authenticate before gaining network access.
  • 598 Network read timeout error: Status code used by some non-standard proxies to indicate that the connection to the origin server timed out while waiting for a response.
  • 599 Network connect timeout error: Some non-standard proxies use the status code to indicate that they could not establish a connection to the origin server within the timeout period.