21+ years in hosting · Jaipur, India · INR billing with 18% GST · 24/7 email support
Blog · WebJi® India

WordPress White Screen of Death: How to Recover

Quick answer

The WordPress white screen of death is a PHP fatal error that stops the page before any HTML loads. Turn on WP_DEBUG_LOG in wp-config.php and read wp-content/debug.log: it names the failing file. Then fix that cause, raising memory to 256M, disabling plugins by renaming their folder, or switching to a default theme.

For WordPress site owners and developers facing a blank page or a critical-error message, with or without access to wp-admin.

✓ In business since 2005
✓ INR + GST billing
✓ 24/7 Email Support — avg reply < 60 min
GuideWebJi®
knowledge
Read time
4 min
Sections
7
Updated
14 Nov 2026
Written by
WebJi® team

What the WordPress white screen of death means

The WordPress white screen of death is a PHP fatal error: the request stops before any HTML is sent, and the server hides the error text, so visitors see a blank page. The cause is almost always a plugin, the active theme, exhausted memory or a half-finished update.

Since WordPress 5.2, the fatal error handler usually replaces the blank page with a short “critical error” message and emails the site's admin address a recovery-mode link that lets you log in with the faulty plugin or theme paused. If that email arrived, use it first. If it did not, or the screen is still blank, work the steps below in order — read the log first, rename folders second.[1]

Common causes of a WordPress white screen and how each shows up
CauseTypical triggerWhat the log usually says
Plugin conflictA plugin update or a new pluginFatal error in wp-content/plugins/<name>/…
Theme or custom codeA snippet pasted into functions.phpParse error: syntax error … functions.php on line N
Memory exhaustionPage builders, importers, large WooCommerce cataloguesAllowed memory size of N bytes exhausted
Incomplete core updateAn update interrupted mid-wayFailed opening required … wp-includes/…

A site stuck on “Briefly unavailable for scheduled maintenance” is a different fault — a leftover .maintenance file — covered in WordPress maintenance mode.

Step 1: Turn on WP_DEBUG logging to see the real error

Debug logging turns the blank screen into a named file and line number written to wp-content/debug.log, without showing errors to visitors. Open wp-config.php in the site root and add these lines above the line /* That's all, stop editing! Happy blogging. */:

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
@ini_set( 'display_errors', 0 );

Reload the blank page, then open wp-content/debug.log and search for “Fatal error” or “Parse error”. The entry names the plugin file, theme file or memory ceiling that failed, which decides the next step. WordPress's documentation says these tools are not meant for live sites, so set WP_DEBUG back to false and delete debug.log once you are done — it sits in a publicly reachable folder.[2] If debug.log never appears, read the server's own log instead; how to check PHP error logs shows where cPanel keeps it.

Step 2: Raise the WordPress memory limit

Raise memory only when the log says “Allowed memory size … exhausted”; WordPress by default tries for just 40 MB on a single site and 64 MB on multisite. Add this to wp-config.php, above the “stop editing” line:

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

Some hosts do not let WordPress raise PHP's limit itself. If the value does not take, set memory_limit in cPanel → MultiPHP INI Editor where the panel permits, or in php.ini on a VPS, and confirm the value under Tools → Site Health → Info → Server.[3]

If the white screen stays at 256M, memory was not the cause. WordPress's own documentation warns that raising the limit can hide the real problem, so go back to the log rather than raising it again.

Step 3: Disable all WordPress plugins without wp-admin

Rename wp-content/plugins to plugins.old in the hosting file manager or over SFTP; WordPress cannot load plugins it cannot find, so the site returns if a plugin caused the crash. This works when the admin area is blank too.

  1. Rename wp-content/plugins to plugins.old and reload the site.
  2. If the site loads, log in and open Plugins. WordPress now lists every plugin as deactivated because their files are missing.
  3. Rename the folder back to plugins. The plugins stay deactivated.
  4. Reactivate one plugin at a time from the Plugins screen, reloading the site after each, until the white screen returns. The last one you activated is the culprit.
  5. Check wp-content/mu-plugins as well: must-use plugins load automatically and never appear in the normal plugin list.

