Free tool · runs in your browser

HTTP Status Code Lookup

Type a code, a reason phrase or a symptom such as “redirect” or “timeout”, then open the entry for the definition and the practical fix.

Search by symptom, not only by number

You often know the behaviour before you know the code: a browser loops on a login page, an API returns an empty body with a 204, a CDN reports a 520 that no RFC defines. The search matches the reason phrase and the summary text as well as the number, so a symptom is a valid starting point.

Group filters narrow the list to a status class. The first digit is the class — 1xx informational, 2xx success, 3xx redirection, 4xx client error, 5xx server error — and the class already tells you which side of the connection is expected to change its behaviour.

What each entry contains

Every entry states the standard meaning, the RFC section where it is defined, whether the response is cacheable and whether a retry is safe, then adds the causes and fixes seen in real logs. Those practical notes are clearly separate from the specification.

Codes that are not in the dataset are either unassigned, vendor-specific or obsolete. If a proxy returns a number you cannot find, treat it as vendor-specific and read that vendor's documentation rather than guessing at the class.

All HTTP status codes, searchable

Every entry links to its full reference page. The search box above filters this list.

100100 Continue 100 Continue is an interim response that tells the client the request headers were accepted and the body can be sent. 101101 Switching Protocols 101 Switching Protocols confirms that the server is switching to a protocol requested in the Upgrade header. 200200 OK 200 OK means the request succeeded and the response body contains the representation the client asked for. 201201 Created 201 Created means the request succeeded and a new resource was created, usually identified by a Location header. 204204 No Content 204 No Content means the request succeeded but there is no body to return. 206206 Partial Content 206 Partial Content returns one requested byte range of a resource instead of the whole representation. 301301 Moved Permanently 301 Moved Permanently says the resource now lives at a new URL and future requests should use that URL. 302302 Found 302 Found says the resource is temporarily available at another URL, and the original URL should remain the address clients use. 303303 See Other 303 tells the client to fetch another URL with GET, usually after a form submission. 304304 Not Modified 304 Not Modified tells a client that its cached copy is still fresh, so no body needs to be transferred. 307307 Temporary Redirect 307 Temporary Redirect moves a request to another URL while preserving its method and body. 308308 Permanent Redirect 308 Permanent Redirect is a permanent move that preserves the request method and body. 400400 Bad Request 400 Bad Request means the server cannot process the request because the client sent something malformed. 401401 Unauthorized 401 Unauthorized means the request lacks valid authentication credentials for the target resource. 403403 Forbidden 403 Forbidden means the server understood the request but refuses to authorize it. 404404 Not Found 404 Not Found means the server cannot find a current representation for the target URL. 405405 Method Not Allowed 405 Method Not Allowed means the URL exists but does not support the HTTP method used in the request. 409409 Conflict 409 Conflict means the request conflicts with the current state of the target resource. 410410 Gone 410 Gone means the target resource is permanently unavailable and the server has no forwarding address. 412412 Precondition Failed A conditional request failed because the resource no longer matches the client’s validator. 413413 Content Too Large The request body exceeds the limit the server is willing to process. 416416 Range Not Satisfiable A Range request asks for bytes outside the resource, or the server cannot satisfy the range. 422422 Unprocessable Content 422 Unprocessable Content means the request was well formed but its instructions could not be processed. 426426 Upgrade Required The server refuses the request until the client switches to a required protocol. 429429 Too Many Requests 429 Too Many Requests means the client has sent too many requests in a given amount of time. 500500 Internal Server Error 500 Internal Server Error means the server hit an unexpected condition and could not complete the request. 501501 Not Implemented The server does not recognize or support the request method. 502502 Bad Gateway 502 Bad Gateway means a gateway or proxy received an invalid response from the upstream server. 503503 Service Unavailable 503 Service Unavailable means the server is temporarily unable to handle the request, often due to overload or maintenance. 504504 Gateway Timeout 504 Gateway Timeout means a gateway or proxy did not receive a timely response from an upstream server.

Frequently asked questions

What is the difference between 404 and 410?

Both mean the target is not available. 410 states that the condition is likely permanent, while 404 makes no claim about the future; caches and crawlers may treat 410 as a stronger signal to remove a URL.

Is a 200 response always a success?

It means the request succeeded at the HTTP level. The body can still describe an application error, which is why APIs often return the error inside a JSON payload.

Why can I not find a code in this list?

The list covers the common registered codes. Vendor codes, unassigned numbers and obsolete codes are out of scope; check the vendor documentation for those.

New tools, straight to your inbox

One short email when we add tools worth using. No spam, unsubscribe anytime.