Shahbaz Ali, WordPress developer and designer
Shahbaz Ali

How to Fix the WordPress White Screen of Death (10 Fixes)

Hands typing on a laptop showing a completely blank white screen in a dark room — the WordPress white screen of death

Quick answer: The WordPress white screen of death is a fatal PHP error with the error display switched off — your site died mid-load and couldn’t even print a message. The fastest path to a fix: enable WP_DEBUG_LOG in wp-config.php to make the hidden error visible, then deactivate plugins (rename the plugins folder over FTP if you’re locked out), switch to a default theme, and raise the PHP memory limit. One of those four resolves the overwhelming majority of white screens.

A blank white page is the most unsettling error WordPress can throw, precisely because it tells you nothing. No message, no error code, no clue — just white. The good news: that blankness is itself a diagnosis, and the causes behind it are a short, predictable list.

This guide is part of my complete guide to fixing common WordPress errors — the hub that maps every common error to its fix.

What Is the White Screen of Death — and Why Is There No Error Message?

PHP hit a fatal error while building your page, and because error display is turned off (as it should be on a live site), the browser received nothing — a blank document. Since WordPress 5.2, most fatal errors are caught and shown as the “There has been a critical error on this website” screen instead. So when you get pure white with no message at all, it usually means the failure happened so early, or so severely, that even WordPress’s own error handler never got the chance to run.

Two quick checks before the fixes. First, try yoursite.com/wp-admin — the admin sometimes survives when the front end doesn’t, and a working admin makes every fix easier. Second, check whether the white screen is only on some pages: a single white page points at that page’s content or template, while a sitewide white screen points at a plugin, the theme, memory, or PHP itself.

Fix 1: Make the Hidden Error Visible with the Debug Log

Don’t fix blind. Add these lines to wp-config.php, above the /* That's all, stop editing! */ line:

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );

Reload the white page once, then open wp-content/debug.log. The last “PHP Fatal error” line names the exact file that killed the page — and the folder it sits in names the plugin or theme responsible. My full walkthrough of reading that file is in the WordPress error log guide. If the log names the culprit, jump straight to the matching fix below; the rest of this list is for when you have to work without a confession.

Fix 2: Rule Out Caching First

If the white screen appears for visitors but the site looks fine when you’re logged in — or it appears intermittently — a cache may have stored a broken copy of the page. Purge every layer: your caching plugin, the server cache, and any CDN. My guide to clearing all five WordPress cache layers covers each one. If a purge fixes it, the white screen was a symptom captured at the wrong moment; keep the debug log on for a day to catch the original error if it recurs.

Fix 3: Raise the PHP Memory Limit

“Allowed memory size exhausted” is one of the most common lines to find in that debug log. Give WordPress more room in wp-config.php:

define( 'WP_MEMORY_LIMIT', '256M' );

If the white screen vanishes, you’ve confirmed memory — but treat the raise as first aid, not the cure. Something on the site is eating that memory, and the usual suspect is a heavy plugin. Your hosting plan sets the hard ceiling; if 256M is refused, raise it in your hosting panel or ask support.

Fix 4: Deactivate All Plugins

The single most common cause. If wp-admin works, deactivate everything from the Plugins screen and reload the site. White screen gone? Reactivate one at a time until it returns — the last one you switched on is the culprit.

If you’re locked out of admin, do it over FTP or your hosting file manager: rename wp-content/plugins to plugins-off, confirm the site loads, then rename it back. All plugins will be deactivated but nothing is lost — reactivate them one by one from the Plugins screen, testing after each.

Fix 5: Switch to a Default Theme

If plugins are clean, test the theme. From a working admin: Appearance → Themes → activate Twenty Twenty-Five. Locked out? Rename your active theme’s folder inside wp-content/themes — WordPress falls back to a default theme automatically (keep one installed for exactly this moment). If the white screen disappears, the error lives in your theme — usually functions.php, often after a manual edit or an update. Restore the file from a backup or re-install the theme.

Fix 6: Delete a Leftover .maintenance File

