Skip to content

WordPress fixes, security checks, and performance guides for site owners and builders.

Start with fixes
Fixes

How to Fix WordPress Stuck in Maintenance Mode

Remove the stuck WordPress maintenance message safely using WP-CLI or file access, then check caches and incomplete updates.

3 min read Last updated Jun 14, 2026

The “Briefly unavailable for scheduled maintenance” message normally disappears when an update finishes. If it remains for more than a few minutes, the update probably stopped before WordPress removed its maintenance state.

The quickest fix is to disable maintenance mode, clear any cached copy of the page, and then check whether the interrupted update completed.

Use WP-CLI if you have SSH access

From the WordPress installation directory, check the current state:

wp maintenance-mode status

If WP-CLI reports that maintenance mode is active, disable it:

wp maintenance-mode deactivate

Then clear the WordPress object cache:

wp cache flush

Reload the site in a private browser window. If the maintenance message is gone, continue to the update check below rather than assuming the interrupted update completed successfully.

If WP-CLI says maintenance mode is already inactive, do not keep running the deactivate command. A page cache, CDN, or server cache may still be serving the old maintenance response.

Remove the .maintenance file manually

Use this method when WP-CLI is unavailable.

  1. Open the WordPress root directory with SFTP, SSH, or your hosting file manager.
  2. Find the file named .maintenance.
  3. Delete only that file.
  4. Reload the site and clear any active cache layers.

The WordPress root is the directory containing files such as wp-config.php, wp-load.php, and wp-settings.php.

Do not delete WordPress core folders, plugins, themes, or wp-config.php. The stuck message usually requires removing only .maintenance.

If hidden files are not visible in your hosting file manager, enable its option to show hidden files or dotfiles.

Clear every cache that can preserve the message

Removing maintenance mode does not necessarily remove a cached maintenance page. Clear the layers used by your site:

  • WordPress page-cache plugin
  • persistent object cache such as Redis or Memcached
  • hosting control-panel cache
  • CDN cache
  • Nginx FastCGI, Varnish, or LiteSpeed server cache
  • browser cache

Test from a private window after purging the caches. If possible, also check the site from a different network or use a direct origin URL to rule out the CDN.

Check the interrupted update

Getting the site back online does not prove that the original update finished.

Open Dashboard > Updates and check the item that was being updated. If it is still pending, take a backup and run that update again. Update one plugin or theme at a time if several updates were interrupted.

If the same update fails again, check these common causes before retrying:

  • insufficient disk space
  • PHP timeout or memory limits
  • file ownership or permissions problems
  • a security rule blocking update requests
  • a network interruption while downloading the package
  • an update process running in another browser tab or deployment job

Avoid repeatedly starting the same update without checking the error logs. A recurring failure needs its underlying cause fixed.

If the maintenance page is replaced by an error

A fatal error, blank page, or HTTP 500 after removing .maintenance usually means the interrupted update left a plugin, theme, or core files in an inconsistent state.

Start with the component that was being updated. If it was a plugin and you have WP-CLI access, confirm its status:

wp plugin status plugin-slug

For a theme:

wp theme status theme-slug

Review the PHP error log before disabling multiple components. If one plugin caused the failure, isolate or roll back that plugin instead of deactivating everything.

Restore a known-good backup when files are missing, the update cannot be completed safely, or the site remains unusable after the affected component is isolated.

Prevent it happening again

Before large core, plugin, or theme updates:

  • take a current backup
  • confirm there is enough free disk space
  • update business-critical sites in staging first
  • avoid updating many large extensions in one batch
  • keep the update tab open until WordPress reports completion
  • monitor PHP and server logs during problematic updates

The maintenance message itself is usually easy to remove. The important part is verifying the interrupted update afterward so the site is not left in a partially updated state.

Editorial Staff

The BugWP editorial staff publishes practical WordPress guides for fixes, security, performance, hosting, Cloudflare, and plugin/theme recovery.