How to Fix “Briefly Unavailable for Scheduled Maintenance” in WordPress
You hit “update” on a plugin, walked away for coffee, and came back to a site that just says “Briefly unavailable for scheduled maintenance. Check back in a minute.”

You refresh. Still there. You try /wp-admin. Same message.
Your site is locked out – visitors can’t read it, and you can’t fix it from the dashboard.
This one is driving everyone crazy, and it shows up in the WordPress support forums almost every day. Here’s the good news. It’s usually a 10-second fix, and you don’t need a developer.
I’ve walked through this exact problem 3 times on my own sites. Let me show you what to do.
What does “Briefly Unavailable for Scheduled Maintenance” actually mean?
When WordPress updates a plugin, theme, or the core software, it drops a tiny file called .maintenance in your site’s main folder. That file is a flag. It tells WordPress “don’t let anyone in right now, I’m in the middle of changing files.”
The message visitors see is pulled straight from WordPress core. It’s meant to last 10-60 seconds while the update finishes. Then WordPress is supposed to delete the .maintenance file automatically and let traffic back in.
The problem is when the update crashes, times out, or gets interrupted. WordPress never reaches the “delete the file” step. The flag stays up forever. Your site keeps showing the message even though the update finished (or failed) hours ago.
That’s why you’re stuck. The fix is just to delete that one file manually.
How do I fix WordPress stuck in maintenance mode?
You have 3 ways to reach that file and delete it. Pick whichever matches what you already have access to.
If your host gave you a control panel login, use Option 1 – it’s the fastest. If you set up an FTP client ages ago, use Option 2. If you have no technical access at all, skip to Option 3. Stuck updates often leave other settings in a weird half-saved state too – I’ve seen this overlap with Customizer not saving changes on Kadence sites.
Option 1: Using your host’s File Manager (non-technical)
Most WordPress hosts (Bluehost, SiteGround, Hostinger, HostGator, and many others) give you a browser-based File Manager inside a control panel like cPanel, Plesk, or their own dashboard. No software to install.
Log in to your hosting account and look for File Manager on the dashboard. If you can’t find it, search your host’s help docs for “file manager” – they’ll show you the exact path.
Once File Manager opens, navigate to your site’s root folder. This is usually called public_html. If you host multiple sites on the same account, your WordPress site might be in public_html/yoursite.com/ instead. The right folder is the one containing wp-config.php, wp-admin, and wp-content.

Here’s the part that trips people up. Files starting with a dot (like .maintenance) are hidden by default.
In File Manager, open the Settings or View menu and check the box for Show Hidden Files (dotfiles). Save. The .maintenance file should now appear alongside your other site files.
Right-click the .maintenance file and choose Delete. Confirm. That’s it.

Go back to your site and refresh. It should load normally. If it doesn’t, try opening it in an incognito/private window to rule out browser caching.
Option 2: Using an FTP client
If you already use an FTP client to manage your site, the steps are similar. Any SFTP/FTP tool works – pick whatever you’re comfortable with.
Connect to your site using the FTP credentials your host provided. These are usually in the welcome email you got when you signed up, or available in your hosting dashboard under “FTP Accounts.”
Once connected, open the folder that contains wp-config.php. Again, this is your WordPress root – probably public_html or something named after your domain.
Turn on hidden files in your FTP client’s view settings. Most clients call this option “Show hidden files” or “Force showing hidden files” and bury it under a View, Server, or Preferences menu. Without this, you’ll scroll through the folder and swear the .maintenance file isn’t there. It is. You just can’t see it yet.

Once hidden files are showing, find .maintenance in the file list. Right-click it and choose Delete. Confirm when prompted.

