WordPress White Screen of Death: 9 Fixes Ordered by Probability (2026)
Disclosure: some links on this page are affiliate links. We may earn a commission at no extra cost to you. How we test and rate hosts.
Quick answer: The WordPress white screen of death (WSOD) happens when a PHP fatal error stops WordPress before it can render. Fix it in 5 minutes: enable WP_DEBUG to see the real error, deactivate all plugins via FTP/file manager, switch to a default theme, and increase memory limit to 256M. These steps resolve ~90% of cases. If diagnostics reveal malware or corrupted database, you'll need deeper fixes or host support.
Step 1: Enable WP_DEBUG to See the Actual Error
The white screen hides the real error message. Force WordPress to show it:
- Access your site files via FTP (FileZilla) or your host's file manager (cPanel → File Manager on Bluehost).
- Open
wp-config.phpin the root directory. - Find the line
define('WP_DEBUG', false);and changefalsetotrue. - Add this line directly below:
define('WP_DEBUG_LOG', true); - Save the file and reload your site.
You'll now see the actual PHP error instead of a blank screen. Common patterns:
Fatal error in /wp-content/plugins/[plugin-name]/→ Plugin conflict (see Fix #2)Fatal error in /wp-content/themes/[theme-name]/→ Theme error (see Fix #3)Allowed memory size exhausted→ Memory limit (see Fix #4)Parse error: syntax error→ Code typo (see Fix #5)
Important: Set WP_DEBUG back to false after fixing — leaving it on exposes sensitive paths to visitors.
Step 2: Deactivate All Plugins (~40% of Cases)
If WP_DEBUG shows a plugin error or you can't see the error, deactivate all plugins without wp-admin access:
- Navigate to
/wp-content/via FTP or file manager. - Rename the
pluginsfolder toplugins-disabled. - Reload your site. If it works, a plugin was the culprit.
- Rename the folder back to
plugins. - Now rename each plugin folder inside
pluginsone-by-one (e.g.,akismet-disabled) and reload after each rename until you identify the problem plugin.
Once identified, delete the broken plugin folder entirely, then reinstall a fresh copy from WordPress.org or find an alternative.
Step 3: Switch to a Default Theme (~20% of Cases)
If plugins aren't the issue, test your theme:
- Navigate to
/wp-content/themes/ - Rename your active theme's folder (e.g.,
custom-theme→custom-theme-disabled). - WordPress automatically falls back to a default theme (Twenty Twenty-Five or similar).
- Reload your site. If it loads, your theme has a fatal error.
Fix: Check the theme's functions.php for syntax errors, re-download a fresh copy of the theme, or contact the theme developer.
Step 4: Increase PHP Memory Limit (~15% of Cases)
If WP_DEBUG shows memory exhausted, increase the limit:
Add this line to wp-config.php (before the /* That's all, stop editing! */ comment):
define('WP_MEMORY_LIMIT', '256M');If that doesn't work, create/edit .htaccess in the root and add:
php_value memory_limit 256MStill not working? Your host caps the limit — contact support or check your hosting control panel (Bluehost: cPanel → MultiPHP INI Editor).
Step 5: Check for Syntax Errors in functions.php (~8% of Cases)
If you recently edited functions.php or added a code snippet:
- Access
/wp-content/themes/[your-theme]/functions.phpvia FTP. - Look for missing semicolons, unclosed brackets
, or PHP opening tags without closing tags. - Common culprit: a space or blank line before
<?phpor after?>. - Re-upload a fresh copy of
functions.phpfrom a theme backup.
Step 6: Check Error Logs for Hidden Clues
If WP_DEBUG doesn't reveal the issue:
- cPanel hosts (Bluehost, HostGator): cPanel → Metrics → Errors → view recent PHP errors.
- SiteGround: Site Tools → Statistics → Error Logs.
- File system: Check
/wp-content/debug.log(created when WP_DEBUG_LOG is true). - PHP logs: Look for
error_logorphp_errors.login the root directory.
Step 7: Re-upload WordPress Core Files (~10% of Cases)
If a core file is corrupted:
- Download fresh WordPress from wordpress.org.
- Extract the ZIP file.
- Via FTP, upload
wp-adminandwp-includesfolders (overwrite existing). - DO NOT overwrite
wp-contentorwp-config.php. - Reload your site.
Step 8: Restore from Backup (When All Else Fails)
If nothing works and you have a recent backup:
- Bluehost: cPanel → Backup → restore a previous backup, or use Bluehost's automated backups tool.
- Plugin backups: If you used UpdraftPlus, BackupBuddy, etc., restore via their recovery process.
- Manual backup: Re-upload your
wp-contentfolder and import your database via phpMyAdmin.
Pro tip: After restoring, immediately enable automatic backups to prevent future panic.
Step 9: Contact Your Host (Last Resort)
If you've tried everything and still see a white screen:
- Server-side issue — PHP version incompatibility, server misconfiguration, resource limits.
- Database corruption — your host can repair database tables via phpMyAdmin or command line.
- Malware infection — host-level security scan can identify injected code.
- Account suspension — rare, but check if your hosting account is suspended for non-payment or TOS violation.
Good hosts (Bluehost, SiteGround, WPX) will diagnose server-side issues in minutes.
Prevent Future White Screens
- Use a staging site — test plugin/theme updates before pushing to production (built into Bluehost, SiteGround, WP Engine).
- Automatic backups — daily minimum, before any update.
- Disable auto-updates for major plugins — WooCommerce, page builders should be updated manually on staging first.
- Monitor uptime — get alerted immediately if your site goes down (see best uptime monitors).
- Increase memory preemptively — set WP_MEMORY_LIMIT to 256M before you need it.
- Quality hosting matters — budget hosts with oversold servers cause more WSODs from resource exhaustion.
Hosting That Prevents White Screens
Bluehost's managed WordPress includes automatic backups, staging sites, proactive monitoring, and 24/7 support that can diagnose WSOD issues in minutes — not hours. $3.99/mo.
Get Reliable WordPress Hosting →Related errors: fix "critical error" message, 500 internal server error, database connection error, memory limit exhausted, stuck in maintenance mode.
What are you building?
Tell us about your project so we can match the perfect hosting plan.
Hosting Cost Calculator
See exactly how much you'll spend on hosting over time. Compare Bluehost vs popular alternatives and discover your potential savings.
Used to calculate transaction fees (Shopify charges 2% on sales)
Frequently Asked Questions
What causes the WordPress white screen of death?
The white screen of death (WSOD) is caused by PHP fatal errors that prevent WordPress from loading. Most common causes: plugin conflicts (~40%), theme errors (~20%), memory limit exhaustion (~15%), corrupted core files (~10%), syntax errors in functions.php (~8%), and database connection issues (~7%).
How do I fix WordPress white screen of death?
Start with the most likely fixes: 1) Enable WP_DEBUG to see the actual error, 2) Deactivate all plugins via FTP/file manager, 3) Switch to a default theme, 4) Increase memory limit to 256M, 5) Check error logs. These five steps resolve ~90% of cases.
Why did my WordPress site suddenly go blank?
A sudden white screen usually means: a plugin just auto-updated with breaking code, a theme file was corrupted during upload, memory limit was hit from a traffic spike, or a recent edit introduced a PHP syntax error. Check what changed in the last 24 hours.
Can I fix WSOD without FTP access?
Yes — use your hosting control panel's file manager (cPanel File Manager on Bluehost, File Manager on SiteGround) or ask your host's support to deactivate plugins via database. Most hosts can reset your site to a working state.
Does the white screen mean my site was hacked?
Not necessarily — only ~5-8% of white screens are caused by malware. Most are plugin/theme conflicts or memory issues. But if you see a white screen plus suspicious redirects or unknown admin users, scan for malware immediately.
Will I lose my content fixing the white screen?
No — the white screen is a display error, not data loss. Your database and files are intact. Deactivating plugins, switching themes, or restoring core files doesn't delete content.
Ready to launch?
Get Bluehost from $3.99/month with a free domain, free SSL, and 30-day money-back guarantee.
Related Articles
Bluehost vs Squarespace vs Wix 2026: The 3-Way Verdict
Bluehost vs Squarespace vs Wix compared: real costs over 3 years, ownership, SEO, ecommerce, and who each platform is actually for. Clear winner by use case.
Web Hosting Benchmarks 2026: Speed Tests Across 12 Hosts
Hosting benchmarks 2026: TTFB, load time, and uptime data across 12 popular hosts. What the numbers actually mean and which metrics matter.
The State of Web Hosting 2026: Prices, Trends & What Changed
State of web hosting 2026: renewal price inflation, AI builders vs WordPress, consolidation under Newfold/EIG, and what it means for your next host.
Web Hosting Glossary 2026: 40 Terms Explained in Plain English
Web hosting terms explained simply: bandwidth, uptime, SSL, CDN, cPanel, DNS, VPS, and 33 more. The plain-English glossary for buying hosting smart.
How to Choose Hosting for Client Sites (Agency Guide 2026)
Choosing hosting for client sites: reseller vs separate accounts vs managed, who owns the account, billing models, and the stack that scales an agency.
Bluehost for Nonprofits 2026: Discounts, Deals & Alternatives
Does Bluehost offer a nonprofit discount? No formal program — but intro pricing + free domain beats most 'nonprofit deals.' Real options compared.