A fast, searchable HTTP status code list
Every time a browser, mobile app, or search engine crawler makes a request to a web server, the server replies with a three-digit number. These HTTP status codes tell the client exactly what happened: whether the request succeeded, failed, requires authentication, or needs to be redirected elsewhere.
This tool provides a complete, searchable dictionary of standard HTTP response codes based on official RFC specifications. Because the entire list is loaded and filtered locally in your browser, searching is completely instant. You don't need to wait for a page reload to look up the difference between a 301 and a 302, or to figure out what a 422 error means.
The five classes of HTTP response codes
HTTP codes are grouped into five distinct classes, defined by their first digit. Understanding these categories is the fastest way to diagnose web traffic issues:
1xx (Informational)
These codes indicate that the server has received the request and is continuing the process. They are temporary responses, and the client should wait for a final response. For example, 100 Continue tells the client to go ahead and send the request body.
2xx (Successful)
A 2xx code means the client's request was successfully received, understood, and accepted. The most common is 200 OK, which is the standard response for a successful HTTP request. When you create a new record via an API, you might see a 201 Created.
3xx (Redirection)
These codes tell the client that further action is needed to complete the request. This usually means the requested resource has moved. A 301 Moved Permanently tells search engines to update their links, while a 302 Found indicates a temporary move.
4xx (Client Error)
HTTP error codes in the 4xx range mean the problem is on the client's side. The request might contain bad syntax, lack proper authentication, or ask for a resource that doesn't exist. These errors are common when users mistype URLs or when API integrations send improperly formatted data.
5xx (Server Error)
A 5xx code means the server failed to fulfill a valid request. The client did everything right, but the server encountered an internal issue, crashed, or is currently overloaded.
Common HTTP error codes you should know
While there are dozens of codes, a handful make up the vast majority of errors you will encounter as a developer or webmaster:
The 404 status code (Not Found)
Perhaps the most famous error on the internet, the 404 status code means the server could not find the requested resource. For website owners, monitoring 404 errors is crucial for SEO, as broken links frustrate users and waste crawl budget.
400 Bad Request
The server cannot process the request due to a client error, such as malformed request syntax or invalid routing. APIs frequently return this when a required parameter is missing.
401 Unauthorized & 403 Forbidden
Both deal with access. A 401 Unauthorized means the client must authenticate itself to get the requested response (e.g., missing API key). A 403 Forbidden means the client's identity is known, but they do not have the necessary permissions to access the resource.
500 Internal Server Error
This is a generic catch-all for server-side crashes. It means the server encountered an unexpected condition that prevented it from fulfilling the request. When you see a 500 error, you usually need to check the server's application logs to find the root cause.
502 Bad Gateway & 503 Service Unavailable
A 502 Bad Gateway occurs when a server acting as a proxy (like Nginx or a load balancer) receives an invalid response from the upstream server. A 503 Service Unavailable means the server is currently unable to handle the request, usually because it is overloaded or down for maintenance.
Best practices for API development
When building a REST API, returning the correct HTTP status codes is essential for a good developer experience. Returning a 200 OK when an error actually occurred (often called "swallowing" errors) forces clients to manually parse the response body to figure out if their request actually succeeded.
Use this reference to pick the most semantically correct code. For example, use 429 Too Many Requests when a user hits a rate limit, or 422 Unprocessable Content when the JSON payload is valid but fails business logic validation.
If you are investigating server routing issues, you might also find our DNS Lookup tool helpful for verifying domain records, or the User-Agent Parser for understanding the clients making requests to your server. If you are trying to manage how search engines crawl your site to prevent 404s, try the Robots.txt Generator.