Guide
How to Fix a 503 Service Unavailable Error on Your Site
A 503 means the server is up but has said it cannot serve the page right now. It is either overloaded or in maintenance mode, and on a small site it is often your own site that sent it. Find out who sent the 503, clear that cause, and keep any planned downtime to hours, not days.
Three Things to Know
- WordPress sends a 503 during every core, plugin or theme update, and ends it on its own after 10 minutes.
- Of six popular maintenance plugins we read, only one sends a 503 out of the box. Two send a normal 200 page in their free versions no matter what.
- Google slows its crawl on a 503. A 503 on robots.txt stops Google crawling the whole site.
People treat a 503 like bad weather. The host is down, so you wait it out. That is often wrong. The standard says a 503 means the server is up but cannot handle the request right now, because of a temporary overload or scheduled maintenance.1 Plenty of 503s are sent on purpose, by the site itself. WordPress sends one every time it runs an update.2
So the first job is not to wait. It is to find out who sent it.
What a 503 Is Telling You
A 503 Service Unavailable is a polite refusal. The server answered. It just said not now.
That makes it different from its two cousins. Our 502 Bad Gateway guide covers the first one in full.
| Code | What it says | Where it usually comes from on a small site |
|---|---|---|
| 502 Bad Gateway | A server in the middle got a broken answer from the server behind it | A crashed app behind a proxy or CDN |
| 503 Service Unavailable | The server is up but is refusing work for now | Maintenance mode, an overloaded plan, a stopped app |
| 504 Gateway Timeout | A server in the middle waited too long for an answer | A slow database or a stuck script |
A well built 503 also carries a header called Retry-After. It tells the visitor, or a crawler, how long the outage should last. It can be a number of seconds or a date.4 When you see a 503 with Retry-After, someone planned it. When you see one without it, something probably broke.
Find Out Who Sent the 503
Look at the error page itself before you touch anything. The page gives away its author.
- "Briefly unavailable for scheduled maintenance. Check back in a minute." That exact line is WordPress core. It shows while an update runs, and it sends a 503 with Retry-After set to 600 seconds.2 WordPress ends that mode on its own once the update flag is 10 minutes old.3 If it is still there after 10 minutes, an update got stuck.
- A page that mentions Cloudflare. Cloudflare says that if the error page contains the word cloudflare, the 503 came from Cloudflare. If it does not, your own server sent it, and Cloudflare only passed it along.5
- "HTTP Error 503. The service is unavailable." That plain text is the classic Windows server message. On Windows hosting, IIS stops an app pool after 5 crashes in 5 minutes by default and then answers every request with a 503.6
- Your host's branded page, often about resource limits. Your plan ran out of room, usually memory or processes. That is a host conversation.
- A designed page with your logo, a countdown or a signup box. That is a maintenance or coming soon plugin. Someone turned it on.
Want proof instead of a guess? Open your browser's developer tools, go to the Network tab and reload. Click the first request. The status line and any Retry-After header are right there.
Fixes, in the Order I'd Try Them
Start with the cheap checks. Most 503s on small sites clear at step one or two.
- Check from a second network. Load the site on your phone with Wi-Fi off. If it works there, the problem is on your side and not the site.
- Look for maintenance mode. Log in to your site builder or WordPress admin. Turn off any maintenance or coming soon mode you forgot about.
- Clear a stuck WordPress update. If the Briefly unavailable message stays past 10 minutes, connect with your host's file manager. Delete the file named .maintenance in the main site folder, then rerun the update from the dashboard.3
- Turn off the newest plugin. If the 503 started right after you added or updated a plugin, rename that plugin's folder in the file manager. That switches it off without the dashboard.
- Check your hosting limits. Most control panels show memory and process use. A plan that sits at its limit will throw 503s every busy afternoon.
- Restart what you can. On a VPS or Windows host, restart the web server, the app pool or PHP. On shared hosting, ask the host to do it.
- Call the host with facts. Send the page address, the exact time with your time zone, what the error page said, and anything you changed that day.
If you use Cloudflare and the error page names Cloudflare, check the Security Events screen for anything blocking traffic before you blame the host.5
What Six Maintenance Plugins Actually Send
This is where small sites hurt themselves. A maintenance plugin can show a nice page while telling Google something else entirely.
On October 21, 2026 we downloaded the current version of six popular WordPress maintenance and coming soon plugins from wordpress.org. We read the code that sets the status code. Install counts are the ones wordpress.org lists.789101112
| Plugin and version | Active installs | Status code out of the box | Retry-After |
|---|---|---|---|
| Maintenance 4.32 | 1,000,000+ | 200. A 503 setting exists but starts switched off | 1 hour when on |
| SeedProd 6.20.10 | 600,000+ | 200 in coming soon mode, 503 in maintenance mode | 1 day |
| Under Construction 5.83 | 600,000+ | 200 every time | 1 day, sent with the 200 |
| LightStart 2.6.24 | 400,000+ | 503 | 1 hour unless you set a countdown |
| CMP 4.1.22 | 200,000+ | 200. Coming soon is the default mode | 1 day in maintenance mode |
| Minimal Coming Soon 2.45 | 100,000+ | 200. The 503 option is in the paid version only | None in the free version |
Only one of the six sends a 503 the moment you switch it on. Three can send one if you pick the right mode or tick the right box. Two never send one in their free versions.
Why does that matter? A 200 tells every crawler the page is fine and this is its real content. If your plugin shows a "back soon" page with a 200 for a week, you are asking Google to index a placeholder. Pick maintenance mode, not coming soon mode, for a site that already ranks. Then check the status in your browser's Network tab once it is on.
How Long Google Will Wait
Google is patient with a 503, but not forever.
- Crawling slows down. Google says 5xx errors make its crawlers slow down for a while. Pages already in the index stay there at first, but are eventually dropped if the errors keep up.13
- Crawling speeds back up on its own. Once the server returns normal 200 pages again, Google raises the crawl rate gradually.13
- A 503 on robots.txt is the big one. Google stops crawling the whole site for the first 12 hours while it keeps trying robots.txt. After that it uses the last good copy for up to 30 days.14
- Days, not weeks. Google's own advice for taking a site offline is a 503 information page for 1 to 2 days, and it calls even that an extreme step.15
That robots.txt rule catches a lot of people. A server level maintenance switch, like one in a host control panel, often answers every address with a 503, robots.txt included. Google also says plainly not to return a 503 for robots.txt for that reason.15 A WordPress plugin usually leaves robots.txt alone, which is one point in its favor.
Planned Downtime Done Right
If you are the one taking the site down, do it so nobody pays for it later.
- Send a 503, not a 200. Use maintenance mode, then confirm the status in the Network tab.
- Add Retry-After. Set it to when you really expect to be back.4
- Keep robots.txt serving a 200. Test it at yoursite.com/robots.txt while maintenance is on.
- Keep it short. Hours if you can. Never longer than a couple of days.15
- Put your phone number on the maintenance page. A customer who cannot book online can still call.
- Turn it off and check. Load three pages from your phone on cell data before you call it done.
Get Help With a 503
T3CHS runs managed hosting for small businesses and watches for errors like this one. If yours will not clear, call or text (949) 65-T3CHS or send us the error.
Before You Call
How do I fix a 503 Service Unavailable error?
Find out who sent it first. Turn off any maintenance mode, delete a stuck .maintenance file if a WordPress update hung, switch off the newest plugin, and check your hosting limits. If none of that clears it, send your host the page, the time and what you changed.
Is a 503 error my fault or the website's?
Almost always the website's. Load the site on your phone with Wi-Fi off. If the 503 shows there too, the problem is on the server side, not your computer or network.
What is the difference between 502, 503 and 504 errors?
A 502 means a server in the middle got a broken answer. A 503 means the server is up but refusing work for now, often for maintenance or overload. A 504 means a server in the middle waited too long for an answer.
How long does a 503 error last?
As long as the cause does. A WordPress update ends its own maintenance mode after 10 minutes. A 503 from overload clears when traffic drops or the plan gets more room. A planned 503 should say when it ends in its Retry-After header.
Does a 503 error hurt SEO?
A short one does not do lasting harm. Google slows its crawl and comes back. Pages that keep returning errors are eventually dropped, and a 503 on robots.txt stops crawling of the whole site, so keep outages to hours or a day or two.
Should a maintenance page return a 503 or a 200?
A 503 for a site that is already live and ranking. A 200 tells Google the placeholder is your real page. Check your plugin, because most of the six we read send a 200 unless you change a setting.
Cited Pages
- RFC 9110: HTTP Semantics, 503 Service Unavailablerfc-editor.orgOpened October 2026
- WordPress Developer Resources: wp_maintenance()developer.wordpress.orgOpened October 2026
- WordPress Developer Resources: wp_is_maintenance_mode()developer.wordpress.orgOpened October 2026
- RFC 9110: HTTP Semantics, Retry-Afterrfc-editor.orgOpened October 2026
- Cloudflare Docs: Error 503 Service Temporarily Unavailabledevelopers.cloudflare.comOpened October 2026
- Microsoft Learn: Failure Settings for an Application Poollearn.microsoft.comOpened October 2026
- WordPress.org Plugins: Maintenancewordpress.orgOpened October 2026
- WordPress.org Plugins: Website Builder by SeedProdwordpress.orgOpened October 2026
- WordPress.org Plugins: Under Constructionwordpress.orgOpened October 2026
- WordPress.org Plugins: LightStart Maintenance Modewordpress.orgOpened October 2026
- WordPress.org Plugins: CMP Coming Soon and Maintenancewordpress.orgOpened October 2026
- WordPress.org Plugins: Minimal Coming Soonwordpress.orgOpened October 2026
- Google Search Central: How HTTP Status Codes Affect Google's Crawlersdevelopers.google.comOpened October 2026
- Google Search Central: How Google Interprets the robots.txt Specificationdevelopers.google.comOpened October 2026
- Google Search Central: Pausing or Disabling a Websitedevelopers.google.comOpened October 2026
Last reviewed November 1, 2026.
See more of our reporting when you search.
Want T3CHS first in Google? Set us as a preferred sourceWhere This Leads
Put it to work
- Small Business Web HostingFast, backed up hosting for small business sites.
- DNS LookupSee the A, MX, TXT, NS and other records for any domain.
More guides
- 502 Bad Gateway: What It Means and How to Fix ItA 502 Bad Gateway means one server in the chain asked another server for your page and got back a broken answer. It is almost never the visitor's fault. If it is your site, the fix is on your host, your CDN or your site's code, and the fastest path is usually a short message to your host with the time, the page and what you changed.
- How Much Does Website Maintenance Cost in 2026?A small business website can cost as little as about $144 a year in cash to keep online, plus your time. A builder plan like Squarespace runs about $348 a year. The biggest cost is often the hours, not the bills, so price the time before you pick a plan.
- Why Google Won't Index Your PagesGoogle leaves a page out of its index for a reason, and Search Console tells you which one. Discovered but not crawled usually means too little crawl demand. Crawled but not indexed usually means the page adds too little. The fix depends on which it is.
- All GuidesEvery guide in one place.
Look up a term
- Tech GlossaryPlain meanings for 49 tech words.