HTTP status · 5xx — server error
503 Service Unavailable
503 Service Unavailable means the server is temporarily unable to handle the request, often due to overload or maintenance.
Key facts
| Class | 5xx — server error |
|---|---|
| Standard | RFC 9110 §15.6.4 |
| Cacheable by default | No |
| Key header | Retry-After |
| Typical causes | Overload, maintenance, dependency outage |
What 503 means
The server is currently unable to handle the request, usually because it is overloaded or down for maintenance. The condition is expected to be temporary. A Retry-After header tells clients when to try again; without it, clients fall back to their own backoff.
503 in practice
Use 503 deliberately during maintenance and for load shedding, and make sure the response is fast — a slow 503 is worse than a fast one. Do not use 503 for a permanent failure; that is 404 or 410 depending on the resource. If only one dependency is down, say so in the body so operators can route around it. Health checks that return 200 while the app is unusable are a common cause of “the monitor is green but users see errors”.
Frequently asked questions
Does 503 mean the site is down for good?
No. It signals a temporary inability to serve the request. Retry-After, when present, indicates the expected recovery window.
What is the difference between 500 and 503?
500 is an unexpected failure with no expectation of quick recovery. 503 says the server knows it cannot serve right now and expects the condition to be temporary.