HTTP Status Code Lookup

Search or browse every HTTP status code with a plain-English explanation, common causes and what to do about it.

Type a code like 404 or a keyword like gateway or rate limit, or filter by the five classes (informational, success, redirection, client error, server error). Click any code for the full breakdown — what it really means, why it usually happens, and how to fix it from either side of the request. Stuck on a log line? Paste it into the diagnose box below and we’ll pull out the code for you.

🔒 100% private — nothing is uploaded or stored. Every search and lookup runs locally in your browser with plain JavaScript. The codes you search and the log lines you paste are never sent to our servers, and nothing is stored anywhere.

Search status codes

Diagnose a response or log line

Paste a status line, a curl error, or a line from a web-server log. We’ll find the status code in it and show you the full explanation. This runs entirely in your browser.

How status codes work

Every HTTP response starts with a three-digit status code (defined in RFC 9110). The first digit is the class, and it tells you who the problem is with and what to do next:

ClassMeaningWho’s “at fault”
1xx InformationalThe request was received; the process is continuing.Neither — it’s a handshake step.
2xx SuccessThe request was successfully received, understood and accepted.Neither — it worked.
3xx RedirectionThe client must take further action to complete the request.Neither — follow the Location header.
4xx Client ErrorThe request has bad syntax or cannot be fulfilled.The client (you / your app).
5xx Server ErrorThe server failed to fulfill a valid request.The server (the site / API).

A quick rule of thumb when you’re debugging: 4xx means fix the request (the URL, the method, the auth, the payload) and 5xx means the server is in trouble (check its logs, or retry with backoff if it might be transient).

Common confusions

These are the codes people mix up most often. Here’s how to tell them apart:

CodesHow to tell them apart
301 / 302 / 308 All redirect. 301 and 308 are permanent (update your links, search engines move ranking); 302 is temporary. 308 is the permanent one that preserves the HTTP method (a POST stays a POST), while 301/302 may be downgraded to GET by the client.
401 / 403 401 Unauthorized = “who are you?” — you aren’t authenticated (missing/expired login or token). 403 Forbidden = “I know who you are, and no” — you’re authenticated but not allowed. 401 asks you to log in; 403 does not.
404 / 410 Both mean “not here.” 404 = we can’t find it (may be a typo or a missing route). 410 Gone = it used to be here and is deliberately gone for good — don’t keep retrying.
429 / 503 Both say “slow down.” 429 Too Many Requests = you are sending too much (rate limit). 503 Service Unavailable = the server is overloaded or in maintenance. 429 is your fault; 503 is theirs.
502 / 503 / 504 All point at a server behind a proxy/load balancer. 502 Bad Gateway = the upstream gave a garbage or no response (often down or crashed). 503 = the upstream is alive but refusing work (overloaded / maintenance). 504 Gateway Timeout = the upstream took too long to answer.
400 / 422 Both mean “bad request body.” 400 = the request is malformed (bad syntax, missing parameter, can’t even parse it). 422 = the syntax is fine but the content fails validation (valid JSON, wrong values).

Which codes are safe to retry?

Not every error wants a retry. Blindly retrying can duplicate orders, double-charge cards, or hammer a struggling server. As a guide:

  • Safe to retry (idempotent or transient): 408, 425, 429 (after the Retry-After delay), 500, 502, 503, 504. Use exponential backoff with jitter.
  • Retry only after fixing the request: 400, 401 (re-authenticate), 405, 406, 415, 422, 428.
  • Don’t retry: 403, 404, 410, 413, 451, 501. Retrying the identical request will get the identical answer.
  • Be careful: non-idempotent writes (POST creating a resource) can duplicate side effects on retry. Prefer idempotency keys, or only retry codes the API documents as retry-safe.

Nothing on this page leaves your browser: there is no server round-trip when you search, no analytics on your inputs, and no storage of any kind.


Luke Keam
Thank you for reading. Email me: [email protected]
Luke Keam | techgeek.biz