WordPress

WordPress White Screen of Death: How to Fix It

A blank white page in WordPress is almost always a PHP error, a memory limit or a broken plugin or theme. Here is a calm, step by step way to find the cause and get your site back.

Quick answer: The WordPress white screen of death is a blank page with no error message, usually caused by a PHP fatal error from a plugin, a theme, a bad code snippet or running out of memory. Start by checking your email for a WordPress recovery mode message, which lets you log in and pause the faulty plugin or theme. If there is no email, turn on the debug log to see the real error, then disable plugins by renaming the plugins folder, switch to a default theme, and raise the PHP memory limit if needed. Always take a backup before changing files.

What the white screen actually is

When PHP hits a fatal error, it stops running. If error display is switched off, which it should be on a live site, the browser receives an empty page. So the white screen is not a single problem. It is a symptom that hides the real message.

Since WordPress 5.2, released in May 2019, core includes fatal error protection. In many cases you will now see a message saying “The site is experiencing technical difficulties” instead of pure white, and the site admin gets an email. On older versions, or when the error happens very early, you may still see a completely blank page.

Common causes

  • A plugin update or new plugin that conflicts with another plugin, your theme or your PHP version
  • A theme update or a broken custom template
  • A code snippet added to functions.php with a missing semicolon or bracket
  • PHP memory limit reached, often on large pages, imports or page builder screens
  • Incompatible PHP version after your host upgraded PHP
  • Failed or interrupted update that left files half replaced
  • File permission problems after a migration
  • Hacked site where malicious code has broken PHP files

Before you start: back up

Even when the site is down, you can usually back up through your hosting control panel or by downloading the wp-content folder and exporting the database with phpMyAdmin. If anything goes wrong while fixing, you can return to this point.

If you made a change just before the white screen appeared, that change is the most likely cause. Undo it first.

Step 1: check for the recovery mode email

Look in the inbox of the site admin email address for a message titled something like “Your Site is Experiencing a Technical Issue”. It names the plugin or theme that caused the error and includes a special login link.

Click the link, log in, and WordPress lets you work in recovery mode, where the faulty extension is paused only for you. Deactivate it, then exit recovery mode and check the site. Then look for an update, a replacement, or contact the developer.

If the email never arrives, your site may not be sending email reliably, which is worth fixing separately.

Step 2: check whether it affects the whole site

Try these addresses:

  • The homepage
  • A single post or page
  • /wp-admin/

If only the admin is white, the cause is often a plugin that loads only in the dashboard. If only one page is white, it may be a template, a shortcode or a page builder element on that page. If everything is white, think plugins, theme, memory or PHP version.

Step 3: turn on the debug log

The fastest way to find the cause is to read the error. Connect with SFTP or your host’s file manager, open wp-config.php and find the line that says define( 'WP_DEBUG', false );. Replace it with:

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

Reload the broken page, then open wp-content/debug.log. The last lines usually say something like “PHP Fatal error: Uncaught Error: Call to undefined function” followed by a file path. The path tells you which plugin or theme folder is involved.

When you are finished, set WP_DEBUG back to false and delete the log file, because it can expose information about your site.

Your host’s error logs, available in most control panels, show the same information if you prefer not to edit wp-config.php.

Step 4: disable all plugins

If you cannot reach the dashboard, use SFTP or the file manager:

  1. Go to wp-content.
  2. Rename the plugins folder to plugins-off.
  3. Reload the site.

If the site comes back, a plugin is to blame. Rename the folder back to plugins. All plugins will be deactivated. Now reactivate them one at a time from the dashboard, checking the site after each, until the white screen returns. That is the culprit.

If the debug log already named a plugin, you can simply rename that plugin’s folder instead of all of them.

Step 5: switch to a default theme

If plugins were not the problem, try the theme. In wp-content/themes, rename your active theme’s folder. WordPress falls back to a default theme such as Twenty Twenty or Twenty Nineteen, as long as one is installed. If no default theme is present, upload one first.

If the site loads with the default theme, the problem is in your theme or child theme. Check recent edits to functions.php or template files, and compare with a clean copy.

Step 6: raise the PHP memory limit

An error saying “Allowed memory size of … bytes exhausted” means PHP ran out of memory. Add this line to wp-config.php above the line that says “That’s all, stop editing”:

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

Your host also sets a server limit, and WordPress cannot go above it. If the error continues, ask your host to raise the PHP memory limit. Remember that memory errors are a symptom too. A plugin that needs huge amounts of memory may need replacing.

Step 7: check the PHP version

Hosts regularly retire old PHP versions. A plugin written for PHP 5.6 may fail on PHP 7.3 or 7.4, and a modern plugin may fail on an old PHP version. Check which version your hosting account is using and whether your plugins and theme support it. Our guide to PHP versions for WordPress explains how to test an upgrade safely.

WordPress’s Site Health tool also reports the PHP version and flags problems once you can log in again.

Step 8: fix a failed update

If an update was interrupted, you may see a “Briefly unavailable for scheduled maintenance” message or a white screen. Delete the .maintenance file in the site’s root folder if it exists. Then download a fresh copy of WordPress and upload the wp-admin and wp-includes folders, replacing the old ones. Do not overwrite wp-content or wp-config.php.

Step 9: check file permissions

After a migration, wrong permissions can stop PHP reading files. Folders are typically set to 755 and files to 644, with wp-config.php sometimes stricter. Your host can reset these if you are unsure.

Step 10: consider a security problem

If none of the above explains it, or you see strange files, unknown admin users or code you did not write, the site may have been compromised. Our article on cleaning a hacked WordPress site walks through what to do.

Clear caches after fixing

Once the site works, clear your caching plugin, any server cache and your CDN. Otherwise visitors may still see the cached white page for a while.

How to prevent it happening again

  • Test updates on a staging site before applying them to the live site
  • Update plugins one at a time, not all at once
  • Keep fewer, well maintained plugins
  • Add custom code through a child theme or small plugin, never core files
  • Keep automatic daily backups stored off the server
  • Monitor uptime so you hear about problems before customers do

A regular WordPress maintenance routine covers most of this.

FAQ

Will I lose my content because of the white screen?

Almost never. Your posts and pages are stored in the database, which is not affected by a PHP error. Fixing the code brings everything back.

Why is only my dashboard white?

A plugin or theme function that runs only in the admin area is the usual cause. Disabling plugins by renaming the folder is the quickest test.

Is it safe to leave WP_DEBUG on?

Not on a live site. Turn it on only while investigating, with display switched off, and turn it off again afterwards.

What if the white screen appears only on one page?

Look at what is unique to that page: a shortcode, a page builder element, an embedded form or a custom template. Remove elements one by one in a draft copy.

Get back online, then make it boring

The white screen of death looks alarming, but it follows a predictable pattern and is usually fixed in minutes once you can read the error. A good update and testing routine stops most cases before they happen. If you want a WordPress site that stays stable and keeps converting visitors, see our Turn visitors into customers service.

About the author

Imran M

Leave a Reply

Your email address will not be published. Required fields are marked *

Ready to improve your website?

Let's build a faster, higher performing website.