Skip to content
GivenTool

HTTP status codes: the complete list

Data last checked 2026-09-20

This table lists every status code in the IANA HTTP Status Code Registry, the authoritative list maintained for the HTTP specifications. Codes are grouped by their first digit: 1xx informational, 2xx success, 3xx redirection, 4xx client error and 5xx server error. Names follow RFC 9110 (the 2022 HTTP semantics standard), which renamed a few codes: 413 is now "Content Too Large" and 422 "Unprocessable Content".

Two numbers are registered but unused: 306 was reserved after a draft "Switch Proxy" was dropped, and 418 was reserved so that the April-1 "I'm a teapot" joke from RFC 2324 is never assigned a conflicting meaning. Codes you may see in the wild that are not in the registry, such as Cloudflare's 520 to 530 or Nginx's 499, are vendor-specific and belong to the server, not to HTTP.

For upload forms the codes that matter most are 413 (file too large), 415 (format not accepted) and 422 (the server validated the file and rejected it). If a portal returns one of those, the file tools on this site can usually fix the file: compress it under the limit or convert it to JPEG or MP4.

All registered status codes

63 rows

CodeNameClassMeaningDefined in
100Continue1xx InformationalThe initial part of the request was received; the client may continue sending the body.RFC 9110
101Switching Protocols1xx InformationalThe server agrees to switch to the protocol named in the Upgrade header (for example WebSocket).RFC 9110
102Processing1xx InformationalWebDAV: the request was accepted and is being processed, but no response is available yet.RFC 2518
103Early Hints1xx InformationalPreliminary headers (typically Link preload hints) sent before the final response.RFC 8297
200OK2xx SuccessThe request succeeded; the response body carries the result.RFC 9110
201Created2xx SuccessA new resource was created; its location is usually in the Location header.RFC 9110
202Accepted2xx SuccessThe request was accepted for processing, but processing has not completed.RFC 9110
203Non-Authoritative Information2xx SuccessThe response was modified by a proxy from the origin server's 200 response.RFC 9110
204No Content2xx SuccessSuccess with no body to return (common for DELETE and some PUT requests).RFC 9110
205Reset Content2xx SuccessSuccess; the client should reset the form or view that sent the request.RFC 9110
206Partial Content2xx SuccessA range request succeeded; the body contains the requested byte range.RFC 9110
207Multi-Status2xx SuccessWebDAV: the body contains several status codes for several resources.RFC 4918
208Already Reported2xx SuccessWebDAV: members of a binding were already listed earlier in the multistatus response.RFC 5842
226IM Used2xx SuccessThe response is the result of applying instance manipulations (delta encoding) to the resource.RFC 3229
300Multiple Choices3xx RedirectionSeveral representations exist; the client or user can pick one.RFC 9110
301Moved Permanently3xx RedirectionThe resource has a new permanent URL; clients and search engines should update links. May change POST to GET.RFC 9110
302Found3xx RedirectionTemporary redirect to another URL; the original should still be used in future. May change POST to GET.RFC 9110
303See Other3xx RedirectionRedirect to a different resource with GET, typically after a form POST.RFC 9110
304Not Modified3xx RedirectionConditional request: the cached copy is still valid; no body is sent.RFC 9110
305Use Proxy3xx RedirectionDeprecated: the resource must be accessed through a proxy. Browsers ignore it.RFC 9110
306(Unused)3xx RedirectionReserved; was "Switch Proxy" in a draft and is no longer used.RFC 9110
307Temporary Redirect3xx RedirectionTemporary redirect that must keep the same method and body (POST stays POST).RFC 9110
308Permanent Redirect3xx RedirectionPermanent redirect that must keep the same method and body.RFC 9110
400Bad Request4xx Client errorThe server cannot process the request because of a client error (malformed syntax, invalid framing).RFC 9110
401Unauthorized4xx Client errorAuthentication is required or failed; the WWW-Authenticate header says how to authenticate.RFC 9110
402Payment Required4xx Client errorReserved for future use; some APIs use it for quota or billing problems.RFC 9110
403Forbidden4xx Client errorThe server understood the request but refuses to authorise it; authenticating again will not help.RFC 9110
404Not Found4xx Client errorNo resource matches the URL (or the server hides its existence).RFC 9110
405Method Not Allowed4xx Client errorThe method (for example POST) is not supported for this resource; Allow lists the valid ones.RFC 9110
406Not Acceptable4xx Client errorNo representation matches the Accept, Accept-Language or similar headers.RFC 9110
407Proxy Authentication Required4xx Client errorLike 401, but authentication is required by a proxy.RFC 9110
408Request Timeout4xx Client errorThe server gave up waiting for the request to arrive.RFC 9110
409Conflict4xx Client errorThe request conflicts with the current state of the resource (edit conflict, duplicate).RFC 9110
410Gone4xx Client errorThe resource was intentionally removed and will not return; search engines drop it faster than for 404.RFC 9110
411Length Required4xx Client errorThe server requires a Content-Length header.RFC 9110
412Precondition Failed4xx Client errorA condition in If-Match, If-Unmodified-Since or similar was not met.RFC 9110
413Content Too Large4xx Client errorThe request body exceeds the server's limit (formerly "Payload Too Large"); the usual response to an oversized upload.RFC 9110
414URI Too Long4xx Client errorThe URL is longer than the server will accept.RFC 9110
415Unsupported Media Type4xx Client errorThe body's Content-Type is not supported (for example a HEIC upload where only JPEG is accepted).RFC 9110
416Range Not Satisfiable4xx Client errorThe requested byte range lies outside the resource.RFC 9110
417Expectation Failed4xx Client errorThe Expect header requirement could not be met.RFC 9110
418(Unused)4xx Client errorReserved. Originally the April-1 "I'm a teapot" code from RFC 2324; not used by HTTP.RFC 9110
421Misdirected Request4xx Client errorThe request was sent to a server that cannot produce a response for that host (common with HTTP/2 connection reuse).RFC 9110
422Unprocessable Content4xx Client errorThe request is well-formed but semantically invalid (validation errors); widely used by APIs.RFC 9110
423Locked4xx Client errorWebDAV: the resource is locked.RFC 4918
424Failed Dependency4xx Client errorWebDAV: the request failed because a request it depended on failed.RFC 4918
425Too Early4xx Client errorThe server refuses to process a request that might be replayed (TLS early data).RFC 8470
426Upgrade Required4xx Client errorThe client must switch to a different protocol named in the Upgrade header.RFC 9110
428Precondition Required4xx Client errorThe server requires a conditional request (for example If-Match) to avoid lost updates.RFC 6585
429Too Many Requests4xx Client errorRate limit exceeded; Retry-After may say when to try again.RFC 6585
431Request Header Fields Too Large4xx Client errorA header or the combined headers are too large (often oversized cookies).RFC 6585
451Unavailable For Legal Reasons4xx Client errorAccess is blocked for legal reasons such as a court order or geo-restriction.RFC 7725
500Internal Server Error5xx Server errorA generic server-side failure; check the server logs.RFC 9110
501Not Implemented5xx Server errorThe server does not support the request method at all.RFC 9110
502Bad Gateway5xx Server errorA gateway or proxy received an invalid response from the upstream server.RFC 9110
503Service Unavailable5xx Server errorThe server is overloaded or down for maintenance; Retry-After may be set.RFC 9110
504Gateway Timeout5xx Server errorA gateway or proxy did not get a timely response from the upstream server.RFC 9110
505HTTP Version Not Supported5xx Server errorThe server does not support the HTTP version used in the request.RFC 9110
506Variant Also Negotiates5xx Server errorTransparent content negotiation is misconfigured (circular reference).RFC 2295
507Insufficient Storage5xx Server errorWebDAV: the server cannot store the representation needed to complete the request.RFC 4918
508Loop Detected5xx Server errorWebDAV: the server detected an infinite loop while processing a request with Depth: infinity.RFC 5842
510Not Extended (OBSOLETED)5xx Server errorObsoleted: further extensions to the request were required (historic HTTP extension framework).RFC 2774
511Network Authentication Required5xx Server errorThe client must authenticate to gain network access (captive portals on Wi-Fi).RFC 6585

Sources

Frequently asked questions

What is the difference between 401 and 403?

401 means the server does not know who you are: send credentials (or valid ones) and try again. 403 means it knows who you are and still refuses; retrying with the same identity will not help.

Should I use 301 or 308 for a permanent redirect?

Both are permanent. 301 allows clients to change a POST into a GET; 308 requires the method and body to be preserved. For plain page moves 301 is universal; for API endpoints that receive POST, use 308.

Why did my upload return 413?

The request body is larger than the server's configured limit (for example Nginx's client_max_body_size or a portal's file-size rule). Reduce the file with the image or video compressor before uploading.

Is 418 "I'm a teapot" a real status code?

It comes from an April-1 RFC (2324, Hyper Text Coffee Pot Control Protocol) and is not part of HTTP. IANA keeps 418 registered as "(Unused)" so no real meaning is ever assigned to it.

What are 520, 521, 522 and 499?

They are not standard. Cloudflare uses 520 to 530 for problems reaching an origin server, and Nginx logs 499 when the client closed the connection first. They never appear in the IANA registry.