Search the code
Type 404, a word such as redirect, or part of the name.
Search any HTTP status code and read what it means and when it appears. Filter by family, from informational 1xx codes to server errors in 5xx.
| Code | Name | Meaning |
|---|---|---|
| 100 | Continue | The server has received the headers and the client can go on sending the body. |
| 101 | Switching Protocols | The server agrees to change protocol as requested, for example to WebSocket. |
| 102 | Processing | The server has accepted the request and is still working on it (WebDAV). |
| 103 | Early Hints | Lets the browser start loading resources while the server prepares the final response. |
| 200 | OK | The request succeeded. What the body holds depends on the method used. |
| 201 | Created | The request succeeded and a new resource was created, typically after a POST or PUT. |
| 202 | Accepted | The request was accepted for processing, but the work is not finished yet. |
| 203 | Non-Authoritative Information | The response comes from a proxy that changed the original answer. |
| 204 | No Content | The request succeeded and there is nothing to send back. Common after a DELETE. |
| 205 | Reset Content | The request succeeded and the client should reset the view, for example clear a form. |
| 206 | Partial Content | Only the part of the resource that was asked for with a Range header is returned. |
| 300 | Multiple Choices | There are several possible responses and the client has to choose one. |
| 301 | Moved Permanently | The resource has a new permanent address. Search engines transfer the ranking to it. |
| 302 | Found | The resource is temporarily at another address. The original address stays valid. |
| 303 | See Other | The response is at another address and should be fetched with GET, usual after a form POST. |
| 304 | Not Modified | The cached copy is still valid, so the server sends no body. It saves bandwidth. |
| 307 | Temporary Redirect | Like 302, but the client must repeat the request with the same method and body. |
| 308 | Permanent Redirect | Like 301, but the client must repeat the request with the same method and body. |
| 400 | Bad Request | The server cannot understand the request: malformed syntax, invalid data or a broken cookie. |
| 401 | Unauthorized | Authentication is required or has failed. Log in, or check the credentials or token. |
| 402 | Payment Required | Reserved for digital payment schemes. Some services use it when a plan or quota is exhausted. |
| 403 | Forbidden | The server understood the request but refuses it. You are identified but not allowed. |
| 404 | Not Found | The address does not exist on the server. It may be mistyped, moved or deleted. |
| 405 | Method Not Allowed | The resource exists but does not accept that method, for example a POST to a read-only address. |
| 406 | Not Acceptable | The server cannot produce a response in any of the formats the client accepts. |
| 407 | Proxy Authentication Required | Like 401, but the authentication is demanded by a proxy. |
| 408 | Request Timeout | The server waited too long for the client to finish sending the request. |
| 409 | Conflict | The request clashes with the current state of the resource, such as an edit conflict or a duplicate. |
| 410 | Gone | The resource used to exist and has been removed for good. Stronger than 404. |
| 411 | Length Required | The server needs a Content-Length header in the request. |
| 412 | Precondition Failed | A condition in the request headers, such as If-Match, was not met. |
| 413 | Content Too Large | The request body is larger than the server accepts, common with file uploads. |
| 414 | URI Too Long | The address is longer than the server is willing to process. |
| 415 | Unsupported Media Type | The server does not accept the format of the data sent, for example the wrong Content-Type. |
| 416 | Range Not Satisfiable | The requested byte range lies outside the size of the resource. |
| 417 | Expectation Failed | The server cannot meet the requirement of the Expect header. |
| 418 | I'm a teapot | A joke from the 1998 April Fools RFC. Some services use it to reject bots. |
| 421 | Misdirected Request | The request was sent to a server that cannot produce a response for it. |
| 422 | Unprocessable Content | The syntax is right but the content is not valid, typical of failed form or API validation. |
| 423 | Locked | The resource is locked and cannot be changed right now (WebDAV). |
| 424 | Failed Dependency | The request failed because an earlier request it depended on failed (WebDAV). |
| 425 | Too Early | The server refuses to process a request that could be replayed. |
| 426 | Upgrade Required | The client must switch to another protocol, given in the Upgrade header. |
| 428 | Precondition Required | The server requires the request to be conditional, to avoid overwriting changes. |
| 429 | Too Many Requests | Rate limit reached. Wait, and check the Retry-After header if it is present. |
| 431 | Request Header Fields Too Large | The headers, often the cookies, are too big for the server. |
| 451 | Unavailable For Legal Reasons | Access is denied because of a legal demand, such as a court order. |
| 500 | Internal Server Error | A generic failure on the server: an unhandled error in the code or a bad configuration. |
| 501 | Not Implemented | The server does not support what the request needs, such as an unknown method. |
| 502 | Bad Gateway | A gateway or proxy got an invalid answer from the server behind it. |
| 503 | Service Unavailable | The server is overloaded or down for maintenance. It is usually temporary. |
| 504 | Gateway Timeout | A gateway or proxy waited too long for the server behind it to answer. |
| 505 | HTTP Version Not Supported | The server does not support the HTTP version used in the request. |
| 507 | Insufficient Storage | The server has no room left to store what the request needs (WebDAV). |
| 508 | Loop Detected | The server found an infinite loop while processing the request (WebDAV). |
| 511 | Network Authentication Required | The client must log in to the network first, as on the captive portal of a public Wi-Fi. |
No status code matches your search.
Everything on this page works in your browser.
Type 404, a word such as redirect, or part of the name.
Choose 2xx, 3xx, 4xx or 5xx to see one family at a time.
Each code has a short explanation and its usual cause.
Every time a browser, an app or a script asks a server for something, the server answers with a three-digit status code before anything else. It says whether the request worked, whether the thing has moved, or who is at fault when it failed. Knowing them makes it much faster to debug a broken page, an API that returns errors or a link that does not load, and it matters for search engines, which use these codes to decide what to keep in their index.
401 and 403. With 401 the server does not know who you are, so log in. With 403 it knows and the answer is no. 301 and 302. Use 301 when a page has moved for good, because search engines transfer its ranking to the new address. Use 302 for a temporary detour. 404 and 410. A 404 says the page is not there, and a 410 says it was removed on purpose and will not return, which search engines process a little faster. 502, 503 and 504. A 502 is a bad reply from a server behind a gateway, a 504 is no reply in time, and a 503 is a service that is overloaded or in maintenance.
Search engines look at status codes to decide what to do with a page. A 200 is indexed, a 301 passes the ranking to the new address, a 404 or 410 is removed over time, and a run of 5xx errors can make a crawler slow down or stop visiting. A page that shows an error message but returns 200, known as a soft 404, confuses crawlers, so an error page should return the matching code.
It covers the codes in the HTTP standards and the common WebDAV ones. Some services use their own codes, such as those in the 520 range from some content delivery networks, that are not in the standard and are not listed. The explanations are simplified, so for a protocol detail check the official specification.
More utilities that also run without leaving your browser.