WordPress Stuck in Maintenance Mode
Your site shows "Briefly unavailable for scheduled maintenance. Check back in a minute." — and the minute never ends. One leftover file is holding the whole site hostage, and deleting it is the fix.
Common signs of this issue
- Every page — front site and admin alike — shows "Briefly unavailable for scheduled maintenance. Check back in a minute."
- It started during a plugin, theme, or WordPress core update — including overnight auto-updates nobody watched.
- Refreshing and waiting well past 'a minute' changes nothing.
- The update was interrupted: the browser tab closed, the connection dropped, or many updates ran at once.
- Unlike most WordPress failures, nothing is actually broken — the site is just wearing a sign it forgot to take down.
Safe checks you can do yourself
None of these require sharing passwords with anyone.
- Wait a genuine two or three minutes and refresh — a normal update in progress clears this by itself when it finishes. Only a message that persists past that is actually stuck.
- Confirm the trigger: an update was running (or auto-updating overnight — check your email for update notices). Maintenance mode appearing without any update in play would be unusual and worth a closer look.
- Get file access via your host's File Manager (in cPanel or the hosting dashboard) or FTP, and open the site's main folder — the one containing
wp-config.phpand the wp-content folder. - Enable "show hidden files" (File Manager settings usually have the checkbox; files starting with a dot are hidden by default) and look for a file named exactly .maintenance.
- Delete that one file — only that one. It's a temporary flag WordPress plants at the start of every update and normally removes at the end; the stuck message is exactly this flag left behind. The site returns the moment it's gone.
- Then finish the job: log into the admin, go to Dashboard → Updates, and re-run whatever was mid-flight when it stalled — one item at a time. The interrupted update didn't complete, and leaving it half-done is how the next problem starts.
What this usually means
WordPress drops a tiny .maintenance file at the start of every update — it's what shows visitors the "briefly unavailable" message while files are being replaced — and deletes it when the update completes. If the update process dies partway (a timeout, a memory limit, a dropped connection, too many updates running at once), nobody deletes the flag, and the site stays 'in maintenance' indefinitely while being otherwise perfectly healthy.
This makes it one of the most benign-looking-scary problems in WordPress: total outage in appearance, one-file cleanup in reality. The real question is the second one — why did the update stall? Once is bad luck (fine, move on); repeatedly stalling updates point at a resource limit (memory, execution time) or a flaky host, which deserves fixing before it interrupts something less forgiving than a flag file.
The prevention is the same boring hygiene the other update guides preach: update one thing at a time rather than twenty at once, keep backups automatic, and let updates finish before closing the tab. Auto-updates overnight are usually fine — but they're also why this appears on sites 'nobody touched.'
What not to do
- Don't keep refreshing for twenty minutes hoping it clears — past the first few minutes, the update is dead and the flag needs removing by hand.
- Don't delete anything else while you're in the file manager — the fix is exactly one file named .maintenance; everything around it is your actual site.
- Don't restore a backup or reinstall WordPress over this — massively disproportionate; the site behind the message is intact.
- Don't skip re-running the interrupted update after clearing the flag — a half-applied update left in place is a future breakage scheduled at random.
- Don't update a dozen plugins simultaneously next time — mass updates are the classic way the process times out mid-flight; one at a time is the habit that prevents the rerun.
When to get help
If you can't get file access (no cPanel login, no FTP credentials), or the site STILL won't load after the .maintenance file is gone, hand it over — the second case means the interrupted update actually broke something (usually memory limits or the plugin being updated), which shifts you to the critical-error/white-screen playbook and its log-reading. Both are quick, routine work for a helper. And if updates stall repeatedly on your hosting, that pattern is worth raising with the host — or taking as a data point about the host.
Not sure what to do next?
Answer a few short questions and we'll point you to the safest next step — DIY, a freelancer, or a direct review. No passwords required.
Is this a business website? If this issue may be costing you leads, sales, or trust, you may want a direct review instead of trial and error.
Frequently asked questions
Where is the .maintenance file?
In the WordPress root folder — the same directory as wp-config.php and wp-content — via your host's File Manager or FTP. It starts with a dot, so it's hidden until you enable 'show hidden files' in the file manager's settings.
Is deleting the .maintenance file safe?
Yes — it's a temporary flag, not content or configuration. WordPress creates it during updates and deletes it after; removing a leftover one is the documented, standard fix. Just delete only that file.
Why did my update stall in the first place?
Usually a timeout or memory limit mid-update, a dropped connection, or many updates running simultaneously. Once is chance. Repeatedly means a resource limit or hosting problem worth fixing — see the memory-limit guide, and update one item at a time meanwhile.
The site still shows maintenance mode after I deleted the file. How?
Two usual reasons: a cache is serving the old page (hard-refresh, purge any caching plugin/Cloudflare), or you deleted it from the wrong folder on a multi-site server. If it's truly gone and the site now shows a different error instead, the interrupted update broke something — that's the critical-error guide's territory.
Nobody was updating anything — why did this happen overnight?
Auto-updates. WordPress updates itself and (depending on settings) plugins on its own schedule, and an overnight auto-update that stalls leaves the same flag. Check your email for the update notification; it names what was mid-flight and needs re-running.
Can I prevent this permanently?
Mostly: update one thing at a time, keep hosting resources sane (the memory guide), and don't close the tab mid-update. A staging site adds the final layer — updates rehearse there first, and a stall on staging costs nothing. See the staging guide.