Skip to content

HTTP Error Codes Explained: 400, 403, 404, 500 and More

Person using laptop with payment failure message on screen and plant beside it.
Photo: RDNE Stock project / Pexels

An HTTP error code is a three-digit number a website’s server sends when it cannot complete your request. Codes starting with 4 (400, 401, 403, 404, 429) mean the request or your access is the issue. Codes starting with 5 (500, 502, 503, 504) mean the server or a system behind it failed. Only 5xx codes can point to an outage.

What do the common HTTP error codes mean?

The codes are defined in the HTTP standard, RFC 9110 (HTTP Semantics), and 429 in RFC 6585. Mozilla’s HTTP status reference describes each in plain language. This table adds what to do.

Code Name Meaning Whose side What to try
400 Bad Request The server cannot or will not process the request because it looks like a client error Usually yours Check the address, clear that site’s cookies, reload
401 Unauthorized Semantically “unauthenticated”: the server needs valid sign-in details Yours Sign in again with your correct account
403 Forbidden You do not have access rights; the server refuses to give the resource Access rules Check your account, turn off a VPN, contact the site
404 Not Found The server cannot find the requested page Address or site Check the link, search the site’s home page
429 Too Many Requests You sent too many requests in a given time (rate limiting) Yours Stop retrying, wait several minutes
500 Internal Server Error The server hit a situation it does not know how to handle Server Reload once, check the status page, wait
502 Bad Gateway A server acting as a gateway got an invalid response Server Wait and reload; check the status page
503 Service Unavailable The server is not ready to handle the request Server Wait; this is a common outage or maintenance sign
504 Gateway Timeout A gateway server could not get a response in time Server Wait and reload; check the status page

Which errors mean the website is down?

500, 502, 503 and 504 mean the site’s servers failed or could not be reached by another server. If you see one, check the service’s official status page and our is it down or just me checks. A 5xx error on many unrelated sites at once points to a shared provider; see Cloudflare error codes for one common case.

A 4xx error does not by itself mean an outage. A 404 on one page does not mean the rest of the site is broken. A 403 or 429 means the server answered and chose to refuse you.

What can I try for a 4xx error?

  1. Check the address. A typo or a link cut off by an email program gives 400 or 404 errors.
  2. Sign in again. A 401 means the server wants valid credentials. Use the site’s own sign-in page, never a link from an unexpected message.
  3. Clear stored data for that site only. Stale cookies can trigger 400 errors. Remove the data for that one site in your browser’s privacy settings rather than wiping everything.
  4. Turn off a VPN for the test. Some sites block VPN addresses and answer with 403.
  5. Slow down. After a 429, keep retrying and the block can last longer. Wait a few minutes.

If none of this helps, contact the site. Your account may have been restricted, or the page may have moved.

What can I try for a 5xx error?

  1. Reload once. Brief hiccups sometimes clear on a second request.
  2. Open the status page. Use the company’s own page and our live page for the service, for example live GitHub status.
  3. Test another network. This rules out a local cause, such as a filter or DNS problem.
  4. Wait before trying again. Repeated reloads add load to a struggling service and do not speed recovery.

With a payment or form, do not resubmit while the page shows a 5xx error. The first request may have gone through. Check your account or email receipt first.

Why does the same error look different on different sites?

The number is standard, but the wording and design of the page are chosen by the site, its host or a network in front of it. A 503 might say “Service Unavailable” or show a branded page with the site’s own wording. Some sites show friendly text with no number. Look in the page title or small print for the code.

How do the 4xx and 5xx groups differ?

The standard groups codes by their first digit. 2xx codes mean success, 3xx codes mean the request was redirected, 4xx codes mean the request or the access rights are the issue, and 5xx codes mean the server failed to complete a valid request. You rarely see 2xx and 3xx codes, because the browser handles them silently. That grouping lets you decide in seconds whether to check your own side or the service.

One practical point: a site behind a network such as Cloudflare may show the network’s own error page instead of the site’s. Those pages use extra codes in the 520 range, which are covered separately.

Bottom line

Read the first digit. A 4xx error points to your request, access or address. A 5xx error points to the server, and that is when the status page and a second network are worth checking. Wait out 5xx errors and avoid repeated reloads or payments.

FAQ

Is a 404 error an outage?

No. A 404 means the server could not find that page. The server itself is running and answering.

What is the difference between 502 and 504?

A 502 means a gateway server received an invalid response from the server behind it. A 504 means the gateway did not get any response in time.

Can I fix a 500 error myself?

Usually not, because the fault is on the server. You can reload once, check the status page and try later.

What does 429 Too Many Requests mean for a normal user?

The site has limited how often you can make requests in a given time. Stop retrying, wait a few minutes and try again.