Developer Tools

HTTP Status Codes Reference


Search and filter every HTTP status code from 1xx to 5xx with a plain-language explanation of what it means and when it is used — free and in your browser.

The HTTP Status Codes Reference is a free, searchable list of every standard HTTP response code, from 100 Continue to 511 Network Authentication Required. Each entry pairs the number and official name with a plain-language explanation of what the code means and when a server sends it, so you can decode any response in seconds. The full data set is bundled into the page, so search and category filtering happen instantly in your browser with nothing sent to a server.

What is an HTTP status code?

An HTTP status code is a three-digit number a server returns with every response to tell the client how the request went. The first digit sorts the code into one of five classes: 1xx informational, 2xx success, 3xx redirection, 4xx client error, and 5xx server error. That single digit is the fastest way to triage a response — a 2xx means it worked, a 4xx means the request was wrong, and a 5xx means the server broke.

How to use the HTTP status code reference

  1. Type a number like 404 or a keyword like not found or teapot into the search box to filter instantly.
  2. Click a category chip — 1xx, 2xx, 3xx, 4xx, or 5xx — to narrow the list to one class of codes.
  3. Combine search and a category chip to zero in, for example filtering to 4xx and searching auth.
  4. Read the card for each code: its number, name, category, and a short description of what it means and when it appears.
  5. Click any card to copy the status number to your clipboard for use in code, tickets, or documentation.

What each status class means

  • 1xx Informational: the request was received and the process is continuing, as with 100 Continue or the WebSocket handshake 101 Switching Protocols.
  • 2xx Success: the request was received, understood, and accepted — 200 OK, 201 Created, and 204 No Content are the everyday ones.
  • 3xx Redirection: further action is needed to complete the request, usually following a redirect such as 301 Moved Permanently or 302 Found.
  • 4xx Client Error: the request was faulty — a bad URL (404), missing credentials (401), no permission (403), or rate limiting (429).
  • 5xx Server Error: the server failed to fulfil a valid request, as with 500 Internal Server Error, 502 Bad Gateway, and 503 Service Unavailable.

Why use a status code reference?

When you are debugging an API or a website, the status code is the first clue, but the number alone rarely tells the whole story. Knowing that 401 Unauthorized actually means "unauthenticated" or that 403 Forbidden will not be fixed by logging in again saves real time. This reference is handy right beside the tools you already use to inspect requests: reach for a URL Parser to break down the endpoint that returned the code, or paste a request into the cURL to Code Converter to reproduce it in your language of choice and watch the status change as you tweak headers.

Common status codes you will meet

A handful of codes account for most of what you see day to day. 200 OK is the default success, 301 and 308 are the permanent redirects that preserve SEO ranking, and 304 Not Modified keeps caches efficient. On the error side, 400, 401, 403, 404, and 429 cover the vast majority of client problems, while 500, 502, 503, and 504 cover the server side. If a response depends on the User-Agent, matching the code against the client that sent it — decoded with a User Agent Parser — can reveal why a bot gets a 403 while a browser gets a 200.

When to use which redirect

Redirects trip people up more than any other class. Use 301 or 308 for permanent moves and 302 or 307 for temporary ones; the difference between the newer pair and the older pair is that 307 and 308 guarantee the HTTP method does not change, so a POST stays a POST. For the classic Post/Redirect/Get flow after a form submission, 303 See Other is the correct choice. When you are validating patterns in log files full of these codes, a Regex Tester & Explainer makes it easy to match, say, every 5xx line at once.

HTTP status codes reference features

  • Complete set of standard codes across all five classes, 100 through 511, each with an official name.
  • Instant search by number, name, or description — no page reloads and no network requests.
  • Category filter chips for 1xx, 2xx, 3xx, 4xx, and 5xx, combinable with search.
  • Clean, color-coded cards and one-click copy of any status number.
  • 100% client-side — no libraries, no server calls, nothing stored.

Status codes are one signal among many when you diagnose why a request behaves unexpectedly. When a 5xx or a stubborn redirect turns out to be a routing or DNS problem rather than an application bug, a DNS Lookup helps confirm the host is resolving to the server you expect. Treat the status code as the headline and these companion tools as the supporting detail.

Frequently Asked Questions

What are the five categories of HTTP status codes?

HTTP status codes are grouped by their first digit: 1xx is informational, 2xx is success, 3xx is redirection, 4xx is a client error, and 5xx is a server error. The first digit alone tells you whether a request worked, was redirected, was wrong, or hit a server failure.

What is the difference between a 401 and a 403 status code?

A 401 Unauthorized means authentication is missing or has failed, so providing valid credentials can fix it. A 403 Forbidden means the server understood who you are but refuses the request, so you lack permission and sending credentials again will not help.

When should I use a 301 instead of a 302 redirect?

Use a 301 Moved Permanently when a resource has moved for good, such as a site migration, because search engines transfer ranking to the new URL. Use a 302 Found for a temporary move where the original URL should still be used in the future.

What does a 500 Internal Server Error mean?

A 500 is a generic catch-all indicating the server hit an unexpected condition, often an unhandled exception or bug in server-side code. It does not point to a specific cause, so you usually need to check server logs to find the underlying error.

Is HTTP status code 418 real?

Code 418 I'm a Teapot comes from an April Fools joke, RFC 2324, where a teapot refuses to brew coffee. It is not a standard error but is implemented by some servers and frameworks and is sometimes used playfully to reject requests.

Does this tool send my searches anywhere?

No. The entire list of status codes is bundled into the page, and all searching and filtering happens in your browser with JavaScript. Nothing you type is transmitted to a server or stored anywhere.