Skip to content
Toolew.com

HTTP Status Codes Reference

Look up every IANA HTTP status code plus common nginx and Cloudflare extras, searchable by number, name or meaning, with the defining RFC and caching notes.

Runs in your browser. Your data is not uploaded.
Loading tool…

Tool guide

What this tool does

HTTP Status Codes Reference lists every status code registered with IANA under RFC 9110, from 100 Continue through 511 Network Authentication Required, alongside widely seen non-standard codes from nginx and Cloudflare. Filter by response class, search by number, keyword or behaviour, and read the defining specification, a plain explanation and whether the response is cacheable by default.

An HTTP status code is the three-digit number a server sends back with every response, and the first digit alone tells you the broad outcome: 1xx is informational, 2xx is success, 3xx is redirection, 4xx is a client-side error and 5xx is a server-side failure. Memorising all of them is unrealistic, and guidance scattered across old blog posts often confuses a code’s intent with how one particular framework happens to use it.

This reference pulls together the full IANA HTTP Status Code Registry, built on RFC 9110, along with a handful of non-standard codes that show up constantly in real traffic, such as nginx’s 444 and 499 and Cloudflare’s 520 through 526. Search works by typing a bare number, a code prefix such as 4 or 5, or a keyword like redirect, rate limit or teapot. Each entry notes the exact RFC section, a short explanation of when it is sent and whether it can be cached by a shared cache without extra headers.

How to use HTTP Status Codes Reference

  1. Type a status code, a prefix such as 42, or a keyword like "not found" or "redirect" into the search box.
  2. Use the status class buttons to narrow results to just 1xx, 2xx, 3xx, 4xx or 5xx.
  3. Turn off Include non-standard codes if you only want codes from the official IANA registry.
  4. Read the RFC reference under each code to trace the exact specification clause it comes from.
  5. Check the Cacheable by default badge before relying on a response being stored by a shared cache or CDN.
  6. Copy a code and its name with the copy button when writing documentation or a support reply.

Tips for better results

  • Typing just a leading digit such as 4 or a short prefix such as 50 filters to every code that starts with those digits.
  • A code outside the list, such as 499 with non-standard codes turned off, still shows a note explaining which official class it falls back to.
  • nginx’s 444 and 499 and Cloudflare’s 52x codes never reach the origin application; they describe what the proxy itself did.
  • 301, 308 and 404 are cacheable by default under RFC 9110, which is worth knowing before debugging why an old redirect still shows up.

Common use cases

  • Deciding which status code an API endpoint should return for a validation failure, a missing resource or a conflict.
  • Explaining to a teammate what a Cloudflare 522 or 524 error actually means during an incident.
  • Writing API documentation that lists accurate response codes with their RFC source.
  • Checking whether a status code your monitoring tool just alerted on is a client problem or a server problem.

Common mistakes to avoid

  • Returning 200 OK with an error message in the body; clients and proxies cannot distinguish that from a real success.
  • Using 404 when the real situation is 410 Gone for content that was deliberately removed, which search engines treat differently.
  • Assuming every 4xx or 5xx code is cacheable; only a handful, such as 404 and 501, are cacheable by default without explicit headers.

Frequently asked questions

What is the difference between 401 and 403?

401 Unauthorized means authentication is missing or invalid and must include a WWW-Authenticate header. 403 Forbidden means the server knows who you are and still refuses the request, and re-authenticating will not change that.

Why am I seeing Cloudflare error codes like 522 or 524?

Those codes are generated by Cloudflare itself when it cannot reach or get a timely response from your origin server, not by your application. 522 means the TCP connection failed; 524 means the origin took longer than 100 seconds to answer.

Is 418 I’m a teapot a real status code?

It began as an April Fools’ joke in RFC 2324 and was later preserved in RFC 9110 specifically so it is never reassigned a serious meaning.

What does it mean for a status code to be cacheable by default?

Under RFC 9110, certain codes such as 200, 301 and 404 may be stored and reused by a shared cache even without explicit Cache-Control headers, while others such as 500 are never cached unless told to be.

Feedback & suggestions

Help us improve HTTP Status Codes Reference. We read every message.

Rating (optional)
Necessary
Required for security, language and theme preferences. Always on.