500 Internal Server Error
Your server hit an error it didn't handle. The cause is in the server's error log: usually a code bug, a bad config change, a failed plugin or a lost database.
502 Bad Gateway
The server in front of your app got a bad answer, or none, from your app. Usually the app has crashed, isn't running, or is listening on the wrong port.
503 Service Unavailable
The server is up but can't take requests right now: overloaded, stuck in maintenance mode, or out of resources. Here's how to tell which.
504 Gateway Timeout
Your app took too long to answer and the server in front of it gave up. Usually a slow database query, a slow outside API, or an overloaded server.
404 Not Found
The page doesn't exist at that address. Usually a deleted or moved page, a typo in a link, or a site migration that broke URLs. Fix the link or add a redirect.
403 Forbidden
The server understood the request but won't allow it. Usually file permissions, a missing index page, or a firewall or security rule blocking the visitor.
400 Bad Request
The server rejected the request as malformed. For visitors it's often bad cookies; for apps, the data sent isn't what the server expects.
401 Unauthorized
The request had no valid login or key. For people, log in again. For apps and APIs, the token or API key is missing, expired, or wrong.
408 Request Timeout
The server closed a connection because the browser didn't finish sending its request in time. Usually a slow or unstable connection, or a large upload.
429 Too Many Requests
A rate limit was hit: too many requests too fast. On your site, check rate-limit and bot rules. In your app, slow down calls to that API.
More fix guides
Search everything →Not sure what's wrong with yours?
One click checks your site, and your Cloudflare if you connect it, and gives you a report of what's wrong and what to do. Your first report is free.
Run your free report