An update that got interrupted — a timeout mid-plugin-update is enough — can leave WordPress stuck between states. Look in your site’s root folder (where wp-config.php lives) for a file named .maintenance and delete it. If updates keep failing half-way, that’s a server resources problem worth raising with your host.

Fix 7: Restore a Clean .htaccess

A corrupted .htaccess usually produces a 500 error rather than a clean white screen, but the line between the two is thin enough to check: rename .htaccess to .htaccess.bak, reload, and if the site returns, go to Settings → Permalinks and click Save to regenerate a fresh one. The full version of this fix — and everything else .htaccess can break — is in my HTTP 500 error guide.

Fix 8: Re-Upload Fresh WordPress Core Files

If a core file got corrupted — a bad update, a disk hiccup, or malware — replace the machinery without touching your content. Download WordPress from wordpress.org, then upload fresh copies of the wp-admin and wp-includes folders over the existing ones. Never overwrite wp-content (your themes, plugins, uploads) or wp-config.php.

Fix 9: Check the PHP Version and Server Logs

A white screen that appeared right after a hosting-panel change is usually PHP itself: a version switch that an old plugin can’t run on, or a missing PHP extension. Check your hosting panel’s PHP version — if it was recently changed, switch back one version and test. While you’re in the panel, open the server error log too; it catches failures that happen too early for WordPress’s own log to record.

Fix 10: Restore a Backup — or Bring In Help

If nothing above brings the site back, restore the most recent backup from before the white screen and then work out what changed. And if there’s no usable backup, stop before experimenting further — every random change makes the eventual diagnosis harder. This is the point where a developer with the server logs in front of them fixes in minutes what trial-and-error takes days to find.

How to Keep It from Coming Back

  • Keep daily backups you’ve actually tested restoring — the white screen is only scary when there’s no way back.
  • Update plugins one at a time, not in a single bulk click, so a failure names its cause.
  • Keep a default theme installed as the permanent fallback for Fix 5.
  • Test PHP version changes on staging first — the biggest single trigger of sudden sitewide white screens.

Frequently Asked Questions

Why is my WordPress site just a blank white screen with no error?

A fatal PHP error occurred while the page was being built, and error display is switched off (correctly, on a live site), so nothing was printed. Enable WP_DEBUG_LOG in wp-config.php and read wp-content/debug.log — the last fatal-error line names the file, and therefore the plugin or theme, that caused it.

Is the white screen of death the same as the WordPress critical error?

Same family, different presentation. Since WordPress 5.2, most fatal errors are caught and shown as the ‘critical error’ message with a recovery-mode email. A pure white screen means the failure happened too early or too severely for that handler to run — so the fixes overlap, but the white screen usually calls for file-level work over FTP.

How do I fix the white screen of death if I can’t log in to wp-admin?

Work over FTP or your hosting file manager. Rename wp-content/plugins to deactivate all plugins at once, rename the active theme’s folder to force a default-theme fallback, raise WP_MEMORY_LIMIT in wp-config.php, and delete any leftover .maintenance file in the site root. One of those restores access in most cases.

Can a caching plugin cause a white screen of death?

Yes, in two ways: a cache can store and keep serving a broken copy of a page after the original error is gone, and object-cache misconfigurations can white-screen the site directly. Purge every cache layer early in your diagnosis — if the site returns, the cache had preserved the error.

Will fixing the white screen of death delete my content?

No. Posts, pages, and media live in the database and wp-content/uploads, and none of the standard fixes touch them. Renaming plugin or theme folders, raising memory, restoring .htaccess, and re-uploading wp-admin and wp-includes all leave your content exactly as it was.

Wrapping Up

The white screen of death is silence, not mystery — the error is there, just muted. Turn on the debug log so it speaks, then work the short list: cache, memory, plugins, theme, leftover maintenance file, core files, PHP version. Each fix is reversible, none touches your content, and the culprit is almost always one of the first four.

And if your site is white right now and you’d rather hand it to someone who does this weekly — emergency fixes are a core part of my work. Get in touch and I’ll get it back online.


Shahbaz Ali is a senior WordPress developer with 6+ years of agency experience, specializing in WordPress development, speed optimization, and emergency fixes.