How do I troubleshoot the ‘White Screen of Death’ in WordPress?

Applies to: WordPress.org (self-hosted)
Last updated: May 2025


Problem

You visit your WordPress site (or admin dashboard), and all you see is a completely blank white screen—no error message, no content. This is often referred to as the “White Screen of Death” (WSOD) and typically means a PHP error or memory issue has stopped the site from loading.


Solution

This issue is usually caused by:

  • Plugin or theme conflicts
  • Exhausted PHP memory limit
  • Corrupt core files
  • Syntax errors in custom code

You’ll need to troubleshoot step-by-step, starting with the most common causes.


Step 1: Enable Debug Mode

Turn on WordPress debugging to reveal error messages.

  1. Access your site files via FTP or File Manager
  2. Open the wp-config.php file
  3. Look for this line: define('WP_DEBUG', false);
  4. Change it to: define('WP_DEBUG', true); define('WP_DEBUG_DISPLAY', true);
  5. Save the file and reload the site

If there’s a PHP error, it will now be displayed on the screen—note the file and line number.


Step 2: Disable All Plugins

If the frontend or admin dashboard is blank, disable plugins manually:

  1. Go to /wp-content/ via FTP or File Manager
  2. Rename the plugins folder to plugins_old
  3. Visit your site—if it loads, a plugin is the issue
  4. Rename the folder back to plugins
  5. Rename plugins one-by-one inside the folder to find the culprit

Once identified, you can delete or replace the problematic plugin.


Step 3: Switch to a Default Theme

Sometimes the theme is the cause.

  1. Go to /wp-content/themes/
  2. Rename your active theme folder (e.g., mytheme_old)
  3. WordPress will fall back to a default theme like Twenty Twenty-Four if available

If no default theme is installed, upload one manually via FTP


Step 4: Increase PHP Memory Limit

A lack of memory can cause WSOD.

  1. Edit your wp-config.php file
  2. Add this line before /* That's all, stop editing! */: define('WP_MEMORY_LIMIT', '256M');
  3. Save and refresh the site

Some hosts require you to set memory limits in php.ini or .htaccess.


Step 5: Check for File Corruption

Re-upload fresh copies of:

  • wp-admin/
  • wp-includes/
    (from a clean WordPress download at wordpress.org)

Do not replace wp-content/—it contains your themes, plugins, and media.


Step 6: Restore a Backup

If the issue persists and you have a working backup:

  • Use your backup plugin or hosting panel to restore your site to a stable version.

Notes

  • Always back up your site before troubleshooting
  • Enable debug logging (instead of displaying errors) in production:
  • define('WP_DEBUG_LOG', true); define('WP_DEBUG_DISPLAY', false);
  • Logs are stored in /wp-content/debug.log

You may also like...