HTTP Status Code Checker
Check the HTTP status code of any URL instantly. See the response status, headers, redirect chain, and response time — all from a single lookup. No signup required.
Try these examples:
HTTP Status Code Quick Reference
Request succeeded — content returned
Resource successfully created
Success with no response body
Permanent redirect to new URL
Temporary redirect
Cached version is still valid
Malformed request syntax
Authentication required
Server refuses to fulfill request
Resource does not exist
Rate limit exceeded
Generic server-side error
Invalid response from upstream
Server temporarily overloaded
Upstream server timed out
Don't Just Check Once — Monitor Continuously
Manually checking HTTP status codes is useful for debugging, but your APIs and websites need 24/7 monitoring. API Status Check monitors your endpoints continuously and alerts you the moment something returns a non-2xx status code.
Understanding HTTP Status Codes
HTTP status codes are three-digit numbers returned by a web server in response to every request made by a client (browser, API client, or bot). They communicate whether the request was successful, needs further action, or resulted in an error. Understanding HTTP status codes is essential for web development, API integration, debugging, and monitoring.
Status codes are defined by RFC 7231 and are grouped into five classes based on the first digit:
1xx — Informational Responses
Informational responses indicate that the server has received the request and the client should continue. You rarely see these in normal web browsing:
- 100 Continue — The server has received the request headers, and the client should proceed to send the body.
- 101 Switching Protocols — The server is switching protocols as requested (e.g., upgrading to WebSocket).
- 103 Early Hints — The server sends preliminary headers before the final response (used for preloading).
2xx — Success
Success codes indicate that the request was received, understood, and accepted. These are the status codes you want to see in your monitoring:
- 200 OK — The standard success response. The request was fulfilled and the response body contains the requested data.
- 201 Created — A new resource was successfully created (common in REST APIs after POST requests).
- 204 No Content — The request succeeded but there is no content to return (common for DELETE operations).
- 206 Partial Content — The server is returning only part of the resource (used for range requests in video streaming and large file downloads).
3xx — Redirection
Redirect codes indicate that further action is needed to complete the request. Our HTTP status checker traces the full redirect chain so you can see every hop:
- 301 Moved Permanently — The resource has permanently moved to a new URL. Search engines transfer link equity. Use for permanent domain or URL changes.
- 302 Found — The resource is temporarily at a different URL. Search engines keep indexing the original URL. Use for temporary situations.
- 303 See Other — The response to the request can be found at a different URL using GET. Often used after a POST form submission.
- 304 Not Modified — The cached version is still valid. The server does not return a body, saving bandwidth.
- 307 Temporary Redirect — Like 302, but the client must use the same HTTP method. Preserves POST requests through redirects.
- 308 Permanent Redirect — Like 301, but the client must use the same HTTP method. The permanent version of 307.
4xx — Client Errors
Client error codes indicate that the request contains bad syntax or cannot be fulfilled. The problem is on the client's side:
- 400 Bad Request — The server cannot process the request due to malformed syntax, invalid parameters, or missing required fields.
- 401 Unauthorized — Authentication is required. The client must provide valid credentials (API key, bearer token, etc.).
- 403 Forbidden — The server understands the request but refuses to authorize it. Unlike 401, re-authenticating will not help — the client lacks permission.
- 404 Not Found — The requested resource does not exist on the server. The most common HTTP error that users encounter.
- 405 Method Not Allowed — The HTTP method (GET, POST, PUT, DELETE) is not supported for this endpoint.
- 408 Request Timeout — The client took too long to send the request. The server timed out waiting.
- 429 Too Many Requests — Rate limiting is in effect. The client has sent too many requests in a given time period. Check for Retry-After header.
5xx — Server Errors
Server error codes indicate that the server failed to fulfill a valid request. These are the most critical codes for monitoring — they signal outages and degraded service:
- 500 Internal Server Error — A generic catch-all error. The server encountered an unexpected condition. Usually indicates a bug in the application code or a misconfigured server.
- 502 Bad Gateway — The server acting as a gateway or proxy received an invalid response from an upstream server. Common in load-balanced architectures and CDNs.
- 503 Service Unavailable — The server is temporarily unable to handle the request, usually due to overload or maintenance. May include a Retry-After header.
- 504 Gateway Timeout — The server acting as a gateway did not receive a timely response from the upstream server. Common when backend services are slow or unresponsive.
Response Headers Explained
Our HTTP status checker shows the response headers returned by the server. Here are the most important ones to look for:
Content Headers
- content-type — The media type of the response (e.g.,
text/html,application/json). - content-length — The size of the response body in bytes.
Caching Headers
- cache-control — Directives for caching (e.g.,
max-age=3600,no-cache,private). - etag — A unique identifier for the resource version. Used for conditional requests.
- last-modified — When the resource was last changed.
Security Headers
- strict-transport-security (HSTS) — Forces HTTPS connections for a specified duration.
- x-frame-options — Controls whether the page can be embedded in iframes (clickjacking protection).
- x-content-type-options — Prevents MIME type sniffing when set to
nosniff. - content-security-policy — Defines approved sources of content to prevent XSS attacks.
Server Info
- server — The web server software (e.g.,
nginx,cloudflare,Apache). - x-powered-by — The technology stack (e.g.,
Express,Next.js). Often hidden for security.
Using HTTP Status Codes in API Monitoring
HTTP status codes are the foundation of API monitoring. When you monitor an endpoint, the monitoring service makes periodic HTTP requests and checks the status code:
- 2xx response → Endpoint is healthy and operational
- 3xx response → Redirect detected — may indicate a configuration change
- 4xx response → Client-side issue (broken endpoint, authentication problem)
- 5xx response → Server-side error — immediate alert needed
- No response / timeout → The server is unreachable — critical alert
API Status Check monitors over 100 popular APIs and services continuously, checking HTTP status codes every few minutes. When an endpoint returns a non-2xx status code, subscribers receive instant alerts via email, Slack, Discord, or webhook.
Common HTTP Status Code Debugging Tips
Debugging 301/302 Redirect Loops
If you see a redirect loop (A → B → A → B…), use our HTTP status checker to trace the redirect chain. Common causes: HTTP-to-HTTPS redirect conflicts with a load balancer, www-to-non-www redirect loops, or conflicting redirect rules in server configuration. Fix by ensuring each redirect goes directly to the final canonical URL.
Debugging 403 Forbidden
A 403 status code means the server understood your request but refuses to authorize it. Common causes: missing or invalid API key, IP-based access restrictions, geographic restrictions, or WAF (Web Application Firewall) blocking the request. Check your request headers, API credentials, and any IP allowlists.
Debugging 502/504 Gateway Errors
Gateway errors (502, 504) typically indicate a problem between the edge server (CDN, load balancer, reverse proxy) and the origin server. Common causes: the origin server is down or overloaded, the connection between edge and origin timed out, or the origin server is returning malformed responses. These are often transient and resolve on their own, but persistent 502/504 errors require investigation of the backend infrastructure.
Frequently Asked Questions About HTTP Status Codes
What is an HTTP status code?
An HTTP status code is a three-digit number returned by a web server in response to every request. It indicates whether the request was successful (2xx), redirected (3xx), a client error (4xx), or a server error (5xx). Common examples include 200 (OK), 301 (Moved Permanently), 404 (Not Found), and 500 (Internal Server Error).
How do I check the HTTP status code of a URL?
Enter the URL in our HTTP status code checker above and click “Check Status.” The tool fetches the URL from our servers and displays the status code, response headers, redirect chain, and response time. You can also use curl -I URL from the command line.
What does a 200 status code mean?
HTTP 200 OK means the request succeeded and the server returned the requested content. This is the standard response for successful requests. For APIs, it means the endpoint is healthy and responding correctly.
What is the difference between 301 and 302 redirects?
A 301 redirect is permanent — search engines transfer link equity to the new URL. A 302 redirect is temporary — search engines keep indexing the original URL. Use 301 for permanent URL changes and 302 for temporary situations like A/B testing.
What does a 404 error mean?
404 Not Found means the requested resource doesn't exist on the server. It could be a deleted page, a mistyped URL, or a broken link. Fix it by creating the content, setting up a redirect, or updating broken links.
What does a 500 Internal Server Error mean?
500 Internal Server Error is a generic server-side error indicating an unexpected condition. It usually means a bug in the application code, a database failure, or a misconfigured server. Use API Status Check to monitor for 5xx errors and get alerted instantly.
What is a redirect chain and why does it matter?
A redirect chain is a sequence of redirects (A → B → C → final URL). Each redirect adds latency (50-200ms per hop) and can hurt SEO. Our checker traces the full chain so you can identify and eliminate unnecessary redirects. Aim for single-hop redirects.
How do I monitor HTTP status codes automatically?
API Status Check monitors endpoints 24/7, checking HTTP status codes at regular intervals. When an endpoint returns a non-2xx status code, you get instant alerts via email, Slack, Discord, or webhook. Set up monitoring for your critical APIs and dependencies.