HTTP Status Codes
Look up any HTTP status code and what it means.
A fast, searchable reference for HTTP status codes. Search by number, name, or meaning — or filter by class (1xx–5xx) — to quickly understand what a response code means, from 200 OK to 404 Not Found and 500 Internal Server Error.
The server received the request headers and the client should proceed to send the body.
The server is switching protocols as requested by the client (e.g. to WebSocket).
Used to return preliminary headers so the client can preload resources.
The request succeeded. The meaning depends on the HTTP method.
The request succeeded and a new resource was created.
The request was accepted for processing, but it isn't complete yet.
The request succeeded but there's no content to return.
The server is delivering only part of the resource (used for range requests / resumable downloads).
The resource has permanently moved to a new URL. Update your links; passes SEO value.
The resource is temporarily at a different URL. Keep using the original URL.
Redirects to another URL, typically after a POST, using GET.
The cached version is still valid, so no body is sent. Speeds up repeat loads.
Like 302, but the HTTP method must not change on redirect.
Like 301, but the HTTP method must not change on redirect.
The server couldn't understand the request due to malformed syntax.
Authentication is required and has failed or not been provided.
Reserved for future use; sometimes used by APIs for billing/quota limits.
The server understood the request but refuses to authorize it.
The server can't find the requested resource. The most famous error code.
The HTTP method isn't supported for this resource.
The resource can't produce a response matching the request's Accept headers.
The server timed out waiting for the request.
The request conflicts with the current state of the resource.
The resource is permanently gone with no forwarding address.
The request body is larger than the server is willing to process.
The requested URL is longer than the server will interpret.
The request's media type isn't supported by the server.
An April Fools' joke code — the server refuses to brew coffee because it is a teapot.
The request was well-formed but has semantic errors (common for validation failures).
The user has sent too many requests in a given time (rate limiting).
The resource is blocked for legal reasons (e.g. censorship).
A generic server error — something went wrong and there's no more specific message.
The server doesn't support the functionality to fulfill the request.
A server acting as a gateway got an invalid response from the upstream server.
The server is temporarily overloaded or down for maintenance.
A gateway server didn't get a timely response from the upstream server.
The server doesn't support the HTTP version used in the request.
The client must authenticate to gain network access (e.g. a captive Wi-Fi portal).
Runs entirely in your browser — nothing is uploaded.
How to use the http status codes
- 1Search a code, name, or keyword (e.g. 404, redirect, timeout).
- 2Filter by class — 1xx, 2xx, 3xx, 4xx, or 5xx.
- 3Read the plain-English meaning of each code.
Frequently asked questions
What's the difference between 301 and 302?
301 is a permanent redirect (update your links; it passes SEO value), while 302 is temporary (keep using the original URL).
What does 404 mean?
404 Not Found means the server couldn't find the requested resource — the URL may be wrong or the page removed.
What is a 500 error?
500 Internal Server Error is a generic server-side failure — something went wrong on the server with no more specific message.
What are the HTTP status code classes?
1xx informational, 2xx success, 3xx redirection, 4xx client errors, and 5xx server errors.
