Error message · Any site behind nginx, Apache, a load balancer or a CDN; common on shared hosting

“503 Service Temporarily Unavailable”

Your web server is up and answering, but it's telling visitors it can't serve the site right now. Unlike a 502, nothing is broken between the servers: the server itself has decided to refuse the work, because it's overloaded, in maintenance mode, or the app behind it has stopped. Visitors see a bare "503 Service Temporarily Unavailable" line, often with "nginx" under it.

Is your site showing it right now?

The free scan loads your page like a visitor and checks for this message, plus broken links, script errors and phone layout. It also walks your signup, booking or contact form, without sending anything.

​

Free, no signup. Usually done in about a minute.

Why it happens

  • The site hit its hosting plan's limits (CPU, memory, worker processes) and the host is throttling it
  • A traffic spike, a bot crawling hard or a brute-force login attempt is using every worker
  • The app or PHP-FPM behind the server is stopped or restarting, so the server has nothing to hand requests to
  • The host or your CDN put the site in maintenance mode, or a deploy is still rolling out
  • A plugin or script runs long tasks (imports, backups, cron jobs) during the day and starves real visitors

How to fix it

  1. Check whether it's the whole server or just your site

    Load your host's status page and your hosting panel. If other sites on the same server are down too, it's the host; open a ticket. If the panel shows your site at its resource limits, that's your cause.

  2. Restart the app or PHP

    In the hosting panel, restart the site, the app or PHP-FPM. On a server you run, restart the app's service and check it stays up. If it crashes again straight away, read its error log for the reason.

  3. Look at the traffic

    Your access log or analytics will show a spike or one IP hammering a URL (often /wp-login.php or /xmlrpc.php). Block the IP or path at your firewall or CDN, and add rate limiting for login pages.

  4. Turn off heavy plugins and jobs

    Disable plugins one at a time, starting with backups, security scanners and importers. Move scheduled jobs to a quiet hour. A page cache (or your CDN's caching) cuts the work for every ordinary visit.

  5. Still happening? Move up a plan or server

    If the site is simply busier than the plan allows, more workers or memory is the real fix. Ask your host what limit you're hitting; the error log or panel usually names it.

Questions

Is a 503 bad for search rankings?

Not when it's brief: search engines read 503 as "temporary, come back later" and keep your pages indexed. If it lasts days, they crawl less and may drop pages, so fix it quickly and never return 503 on purpose for long.

503 or 502, which is it?

A 502 means the front server asked the app and got no valid answer. A 503 means the server itself refused the request, usually because it's overloaded, in maintenance or has no running workers. Both point at the server behind your front server, but a 503 is more often capacity.

My host says it's a resource limit. What now?

Ask which one. Memory and CPU limits usually mean a heavy plugin or uncached pages; a worker or process limit means too many visits at once. Caching fixes most of both before you pay for a bigger plan.

Can Page Canary tell me if this comes back?

Yes. Page Canary checks your key pages every day for this message and others like it, confirms it on a second check, and emails you with the fix. One site is free.

Other error messages