With SSH access, WP-CLI does the same in one line, skipping plugin and theme code so the command itself does not crash:

wp plugin deactivate --all --skip-plugins --skip-themes
wp plugin list --skip-plugins --skip-themes

Step 4: Switch to a default WordPress theme

If plugins are not the cause, or the log names a theme file, rename the active theme's folder inside wp-content/themes and WordPress falls back to an installed default theme. No default theme installed? Upload one, such as Twenty Twenty-Five, from wordpress.org first.

The usual culprit is a functions.php edit — a missing semicolon or bracket from a pasted snippet. Fix the syntax error the log names, or restore the file from backup, before switching back. Custom code belongs in a child theme or a small plugin, so a theme update cannot overwrite it and one typo cannot take the whole site down. Over SSH: wp theme activate twentytwentyfive --skip-plugins --skip-themes.

Front end, wp-admin or one page: where the white screen appears

Which screen is blank tells you where to look: the front end alone points at the theme, both front end and admin point at a plugin or memory, and one page points at that page's content.

Reading the white screen by where it appears
What is blankStart withWhy
Front end only, admin worksThe themewp-admin does not use the front-end theme
Front end and adminPlugins or memoryPlugins load for admin requests too
Admin onlyAdmin-specific pluginsSome plugins only run code on admin screens
One pageThat page's contentOften a broken shortcode or a template-level PHP error

If the screen shows “500 Internal Server Error” instead of white, follow the WordPress 500 error guide; the log-first method is the same.

How to stop the white screen happening again

Test updates on a staging copy, keep a restorable backup off the same server, and update plugins one at a time so a crash points at its cause. A backup you have never restored is a hope, not a backup.

  • Staging: try core, theme and plugin updates on a WordPress staging site before production.
  • Backups: restore files and the database together so they match; the steps are in how to restore a WordPress backup.
  • Admin email: keep it on a mailbox someone reads, so the recovery-mode email is not missed.
  • One change at a time: never update ten plugins at once on a live store.

WebJi® WordPress Unlimited plans at ₹400 a month before 18% GST include staging and daily backups; see WordPress hosting. If nobody has time to run updates, done-for-you updates and security cost ₹5,900 a year before GST on managed WordPress hosting.

References

  1. WordPress Developer Resources — Editing wp-config.php, Fatal Error Handler (https://developer.wordpress.org/advanced-administration/wordpress/wp-config/#wp-disable-fatal-error-handler). Read on 14 November 2026.
  2. WordPress Developer Resources — Debugging in WordPress (https://developer.wordpress.org/advanced-administration/debug/debug-wordpress/). Read on 14 November 2026.
  3. WordPress Developer Resources — Increasing memory allocated to PHP (https://developer.wordpress.org/advanced-administration/wordpress/wp-config/#increasing-memory-allocated-to-php). Read on 14 November 2026.
FAQ

Frequently asked questions

I did not get the recovery-mode email. What now?

Check spam, then confirm the admin email under Settings → General once you are back in. If the site cannot send mail at all, the email never leaves the server. Skip it and use debug.log plus the plugin-folder rename, which need only file access.

Why is debug.log empty after I enabled WP_DEBUG?

Usually the lines were added below the “stop editing” comment, or WP_DEBUG is set to the string 'false' instead of the boolean. Also check that the web server can write to wp-content. If the crash happens before WordPress loads, look in the server's PHP error log instead.

Can a WordPress white screen be caused by a hack?

Yes, though less often than a plugin conflict. Injected code can break PHP files and cause fatal errors. If the log names a file you never installed, or core files show unexpected changes, treat it as a security incident and follow the hacked WordPress recovery guide.

Will renaming the plugins folder delete my plugin settings?

No. Plugin settings live in the database, not in the plugin folder. Renaming only stops the code loading; when you reactivate a plugin, its stored settings come back. Uninstalling a plugin through wp-admin is what can remove its data.

Last editorial update: 14 November 2026. Prices follow the dated sources on this page; checkout confirms current charges.

WebJi® since 2005

Ready to get started with WebJi®?

Join 12,000+ businesses across India and overseas. INR pricing, 18% GST shown before payment and 24/7 email support in Hindi and English — average first reply under 60 minutes.