503 Service Unavailable
Server temporarily unavailable.
The server is currently unable to handle the request due to temporary overloading or maintenance.
What HTTP 503 Service Unavailable Means
The server is currently unable to handle the request due to temporary overloading or maintenance.
Server temporarily unavailable.
Common Causes
- Server maintenance
- Server overloaded
- Too many connections
- Resource exhaustion
- Application restart
How to Fix It (For Visitors)
- Wait a few minutes and try again
- Check Retry-After header
- Visit status page
How to Fix It (For Developers/Admins)
- Check server resources (CPU, RAM, disk)
- Scale infrastructure
- Implement load balancing
- Set Retry-After header
- Check database connections
- Review application pool settings
Common Sources of 503
- Planned maintenance - return 503 with a
Retry-Afterheader; search engines treat it as temporary, unlike a 200 maintenance page. - Overload - all workers or connections are busy.
- IIS - HTTP.sys returns 503 when the site's application pool is stopped or keeps crashing (Rapid-Fail Protection). Check the Windows event log.
- Kubernetes / Envoy - "no healthy upstream" means no ready pods behind the service; check readiness probes and deployments.
- nginx rate limiting -
limit_reqrejects excess requests with 503 unlesslimit_req_statusis changed.
Returning a 503 Service Unavailable (Code Examples)
If you build APIs or web apps, here is how to send an HTTP 503 response and how to test for it:
Node.js (Express)
app.get('/resource', (req, res) => {
res.status(503).json({ error: 'Service Unavailable' });
});
Python (Flask)
@app.route('/resource')
def resource():
return jsonify(error='Service Unavailable'), 503
PHP
<?php
http_response_code(503);
header('Content-Type: application/json');
echo json_encode(['error' => 'Service Unavailable']);
Check the status with curl
curl -I https://example.com/resource
# Look for: HTTP/1.1 503 Service Unavailable
Frequently Asked Questions
What does HTTP 503 Service Unavailable mean?
Server temporarily unavailable. In short: The server is currently unable to handle the request due to temporary overloading or maintenance.
Is a 503 Service Unavailable error my fault or the website's?
503 is a 5xx server-error code, so the problem is on the server side, not your browser or device. As a visitor you can usually only retry; if you run the site, investigate the server.
How do I fix a 503 Service Unavailable error?
Check server resources (CPU, RAM, disk). Scale infrastructure. Implement load balancing.
Official Specification
The 503 Service Unavailable status code is defined in RFC 9110 Section 15.6.4.