HTTP Status Codes Explained: What 200, 301, 404, and 500 Really Mean
Every time a browser requests a page, the server responds with an HTTP status code — a 3-digit number that tells the browser what happened.
Understanding these codes is essential for diagnosing website problems, optimizing SEO, and debugging APIs.
The 5 Categories of HTTP Status Codes
| Range | Category | Meaning |
|---|---|---|
| 1xx | Informational | Request received, continuing |
| 2xx | Success | Request succeeded |
| 3xx | Redirect | Further action needed |
| 4xx | Client Error | The client did something wrong |
| 5xx | Server Error | The server failed |
The 8 Most Important Status Codes
200 OK
The page loads correctly. Everything is fine.
301 Moved Permanently
The page has moved to a new URL permanently.
SEO impact: 301 passes link equity. Use it when you change domain names or restructure URLs.
302 Found (Temporary Redirect)
The page is temporarily at a different URL.
SEO impact: Unlike 301, 302 does NOT pass link equity. Use it for short-term redirects.
403 Forbidden
The server refuses to fulfill the request.
Common causes: IP blocked, directory permissions, firewall rules.
404 Not Found
The requested page doesn't exist.
Common causes: URL typo, deleted page, broken internal link.
SEO advice: If you delete a page, redirect it with 301 instead of letting it return 404.
500 Internal Server Error
Something broke on the server side.
Common causes: PHP error, database connection failure, misconfigured .htaccess.
502 Bad Gateway
The server acts as a proxy and received an invalid response from upstream.
Common causes: Nginx can't reach PHP-FPM, backend service crashed, server overloaded.
503 Service Unavailable
The server is temporarily unable to handle the request.
Common causes: maintenance mode, traffic spike, resource exhaustion.
SEO advice: 503 is temporary — Google will come back later. Use Retry-After header if possible.
How to Check HTTP Status Codes
Use our free HTTP status checker to check any URL's status code and response time.
For batch checking many URLs, use our bulk HTTP checker.
You can also check from the browser:
- Open Developer Tools (F12)
- Go to the Network tab
- Look at the "Status" column
Status Codes and SEO
Search engines use status codes to determine page health:
- 200 — indexed normally
- 301 — old URL dropped, new URL takes its place
- 302 — old URL remains in the index
- 404/410 — removed from index over time
- 500/503 — considered temporary; retry later
Regularly audit your site for 404 errors using our dead link checker.
Summary
HTTP status codes are the fastest way to diagnose website issues. When something breaks, checking the status code is step one.
Save our HTTP status checker for quick diagnostics, and use the dead link checker to catch broken links before Google does.