HTTP Status Codes
Every HTTP request returns a status code that tells you what happened — whether a page loaded, redirected, went missing, or errored on the server. Below is a complete, plain-English list of the status codes you’ll actually run into, grouped by category, with what each one means and how to fix it.
1xx
InformationalContinue
An interim response telling the client the initial part of a request was received and it should continue sending the body.
Switching Protocols
The server agrees to switch the connection to a different protocol, such as upgrading from HTTP to WebSocket.
Processing
A WebDAV interim response telling the client the server has accepted the request and is still working on it.
Early Hints
An interim response that lets the browser start fetching critical assets before the final page arrives.
2xx
SuccessOK
The request succeeded and the server returned the expected content.
Created
The request succeeded and a new resource was created as a result.
Accepted
The request was accepted for processing, but the processing has not finished.
No Content
The request succeeded but there is no content to return in the body.
3xx
RedirectionMoved Permanently
The resource has permanently moved to a new URL.
Found
The resource is temporarily at a different URL.
See Other
The response to the request can be found at another URL using a GET request.
Not Modified
The cached version of the resource is still valid, so no body is sent.
Use Proxy
A deprecated code telling the client it must reach the resource through a specified proxy.
Switch Proxy
A reserved, unused status code that no longer carries any meaning.
Temporary Redirect
A temporary redirect that preserves the original request method.
Permanent Redirect
A permanent redirect that preserves the original request method.
4xx
Client ErrorBad Request
The server could not understand the request due to malformed syntax.
Unauthorized
Authentication is required and has failed or not been provided.
Payment Required
A largely reserved code intended for payment-gated access to a resource.
Forbidden
The server understood the request but refuses to authorize it.
Not Found
The server could not find the requested resource.
Method Not Allowed
The HTTP method used is not supported for the requested resource.
Not Acceptable
The server cannot produce a response matching the formats the client said it would accept.
Proxy Authentication Required
The client must authenticate with a proxy before the request can proceed.
Request Timeout
The server timed out waiting for the request to complete.
Conflict
The request clashes with the current state of the resource and cannot be completed.
Gone
The resource is permanently gone and will not return.
Length Required
The server refuses the request because it lacks a Content-Length header.
Precondition Failed
A condition the client set on the request was not met, so the server did not proceed.
Payload Too Large
The request body is larger than the server is willing or able to process.
URI Too Long
The requested URL is longer than the server is willing to interpret.
Unsupported Media Type
The server refuses the request because the body is in a format it does not support.
Range Not Satisfiable
The byte range the client asked for lies outside the size of the resource.
Expectation Failed
The server cannot meet the requirement set in the request's Expect header.
I'm a teapot
A famous April Fools' status code from the Hyper Text Coffee Pot Control Protocol.
Misdirected Request
The request reached a server that is not configured to produce a response for it.
Unprocessable Content
The request was well-formed but contains semantic errors that prevent processing.
Locked
The resource the request targets is locked against the attempted operation.
Too Early
The server declines to process a request that was replayed too early, to avoid replay attacks.
Upgrade Required
The server refuses the request on the current protocol and asks the client to upgrade.
Precondition Required
The server requires the request to be conditional to prevent lost updates.
Too Many Requests
The client has sent too many requests in a given amount of time.
Request Header Fields Too Large
The server refuses the request because its headers are too large.
Unavailable For Legal Reasons
The resource is unavailable due to legal demands.
5xx
Server ErrorInternal Server Error
A generic error meaning the server encountered an unexpected condition.
Not Implemented
The server does not support the functionality required to fulfil the request.
Bad Gateway
A server acting as a gateway received an invalid response from the upstream server.
Service Unavailable
The server is temporarily unable to handle the request, often due to overload or maintenance.
Gateway Timeout
A gateway server did not receive a timely response from the upstream server.
HTTP Version Not Supported
The server does not support the HTTP protocol version used in the request.
Variant Also Negotiates
A server misconfiguration in content negotiation causes an internal negotiation loop.
Insufficient Storage
The server cannot complete the request because it is out of storage space.
Loop Detected
The server stopped because it detected an infinite loop while processing the request.
Not Extended
The server requires a protocol extension that the request did not provide.
Network Authentication Required
The client must authenticate to the network — typically a captive portal — to gain access.
Web Server Returned an Unknown Error
A Cloudflare catch-all for an empty, unexpected, or invalid response from the origin server.
Web Server Is Down
A Cloudflare error meaning the origin server refused the connection.
Connection Timed Out
A Cloudflare error meaning the connection to the origin server timed out before it was established.
Origin Is Unreachable
A Cloudflare error meaning it could not reach the origin server at all.
A Timeout Occurred
A Cloudflare error meaning the origin accepted the connection but did not respond in time.
SSL Handshake Failed
A Cloudflare error meaning the TLS handshake with the origin server failed.
Invalid SSL Certificate
A Cloudflare error meaning the origin's SSL certificate could not be validated.
Cloudflare 1xxx Error
A Cloudflare status shown alongside a specific 1xxx error explaining the underlying problem.
See the real status codes your URLs return
Paste a list of URLs and Sitewell checks every one at once — spotting 404s, redirect chains, and 5xx errors in seconds. Free, no signup.
Chasing a different problem? Browse SSL & certificate errors or read the practical website-health guides.