HTTP Status Code Reference
This HTTP status code lookup is a searchable reference for every standard HTTP response status code, from 1xx informational responses through 2xx success, 3xx redirection, 4xx client errors, and 5xx server errors. Each entry shows the numeric code, its canonical name, the class it belongs to, and a plain-English explanation of what it means, so you can decode an API response, a server log, or a browser network tab in seconds.
The standard codes come from the IANA HTTP Status Code Registry as defined by RFC 9110 and related specifications. The tool also includes widely deployed but non-standard codes from servers and services such as nginx, Cloudflare, Apache, Laravel, and the old Twitter API. Those unofficial codes are clearly labeled with their source and are hidden until you switch them on, so the default view stays a clean picture of the real standard. Everything runs in your browser — there is no lookup request sent anywhere.
How to use HTTP Status Code Lookup
- Browse the codes grouped by class, each with a color-coded badge: blue for 1xx, green for 2xx, amber for 3xx, orange for 4xx, and red for 5xx.
- Type in the search box to filter instantly by code number (for example 404), by words in the name or description (for example redirect, timeout, or unauthorized), or by class (for example 5xx or server error).
- Use the Show unofficial codes button to include vendor- and framework-specific codes such as the nginx 499 or Cloudflare 522; toggle it off to see only the official standard.
- Click the copy button on any row to copy its code and name together, for example "404 Not Found", ready to paste into a ticket, comment, or code.
The five status code classes
Every HTTP status code is a three-digit number whose first digit places it in one of five classes. Knowing the class alone tells you the general outcome before you read the specific code.
- 1xx Informational — the request was received and the server is continuing the process; the client should wait for a final response.
- 2xx Success — the request was successfully received, understood, and accepted.
- 3xx Redirection — further action, usually following a new URL, is needed to complete the request.
- 4xx Client Error — the request has bad syntax, is unauthorized, or otherwise cannot be fulfilled as sent; the problem is on the client side.
- 5xx Server Error — the request was apparently valid but the server failed to fulfill it; the problem is on the server side.
Standard versus unofficial codes
The official codes in this reference are registered with IANA and defined by RFCs such as RFC 9110 (HTTP Semantics), with WebDAV codes from RFC 4918 and others. These are the codes any compliant client or server may use.
Unofficial codes are not part of the HTTP standard but appear often enough in the wild to be worth knowing. Examples include nginx logging codes (444, 494 to 499), Cloudflare edge errors (520 to 527 and 530), the Apache and cPanel 509 Bandwidth Limit Exceeded, Laravel's 419 Page Expired, and the deprecated Twitter 420 Enhance Your Calm. The tool marks each of these as Unofficial and names its source so you never mistake a vendor code for a standard one.
Commonly confused status codes
- 301 vs 302 vs 307/308 — 301 and 308 are permanent redirects, while 302 and 307 are temporary; the 307/308 pair additionally requires the client to keep the original HTTP method and body.
- 401 vs 403 — 401 Unauthorized actually means unauthenticated (no valid credentials), whereas 403 Forbidden means you are authenticated but not allowed, so re-logging in will not help.
- 404 vs 410 — 404 Not Found makes no promise about whether the resource will return, while 410 Gone states the removal is permanent.
- 502 vs 503 vs 504 — 502 Bad Gateway means an upstream server returned an invalid response, 503 Service Unavailable means the server is temporarily overloaded or down for maintenance, and 504 Gateway Timeout means an upstream server did not respond in time.
Related terminology
- Status line
- The first line of an HTTP response, containing the protocol version, the numeric status code, and a short reason phrase such as 200 OK.
- Status class
- The category a code belongs to, determined by its first digit (1 through 5), from informational to server error.
- Redirect
- A 3xx response that points the client to a different URL, either temporarily or permanently, to complete the request.
- Content negotiation
- The process by which a client and server agree on the best representation of a resource, using Accept headers; failures can produce a 406 Not Acceptable.
- Rate limiting
- Restricting how many requests a client may make in a period of time; exceeding the limit typically returns 429 Too Many Requests.
- WebDAV
- An extension of HTTP for collaborative editing that adds status codes such as 207 Multi-Status, 423 Locked, and 507 Insufficient Storage.
Frequently asked questions
- What are the five classes of HTTP status codes?
- Codes are grouped by their first digit: 1xx informational, 2xx success, 3xx redirection, 4xx client error, and 5xx server error. The class tells you the general outcome, and the full three-digit code tells you the specific reason.
- What is the difference between 401 and 403?
- 401 Unauthorized means the request lacks valid authentication, so providing correct credentials may fix it. 403 Forbidden means the server recognizes you but refuses to grant access, so re-authenticating will not help.
- What is the difference between a 301 and a 302 redirect?
- 301 Moved Permanently tells clients and search engines the resource has permanently moved to a new URL and links should be updated. 302 Found is a temporary redirect, so the original URL should still be used for future requests.
- Is 418 I'm a Teapot a real HTTP status code?
- It comes from the Hyper Text Coffee Pot Control Protocol, an April Fools' joke specification, and is reserved rather than assigned in the main HTTP standard. It is not meant for production use, though some frameworks include it as an Easter egg. This tool lists it and labels it as a joke.
- What are codes like 520, 522, or 499 that are not in the official list?
- These are non-standard codes returned by specific software. 499 Client Closed Request is logged by nginx, and 520 to 527 are Cloudflare edge errors between the CDN and your origin server. This tool includes such codes under the Show unofficial codes toggle and labels each with its source.
- Is my search sent to a server?
- No. The entire code reference is bundled with the page and all searching and filtering happens in your browser, so nothing you type is uploaded anywhere.