How to Fix the WordPress White Screen of Death (Complete Guide)
The WordPress White Screen of Death is one of the most common — and most frustrating — errors. Here's how to diagnose the root cause and fix it permanently.
What Is the WordPress White Screen of Death?
The WordPress White Screen of Death (WSOD) is exactly what it sounds like — you visit your site and see nothing but a blank white page. No error message, no dashboard, nothing. It’s one of the most common WordPress errors and can be caused by a range of issues from plugin conflicts to PHP memory exhaustion.
The good news: it’s almost always fixable. The key is systematic diagnosis rather than guessing.
Common Causes
Before diving into fixes, understanding the root cause saves time. In our experience troubleshooting hundreds of WSOD cases, these are the most frequent culprits:
- Plugin conflicts — A plugin update introduces incompatible code
- Theme errors — A broken theme file or incompatible theme update
- PHP memory limit exhaustion — Your site runs out of allocated memory
- PHP version incompatibility — Code not compatible with your PHP version
- Corrupted core files — WordPress core files damaged during an update
- Database connection issues — wp-config.php credentials or database server problems
Step 1: Enable WordPress Debug Mode
The first step is always to see the actual error. WordPress hides errors by default, which is why you see a white screen instead of a helpful message.
Access your wp-config.php file via FTP or your hosting file manager and find these lines:
define('WP_DEBUG', false);
Change them to:
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', true);
Now reload the page. You should see a PHP error message that points to the exact file and line number causing the issue. This is your roadmap to the fix.
Step 2: Check for Plugin Conflicts
If the error points to a plugin file — or if you recently updated a plugin — this is your most likely cause.
Via FTP/File Manager:
- Navigate to
wp-content/plugins/ - Rename the
pluginsfolder toplugins_disabled - Reload your site
If the site loads, a plugin is the culprit. Rename the folder back to plugins, then rename individual plugin folders one by one to identify which one causes the issue.
Via WP-CLI (if you have SSH access):
wp plugin deactivate --all
wp plugin activate plugin-name # Re-activate one at a time
Step 3: Switch to a Default Theme
If disabling plugins doesn’t fix it, try switching to a default WordPress theme (Twenty Twenty-Four):
# Via WP-CLI
wp theme activate twentytwentyfour
Or via FTP, rename your active theme’s folder in wp-content/themes/. WordPress will fall back to a default theme automatically.
Step 4: Increase PHP Memory Limit
If the error message mentions “Allowed memory size exhausted,” you need more memory. Add this to wp-config.php:
define('WP_MEMORY_LIMIT', '256M');
If that doesn’t work, the limit may be set at the server level. Add to your .htaccess:
php_value memory_limit 256M
Or in php.ini:
memory_limit = 256M
Important: If you’re consistently hitting memory limits, the real fix isn’t increasing the limit — it’s finding what’s consuming so much memory. A single plugin making hundreds of database queries on every page load is a common offender.
Step 5: Check PHP Version Compatibility
WordPress 6.x requires PHP 7.4 at minimum, and PHP 8.0+ is recommended. Some plugins haven’t been updated for PHP 8.2+, which can cause fatal errors.
Check your PHP version in your hosting control panel. If you recently upgraded PHP, try downgrading one version to see if the WSOD resolves. Then update the offending plugin or find an alternative.
Step 6: Reinstall WordPress Core
If core files are corrupted (common after interrupted updates), reinstall them:
# Via WP-CLI — safest method
wp core download --force --skip-content
This replaces all core files without touching your wp-content directory, themes, plugins, or uploads.
Step 7: Check the Database
If none of the above works, the issue may be database-related:
# Check database connection
wp db check
# Repair database tables
wp db repair
You can also add this to wp-config.php temporarily:
define('WP_ALLOW_REPAIR', true);
Then visit yoursite.com/wp-admin/maint/repair.php to run the repair tool. Remove the line after you’re done — it doesn’t require authentication.
Prevention: Stop WSOD Before It Happens
The best fix is prevention. Here’s what we recommend to every client:
- Stage updates first — Never update plugins or themes directly on production. Use a staging environment.
- Automated backups — Daily backups with at least 30 days retention. Test restores quarterly.
- Monitor PHP error logs — Set up alerts for fatal errors before they become white screens.
- Keep PHP updated — Stay on a supported PHP version, but test compatibility first.
- Use quality plugins — Fewer plugins with better code quality beats dozens of lightweight ones.
When to Call a Professional
If you’ve tried these steps and your site is still showing a white screen, the issue is likely deeper — a corrupted database, server misconfiguration, or a complex code conflict that requires debugging at the PHP level.
At Zen Core Digital, we diagnose WSOD issues daily. Our Fix Plan includes same-day diagnosis for critical issues, with most fixes completed within 24-48 hours.
Don’t spend hours guessing. Get in touch and we’ll have your site back online fast.
Need help with your WordPress site?
Our engineering team can diagnose and fix the issues discussed in this article.
Get a Free Site Audit