Refresh your site. It should be back online.
Option 3: Ask your host (last resort)
If you genuinely don’t have any file access – no cPanel, no FTP, nothing – contact your hosting support. Tell them exactly this: “My WordPress site is stuck showing ‘Briefly unavailable for scheduled maintenance.’ Can you delete the .maintenance file in my site’s root folder?”
Any half-decent WordPress host will recognize the problem immediately and fix it in under 5 minutes. It’s one of the most common tickets they get.
Managed WordPress hosts like Kinsta, WP Engine, and Flywheel often have this in their help docs with a one-click button. Check their knowledge base before opening a ticket – you might fix it yourself in 30 seconds.
Why did this happen in the first place?
The .maintenance file gets stuck for 4 main reasons. None of them are your fault, but knowing the cause helps you dodge a repeat.
Your browser closed or crashed mid-update. If you closed the tab, your laptop went to sleep, or your internet dropped while WordPress was updating a plugin, the update process never finished. The file stays.
The update hit a PHP timeout. Most shared hosts limit PHP scripts to 30 or 60 seconds. If a plugin update takes longer than that (especially for big plugins like WooCommerce or Elementor), the server kills the process before WordPress can clean up. Suddenly you’re locked out over a 2-second timeout.
A plugin or theme had a fatal error during install. If the new version contains a bug or conflicts with another plugin, the update crashes. WordPress can’t recover gracefully, so the flag stays up.
Your server ran out of memory. Budget hosts sometimes cap PHP memory at 64MB or 128MB. Large updates need more. When memory runs out, everything stops where it is – including the cleanup step.
The common thread: something interrupted WordPress while it was still mid-update. The fix is always the same (delete the file), but the causes are worth knowing. Stuck updates can also cause weirder side effects – some people notice posts missing after the site comes back, which I cover in why blog posts disappear.
How do I prevent my WordPress site from getting stuck in maintenance mode?
6 small habits take care of most of these triggers. I follow all of them now, and I haven’t hit this error in years.
Update one plugin at a time. When WordPress shows you 12 plugin updates, it’s tempting to click “Update All.” Don’t. Update them one by one. If plugin #7 crashes, you’ll know exactly which one caused the problem instead of guessing across all 12.
Don’t close the tab during updates. It sounds obvious, but this catches people constantly. Even if the update bar looks frozen, give it 60-90 seconds before you do anything. Walk away, come back, refresh once.
Back up before you update. I wrote a full guide on backing up your WordPress site – it takes 5 minutes with a free plugin and saves hours of panic. Always back up before major plugin or core updates.
Update during low-traffic hours. If you’re going to update anything big, do it when your site is quiet. Less traffic means more server resources available to WordPress, and less chance of a timeout.
Ask your host to raise PHP memory and timeout limits. Most hosts bump these on request for free. Ask for 256MB memory and a 300-second max execution time. That kills the most common cause of stuck updates.
Keep up with updates generally. Letting 30 updates pile up is asking for trouble. The bigger the update queue, the higher the chance something in there conflicts. I wrote more about updating plugins without breaking your site – follow that routine and you’ll avoid most of these rescue scenarios. And if an update ever nukes your layouts, my guide on fixing global template changes walks through the recovery path.
After you fix the .maintenance issue, also clear your browser cache. Some browsers stubbornly remember the maintenance message and keep showing it to you even after the site is fine. Hard refresh with Ctrl+F5 (or Cmd+Shift+R on Mac), or open an incognito window to confirm.
If the update that caused the problem also left your site slower than before, that’s a separate issue. I cover troubleshooting steps in why is my WordPress site so slow. And if pages start throwing 404s after you fix the maintenance mode, a quick permalink refresh usually clears that up too.
Frequently Asked Questions
How do I fix WordPress stuck in maintenance mode?
The fastest way I fix this is by deleting the .maintenance file from the site’s root folder. I just log in using my host’s File Manager or an FTP client and delete it. Once it’s gone, my site comes back online in seconds.
Why is my WordPress site stuck in maintenance mode?
This happens to me when an update gets interrupted halfway through. It usually triggers if I close my browser tab too early or try to update 10 plugins at the exact same time.
How long does WordPress maintenance mode last?
By default, WordPress only keeps this mode active for about 10 minutes. But if that .maintenance file gets stuck on your server during a failed update, your site won’t come back until you manually delete it.
Can I still access my WordPress dashboard if it’s stuck?
No, you won’t be able to log in normally. Both your live site and your /wp-admin/ login screen will show the same error message. You’ll have to use your hosting control panel to bypass the dashboard and fix the files directly.
What happens if I delete the .maintenance file?
Deleting it just tells WordPress to stop showing the error screen and go back to normal. It doesn’t break anything, but I always double-check my plugins afterward to see if the update actually finished.
That’s it
The “briefly unavailable for scheduled maintenance” error looks terrifying because your whole site is offline. But it’s one of the gentler WordPress problems – no data loss, no complicated fix, no developer required.
Delete the .maintenance file, clear your browser cache, and your site is back. Then figure out which plugin caused the timeout so you can update it more carefully next time (or report the bug to the plugin author).
And please, please back up your site before the next big update. Future you will say thank you.