DevTool Desk

5xx Server error

HTTP 503 Service Unavailable

The server can't handle the request right now, typically because it's overloaded or down for maintenance.

A 503 Service Unavailable means the server is temporarily unable to handle the request, typically because it's overloaded or down for maintenance. Unlike 500, it signals the condition is expected to pass.

Common causes of a 503 error

  • Traffic is higher than the server or its workers can handle.
  • The site is in scheduled maintenance, or a deploy is in progress.
  • The app is still starting up or restarting.
  • A dependency such as the database is down or its connection pool is exhausted.
  • A hosting plan's resource limits have been reached.

How to fix a 503 error

  1. Wait a minute and retry, and honour the Retry-After header if there is one.
  2. Check server load, memory and connection limits, and scale up or add capacity.
  3. Make sure the app process is running and healthy after the last deploy or restart.
  4. Add caching or a CDN so fewer requests reach the app.
  5. For planned downtime, return 503 with a Retry-After header rather than 200 or 404 so search engines know it's temporary.

Frequently asked questions

Is 503 bad for SEO?

Short 503s are fine, and it's the right status for maintenance because search engines will retry later. Long-running or repeated 503s can cause pages to be dropped from the index.

What's the difference between 500 and 503?

500 is an unexpected failure. 503 says the server can't handle the request right now and, usually, will be able to soon.

Other common status codes

See 503 in the full searchable list, or use the HTTP Header Checker to see the status code any URL returns.