Skip to content
Skip to content

HTTP Status Codes Reference

Complete guide to HTTP response status codes — understand what each code means, when it occurs, and how to fix common errors.

1xx 1xx — Informational

2xx 2xx — Success

3xx 3xx — Redirection

4xx 4xx — Client Error

400
400 Bad Request
The server cannot process the request due to malformed syntax.
401
401 Unauthorized
Authentication is required and has failed or not been provided.
402
402 Payment Required
Payment is required to access this resource.
403
403 Forbidden
The server understood the request but refuses to authorize it.
404
404 Not Found
The server cannot find the requested resource.
405
405 Method Not Allowed
The HTTP method used is not allowed for this resource.
406
406 Not Acceptable
The server cannot produce a response matching the client's Accept headers.
407
407 Proxy Authentication Required
Authentication is required via a proxy server before this request can be served.
408
408 Request Timeout
The server timed out waiting for the request.
409
409 Conflict
The request conflicts with the current state of the server.
410
410 Gone
The resource is no longer available and no forwarding address is known.
411
411 Length Required
The server refuses the request because the Content-Length header is missing.
412
412 Precondition Failed
One or more conditions given in the request headers evaluated to false on the server.
413
413 Payload Too Large
The request entity is larger than the server is willing to process.
414
414 URI Too Long
The URI requested by the client is longer than the server is willing to interpret.
415
415 Unsupported Media Type
The server refuses to accept the request because the payload format is unsupported.
416
416 Range Not Satisfiable
The server cannot fulfill the requested byte range for the resource.
417
417 Expectation Failed
The server cannot meet the requirements of the Expect request-header field.
418
418 I'm a Teapot
The server refuses to brew coffee because it is, permanently, a teapot.
421
421 Misdirected Request
The request was directed at a server that cannot produce a response for that combination of scheme and authority.
422
422 Unprocessable Entity
The server understands the content type but cannot process the contained instructions.
423
423 Locked
The resource that is being accessed is locked (WebDAV).
424
424 Failed Dependency
The request failed because it depended on another request that failed (WebDAV).
426
426 Upgrade Required
The client should switch to a different protocol, as indicated by the Upgrade header field.
428
428 Precondition Required
The server requires the request to be conditional to prevent the 'lost update' problem.
429
429 Too Many Requests
The user has sent too many requests in a given amount of time.
431
431 Request Header Fields Too Large
The server refuses to process the request because its header fields are too large.
451
451 Unavailable For Legal Reasons
The resource is unavailable due to legal demands.

5xx 5xx — Server Error

Check your website's HTTP status and headers

Check now →

Frequently Asked Questions

What do HTTP status codes mean?

Status codes are three-digit numbers indicating the result of an HTTP request: 1xx (informational), 2xx (success), 3xx (redirection), 4xx (client error), 5xx (server error). Each code has a specific meaning.

What is the difference between 404 and 410?

404 (Not Found) means the resource is not found but may appear later. 410 (Gone) means the resource is permanently deleted. For SEO: 410 is removed from index faster. Use 410 for content that will not return.

Which code to use for redirects?

301 — permanent move (SEO weight is passed). 302 — temporary (weight not fully passed). 307 — strict temporary (preserves HTTP method). 308 — strict permanent (preserves method). For SEO, 301 is usually needed.

What does 503 Service Unavailable mean?

503 means the server temporarily cannot process the request (overload, maintenance). Unlike 500 (internal error), 503 implies the issue is temporary. Add a Retry-After header to indicate recovery time.

What is the 429 Too Many Requests code?

429 means the client exceeded the request limit (rate limiting). The server should send a Retry-After header with wait time. For APIs: implement exponential backoff — increase the pause with each 429.