Look up every HTTP response status code (1xx–5xx) in a searchable, filterable directory — then open any code for what it means, when to use it, whether it is cacheable and the RFC that defines it. In your browser, free.

Every standard HTTP response status code, explained. Everything runs in your browser from a built-in reference — nothing is sent to the server.

100 Continue The client should continue sending the request body. 101 Switching Protocols The server is switching protocols as requested by the client. 102 Processing The server has received and is processing the request, but no response is available yet. 103 Early Hints Used to return preliminary headers, such as Link, before the final response. 200 OK The request succeeded. 201 Created The request succeeded and a new resource was created. 202 Accepted The request was accepted for processing, but processing is not complete. 203 Non-Authoritative Information The response was modified by a transforming proxy. 204 No Content The request succeeded but returns no body. 205 Reset Content The request succeeded; the client should reset the document view. 206 Partial Content The server is delivering only part of the resource due to a Range header. 207 Multi-Status Conveys multiple status codes for multiple independent operations. 208 Already Reported The members of a DAV binding have already been enumerated. 226 IM Used The response is a result of instance manipulations applied to the resource. 300 Multiple Choices The request has more than one possible response. 301 Moved Permanently The resource has permanently moved to a new URL. 302 Found The resource resides temporarily under a different URL. 303 See Other The response can be found at another URL using GET. 304 Not Modified The cached version of the resource is still valid. 307 Temporary Redirect Temporary redirect that preserves the HTTP method. 308 Permanent Redirect Permanent redirect that preserves the HTTP method. 400 Bad Request The server cannot process the request due to a client error. 401 Unauthorized Authentication is required and has failed or not been provided. 402 Payment Required Reserved for future use; sometimes used for payment-gated APIs. 403 Forbidden The client is authenticated but not allowed to access the resource. 404 Not Found The server cannot find the requested resource. 405 Method Not Allowed The HTTP method is not supported for this resource. 406 Not Acceptable The resource cannot produce a response matching the Accept headers. 407 Proxy Authentication Required The client must authenticate with a proxy first. 408 Request Timeout The server timed out waiting for the request. 409 Conflict The request conflicts with the current state of the resource. 410 Gone The resource has been permanently removed. 411 Length Required The request must specify a Content-Length header. 412 Precondition Failed A precondition in the request headers was not met. 413 Content Too Large The request body is larger than the server will process. 414 URI Too Long The requested URL is longer than the server will interpret. 415 Unsupported Media Type The request body is in a format the server does not support. 416 Range Not Satisfiable The requested range cannot be fulfilled. 417 Expectation Failed The expectation in the Expect header could not be met. 418 I'm a teapot The server refuses to brew coffee because it is, permanently, a teapot. 421 Misdirected Request The request was directed at a server that cannot produce a response. 422 Unprocessable Content The request is well-formed but semantically invalid. 423 Locked The resource being accessed is locked. 424 Failed Dependency The request failed because a previous request it depended on failed. 425 Too Early The server is unwilling to risk processing a replayed request. 426 Upgrade Required The client should switch to a different protocol. 428 Precondition Required The server requires the request to be conditional. 429 Too Many Requests The client has sent too many requests in a given time. 431 Request Header Fields Too Large The request's header fields are too large. 451 Unavailable For Legal Reasons The resource is unavailable due to legal demands. 500 Internal Server Error The server encountered an unexpected condition. 501 Not Implemented The server does not support the functionality required. 502 Bad Gateway An upstream server returned an invalid response. 503 Service Unavailable The server is temporarily unable to handle the request. 504 Gateway Timeout An upstream server failed to respond in time. 505 HTTP Version Not Supported The server does not support the HTTP version used. 506 Variant Also Negotiates A content-negotiation configuration error occurred. 507 Insufficient Storage The server cannot store the representation needed. 508 Loop Detected The server detected an infinite loop while processing. 510 Not Extended Further extensions to the request are required. 511 Network Authentication Required The client must authenticate to gain network access.
No status code matches your search.
Try a different number or name — for example 301, Unauthorized or timeout.

About HTTP Status Codes

This HTTP status codes directory covers every standard response code from the 1xx informational range through 5xx server errors. Each entry shows the numeric code, its canonical reason phrase and a one-line summary, and the whole list can be searched by number, name or meaning — 301, Unauthorized and timeout all find their targets — or filtered by response class.

Every code opens onto its own dedicated page with a full explainer: what the status actually means, when to use it in your own APIs and applications, whether responses with that code are cacheable by default, and the RFC that defines it. Related codes from the same class are linked at the bottom, so comparing 401 with 403 or 301 with 308 takes one click.

The five classes are the fastest mental model for reading any response: 1xx means the request is continuing, 2xx means success, 3xx means redirection, 4xx means the client made a mistake and 5xx means the server failed. The directory is organized around exactly that structure.

How to use HTTP Status Codes

  1. Type a code, a reason phrase or a keyword into the search box — for example 404, Not Found or redirect.
  2. Use the class filter to narrow the list to informational, success, redirection, client-error or server-error codes.
  3. Open any code’s page to read what it means, when to use it, its default cacheability and the defining RFC.
  4. Check the related-codes section to compare neighbors from the same class.
  5. Use the copy button to grab the code for a bug report, test or API spec.

Frequently asked questions

The first digit groups codes by outcome: 1xx informational (request received, keep going), 2xx success, 3xx redirection (further action needed), 4xx client error (the request is at fault) and 5xx server error (the server failed to fulfil a valid request).

401 Unauthorized means the request lacks valid authentication — the client should log in or supply credentials and retry. 403 Forbidden means the server understood the credentials but refuses access anyway: authentication won’t change the answer.

Use 301 when the resource has moved permanently — browsers and search engines update their references. Use 302 for temporary moves. If the request method must be preserved exactly, prefer their stricter modern counterparts, 308 and 307.

Some status codes, like 200 and 301, may be stored by browser and proxy caches even without explicit cache headers; others, like most 4xx and 5xx responses, may not. The flag tells you the default so you know when Cache-Control headers are required.

Yes. Each code gets a dedicated, linkable page with its meaning, typical use, cacheability and defining RFC, plus related codes from the same class — handy for bookmarking or sharing the exact code under discussion.

Yes. The directory and every per-code page are free to browse with no account, and search runs instantly in your browser without sending anything to the server.

Need help?
Found an issue with this tool? Let our team know.
Report an issue

Add this free tool to your own website — copy and paste the code below.