HTTP Status Codes

Every HTTP status code, searchable, with guidance on when to use each one.

Features

  • Every registered status code across all five classes
  • Instant filtering by code, name or description
  • Guidance on when each code is appropriate
  • Class filters for 1xx through 5xx
  • Works offline once the page is cached

How to use it

  1. Type a code or a word into the search box.
  2. Or filter by class using the buttons.
  3. Read the description and the usage guidance.
  4. Copy the filtered list if you need it elsewhere.

Status codes people commonly get wrong

The 401 and 403 distinction is the most frequently muddled. 401 Unauthorized actually means unauthenticated, the request lacks valid credentials, and retrying with credentials might work. 403 Forbidden means the server knows who you are and you still may not have it; retrying with the same credentials will not help. A 401 response is required to include a WWW-Authenticate header telling the client how to authenticate.

Redirects have a subtlety that breaks form submissions. 301 and 302 historically allowed clients to change a POST into a GET when following the redirect, and most browsers do exactly that. 307 and 308 were introduced to guarantee the method and body are preserved. If you are redirecting anything other than a GET, use 307 or 308.

Two more worth knowing. 422 Unprocessable Content is the right code when a request is syntactically valid but semantically wrong, well-formed JSON that fails validation, where many APIs incorrectly return 400. And 429 Too Many Requests should always be accompanied by a Retry-After header; without it, clients have no way to back off sensibly and will usually just hammer you again.

Frequently asked questions

Yes, completely. HTTP Status Codes is free with no usage limits, no account and no sign-up. There is no paid tier and no trial that expires. Tools marked Premium on this site carry that label to indicate a deeper feature set, not a price.
HTTP Status Codes covers every registered status code across all five classes, instant filtering by code, name or description, guidance on when each code is appropriate, among other things. Everything is available immediately with no account, no sign-up and no usage limit.
The 401 and 403 distinction is the most frequently muddled. 401 Unauthorized actually means unauthenticated, the request lacks valid credentials, and retrying with credentials might work. 403 Forbidden means the server knows who you are and you still may not have it; retrying with the same credentials will not help. A 401 response is required to include a WWW-Authenticate header telling the client how to authenticate.
Everything is processed in your browser. Code, tokens and payloads you paste in never leave your device, which matters when you are debugging something that contains real credentials or customer data. Check the Network tab if you want to confirm it. Because nothing depends on a server, the tool also keeps working offline once the page has loaded, the site registers a service worker that caches it after your first visit.

Related tools

Further reading

📖 HTTP Status Codes Explained: What 404, 301 and 500 Really Mean

Read the full guide on the 123MiniApps blog.

Pick a theme

Ten hand-tuned palettes.