What do HTTP codes 200, 301, 404 or 500 mean?
Every server response has a three-digit HTTP status code: `200` (success), `404` (not found), `500` (server error). There are about 60 of these and most developers only remember the popular ones.
This is a cheat sheet for all of them. Type a number ("404"), name ("not found"), or part of the description ("payload too large") and get the matching code with a plain English explanation, when to use it, and a sample HTTP response.
Everything works offline because the data is baked into the page. No API calls. Arrow keys + Enter copy the code with one keystroke.
How to use it
- Type a code number, a name, or part of the description in the search box. The list filters instantly.
- Use the 1xx / 2xx / 3xx / 4xx / 5xx pills to filter by category.
- Arrow keys ↑↓ move the highlight, Enter copies the first hit (number plus name).
- Click any code to see the full description, when to use it, and an example HTTP response.
- The Copy button grabs just the code, the name, or the raw response to paste into tests.
When this is useful
A daily cheat sheet for API design and production debugging:
- Designing a REST API - which response fits? Success with no body = `204 No Content`. Field validation error = `422 Unprocessable Entity`. Rate limit hit = `429 Too Many Requests`.
- Debugging production - you see a `502` in Nginx logs and forget what it means. Type "502", get the answer: gateway received a bad response from upstream.
- Frontend mapping - map codes to UI states. `401` = show the login screen, `403` = show the "no access" page, `409` = "someone already took that".
- Onboarding a junior - send them this page instead of explaining the codes every time.
- Technical interviews - quick refresher on the 401 (not logged in) vs 403 (logged in but blocked) distinction.
- Monitoring config - which codes should be alerts? `5xx` always, `4xx` rarely (mostly client mistakes).
- Writing integration tests - you need to assert the right status code but forgot whether it is `409` or `412`. Check here in 2 seconds.
To test live HTTP responses, use our HTTP request tester. To look up HTTP headers, see the HTTP headers reference.