HTTP Status Code Reference
Welcome to our comprehensive HTTP Status Code Reference — your complete guide to understanding every HTTP response code defined by the Internet Engineering Task Force (IETF). Whether you're debugging a web application, configuring a reverse proxy, analyzing server logs, or simply learning how the web works, this reference provides clear explanations, practical examples, and troubleshooting guidance for all standard HTTP status codes from 1xx informational responses to 5xx server errors. Each entry includes the official RFC definition, common causes, typical scenarios, and actionable advice for resolution.
What Is
HTTP status codes are three-digit numbers returned by web servers to indicate the result of a client's request. Defined in RFC 7231 and other IETF specifications, these codes communicate whether a request was successful, redirected, or encountered an error. They are categorized into five classes: 1xx (Informational) indicates the request was received and processing continues; 2xx (Success) means the request was successfully received, understood, and accepted; 3xx (Redirection) signals that further action is needed to complete the request; 4xx (Client Error) indicates the request contains bad syntax or cannot be fulfilled by the server; and 5xx (Server Error) means the server failed to fulfill a valid request. Understanding these codes is essential for web developers, system administrators, DevOps engineers, and QA testers who need to diagnose network issues, configure APIs, monitor uptime, and ensure proper communication between clients and servers. This reference covers all standard codes including the commonly encountered 200 OK, 301 Moved Permanently, 304 Not Modified, 400 Bad Request, 401 Unauthorized, 403 Forbidden, 404 Not Found, 500 Internal Server Error, 502 Bad Gateway, and 503 Service Unavailable.
How to Use
- Browse status codes by category using the navigation tabs for 1xx, 2xx, 3xx, 4xx, and 5xx response classes.
- Search for a specific status code using the search box — type the code number (e.g., 404) or name (e.g., 'Not Found').
- Read the detailed explanation for each status code including the official RFC definition and common causes.
- Check the troubleshooting tips section for actionable steps to resolve the specific error or condition.
- Use the copy feature to copy any status code's details for documentation, support tickets, or team communication.
- Bookmark frequently referenced codes for quick access during development and debugging sessions.
Examples
Input: Status: 404 Not Found
Process: Classify 4xx (client error) → Map specific code → Explain when triggered
Result: Server cannot find the requested resource (missing page/file)
Input: Status: 301 Moved Permanently
Process: Classify 3xx (redirect) → Update bookmarks → SEO implication
Result: Resource permanently relocated, update all links to new URL
Related Searches
People also search for: http status code, status code reference, http error codes, http response codes, web server status.
http status codestatus code referencehttp error codeshttp response codesweb server status
Frequently Asked Questions
What are the five classes of HTTP status codes?
HTTP status codes are divided into five classes: 1xx (Informational) means the request was received and the process is continuing; 2xx (Success) indicates the action was successfully received, understood, and accepted — the most common being 200 OK; 3xx (Redirection) means further action needs to be taken by the user agent to fulfill the request, like 301 and 302; 4xx (Client Error) indicates the request contains bad syntax or cannot be fulfilled, with 404 Not Found being the most well-known; and 5xx (Server Error) means the server failed to fulfill an apparent valid request, such as 500 Internal Server Error.
What is the difference between 401 Unauthorized and 403 Forbidden?
401 Unauthorized means the request lacks valid authentication credentials — the client must authenticate itself to get the requested response. The server challenges the client to provide authentication (e.g., via a login page or API token). 403 Forbidden means the server understood the request but refuses to authorize it — the client's identity is known but they don't have permission to access the resource. Unlike 401, re-authenticating won't help with 403 because the issue is authorization, not authentication.
How many HTTP status codes exist in total?
There are many HTTP status codes defined across various RFC documents. The IANA (Internet Assigned Numbers Authority) maintains the official registry with over 60 standardized codes ranging from 100 Continue to 511 Network Authentication Required. However, only about 30-40 are commonly encountered in everyday web development. This reference covers all standard codes including specialized ones like 418 I'm a Teapot (an April Fools' RFC), 429 Too Many Requests (rate limiting), and 503 Service Unavailable (maintenance mode).
What does 304 Not Modified mean and how is it useful?
304 Not Modified is a redirect code that tells the client the requested resource has not changed since the last request. Instead of sending the full response body again, the server sends this code to instruct the client to use its cached version. This significantly reduces bandwidth usage and improves page load times, especially for large static assets like images, CSS files, and JavaScript bundles. It's a fundamental part of HTTP conditional request caching and is essential for website performance optimization.
How should I handle 5xx errors in my application?
5xx errors indicate server-side failures — the client's request was valid but the server couldn't fulfill it. Common handling strategies include: implementing retry logic with exponential backoff for temporary issues, displaying user-friendly error messages instead of raw error codes, logging detailed error information on the server side for debugging, setting up monitoring and alerting to catch 5xx spikes early, and using load balancers with health checks to route traffic away from unhealthy servers. For your own APIs, ensure you return appropriate 5xx codes with clear error details in the response body.