iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more
An HTTP status code is a three-digit number in a server’s response that describes the result of a request and the meaning of the response, including whether the request succeeded and what content it contains. Valid HTTP status codes run from 100 through 599. The first digit tells you the broad response class; the full code identifies the specific condition.
What the five HTTP status-code classes mean
Read the first digit to get your bearings, then check the complete code for its exact meaning. Individual codes within a class can require different handling.
| # | Preview | Product | Price | |
|---|---|---|---|---|
| 1 |
|
High Performance Browser Networking: What every web developer should know about networking and web... | $30.87 | Buy on Amazon |
| 2 |
|
Learning HTTP/2: A Practical Guide for Beginners | $18.11 | Buy on Amazon |
| 3 |
|
HTTP: The Definitive Guide | $26.04 | Buy on Amazon |
| 4 |
|
HTTP Pocket Reference: Hypertext Transfer Protocol | $6.94 | Buy on Amazon |
| 5 |
|
HTTP/2 in Action | $42.73 | Buy on Amazon |
| Class | Standard meaning | What it generally tells you |
|---|---|---|
| 1xx Informational | An interim response communicating connection status or request progress. | The exchange is continuing; this is not the final response. |
| 2xx Successful | The request was successfully received, understood, and accepted. | The request succeeded according to the particular code’s semantics. |
| 3xx Redirection | Further action is needed to complete the request. | The client may need to follow or otherwise act on a redirect response. |
| 4xx Client Error | The request contains bad syntax or cannot be fulfilled. | The request has a client-error condition, as defined by the specific code. |
| 5xx Server Error | The server failed to fulfill an apparently valid request. | The server encountered a failure or cannot perform the request. |
These definitions come from RFC 9110, HTTP Semantics, published by the RFC Editor in June 2022. For the registered codes and their references, consult the IANA HTTP Status Code Registry, last updated September 15, 2025.
How common status codes differ
The class is only a starting point: two codes with the same first digit can describe different conditions or behavior.
#1 Best Overall
- Used Book in Good Condition
| Code | Meaning | Important distinction |
|---|---|---|
| 100 Continue | The request’s initial part has been received and not rejected; the server intends to send a final response after receiving and acting on the full request. | It is an interim response, not the final result. |
| 101 Switching Protocols | The server agrees to the requested protocol change using the Upgrade mechanism. | It signals an agreed protocol switch. |
| 200 OK | A successful response. | Its specific meaning depends on the request method. |
| 201 Created | The request was fulfilled and resulted in one or more new resources. | It indicates resource creation. |
| 301 Moved Permanently | The target resource has been assigned a new permanent URI. | It differs from a temporary redirect. |
| 302 Found | The target resource resides temporarily under a different URI. | It describes a temporary redirect. |
| 400 Bad Request | The server cannot or will not process the request because it perceives a client error, such as malformed syntax or invalid framing. | The specific problem is with the request as interpreted by the server. |
| 401 Unauthorized | The request was not applied because it lacks valid authentication credentials. | The server must send a WWW-Authenticate challenge. |
| 403 Forbidden | The server understood the request but refuses to fulfill it. | It describes refusal, not missing or invalid authentication credentials. |
| 404 Not Found | The origin server did not find a current representation for the target resource, or is unwilling to disclose that one exists. | The response does not establish which of those conditions applies. |
| 500 Internal Server Error | The server encountered an unexpected condition that prevented it from fulfilling the request. | It describes an unexpected server condition. |
| 502 Bad Gateway | A server acting as a gateway or proxy received an invalid response from an inbound server it accessed while attempting to fulfill the request. | It concerns an invalid response from an upstream server. |
| 503 Service Unavailable | The server is currently unable to handle the request because of temporary overload or scheduled maintenance, which likely will be alleviated after some delay. | It describes an inability expected to be temporary. |
How to interpret a code you do not recognize
HTTP status codes are extensible, so a client does not need to understand every registered code. RFC 9110 requires a client to recognize the class from the first digit and treat an unrecognized code as equivalent to the class’s x00 code. For example, an unrecognized 471 can be processed as if it were 400.
Codes outside the valid 100–599 range are invalid. RFC 9110 says a client receiving an invalid status code should process it as a 5xx response. The current IANA registry is the place to check whether a code is registered and to find its references.
Rank #2
What status codes do—and do not—tell you
- A status code describes the response to a request; by itself, it is not a complete account of everything that happened inside an application. A response may include a representation explaining an error situation.
- Do not treat every 4xx response as proof that a user is to blame. The class describes client-error semantics; the particular condition and the application or intermediary’s role matter.
- Do not assume all 3xx responses behave alike. The code defines the specific redirect behavior, including whether a redirect is permanent or temporary and applicable method handling.
- A reason phrase or the text on an error page is not the protocol definition. Use the status code’s semantics and the relevant standard.
How informational responses fit into an exchange
Informational 1xx responses are interim. They end at the end of the header section and cannot contain content or trailers. A client must be able to parse one or more 1xx responses before the final response, so seeing one does not mean the request’s final outcome has arrived.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Quick Recap
Best Value
Rank #4
Rank #3
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

