How to Fix the WordPress White Screen of Death (Step by Step)
You load your WordPress site and see... nothing. A completely blank white page. No error message, no helpful hint, just white. Welcome to the WordPress White Screen of Death (WSoD) — one of the most common and most infuriating WordPress errors you will ever encounter.
I have fixed the White Screen of Death on hundreds of sites over the years. The first time it happened to me back in 2008, I panicked and thought I had lost everything. I had not. Your content is safe in the database — the white screen just means PHP hit an error it cannot recover from, and WordPress cannot render anything.
Let me walk you through every fix I use, starting with the fastest methods.
What Causes the White Screen of Death?
The White Screen of Death happens when a PHP process fails silently. The four most common causes are:
- Plugin conflict — A plugin crashes, has a bug, or conflicts with another plugin or your PHP version. This is the cause about 70% of the time in my experience.
- Theme issue — Your theme has a PHP error, typically in
functions.phpor a template file. - PHP memory limit exceeded — A script tried to use more memory than the server allows, and PHP silently dies.
- PHP errors in custom code — If you (or someone) added custom code to
functions.phpor a custom plugin, a syntax error or runtime error can cause the white screen.
The good news is that all four causes have reliable fixes. Let us work through them.
Step 1: Enable WP_DEBUG to See the Actual Error
The white screen shows nothing because WordPress hides PHP errors by default in production. The first thing you should do is turn on debugging so you can see what is actually going wrong.
Connect to your site via FTP (I use FileZilla) or your hosting file manager. Open wp-config.php — it is in the root directory of your WordPress installation.
Find this line:
define('WP_DEBUG', false);
Replace it with:
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', true);
Save the file and reload your site. Now instead of a white screen, you should see a specific PHP error message. This message tells you exactly which file and line number caused the problem. If you see something like Fatal error in /wp-content/plugins/some-plugin/file.php on line 42, you know the plugin "some-plugin" is the culprit.
If the error points to a plugin, skip to Step 2. If it points to your theme, skip to Step 3. If you still see a white screen even with WP_DEBUG on, continue to Step 2.
Step 2: Disable All Plugins via FTP
If you cannot access your WordPress dashboard (which is usually the case with WSoD), you need to disable plugins manually. Here is how:
- Connect to your site via FTP or your hosting file manager.
- Navigate to
/wp-content/. - Find the
pluginsfolder. - Rename it to
plugins-disabled.
Now reload your site. If the white screen is gone, you have confirmed that a plugin is the problem. Here is how to find which one:
- Rename
plugins-disabledback toplugins. - Inside the
pluginsfolder, rename each plugin subfolder one at a time (e.g., renamecontact-form-7tocontact-form-7-disabled). - After renaming each plugin, reload your site.
- When the site comes back, the last plugin you renamed is the culprit.
Once you identify the problematic plugin, you have three options: delete it and find an alternative, contact the plugin developer to report the bug, or wait for an update that fixes the issue. Do not just reactivate a plugin that crashes your site — it will crash again.
Step 3: Switch to a Default Theme
If disabling all plugins did not fix the white screen, your theme is likely the problem. Here is how to switch themes without dashboard access:
- Connect via FTP and navigate to
/wp-content/themes/. - Rename your active theme folder (e.g., rename
astratoastra-disabled). - Make sure a default WordPress theme is present in the
themesfolder (liketwentytwentyfour). If it is not there, download it from WordPress.org and upload it. - WordPress will automatically fall back to the default theme.
If your site loads with the default theme, the issue is in your theme. Check if a theme update is available. If you recently edited the theme's functions.php file, the code you added likely has an error — revert it.
Step 4: Increase the PHP Memory Limit
If both plugins and theme are fine, you might be hitting the PHP memory limit. WordPress tries to use more memory than the server allows, and PHP silently dies instead of showing an error.
Add this to wp-config.php, just above the "That's all, stop editing!" comment:
define('WP_MEMORY_LIMIT', '256M');
If that does not work, try editing your .htaccess file and adding:
php_value memory_limit 256M
Or create/edit a php.ini file in your WordPress root directory:
memory_limit = 256M
Some hosting providers do not allow you to change the memory limit yourself. If none of these methods work, contact your host and ask them to increase it. If you are on a cheap shared hosting plan, this is a good reason to consider upgrading — see my hosting comparison guide for better options.
For a deeper dive into memory issues, read my dedicated guide: How to Fix WordPress Memory Exhausted Error.
Step 5: Check for Corrupted Core Files
In rare cases, the White Screen of Death is caused by corrupted WordPress core files. This can happen after a failed update, a server crash, or a hacking incident.
- Download a fresh copy of WordPress from wordpress.org.
- Extract the ZIP file on your computer.
- Upload the
wp-adminandwp-includesfolders to your server via FTP, overwriting the existing folders. - Do NOT upload the
wp-contentfolder — that contains your themes, plugins, and uploads.
This replaces all core files with clean versions without touching your content or settings.
Step 6: Check PHP Version Compatibility
If your host recently upgraded PHP (say from PHP 7.4 to PHP 8.2), some older plugins or themes might not be compatible with the new version. This can trigger fatal errors that cause the white screen.
Most hosts let you change the PHP version from the control panel:
- Log in to your hosting control panel (cPanel, Plesk, or your host's custom panel).
- Look for "PHP Version" or "PHP Selector" or "MultiPHP Manager".
- Temporarily switch to a lower PHP version (e.g., PHP 8.0 instead of 8.2).
- Reload your site.
If the site comes back, one of your plugins or your theme is not compatible with the newer PHP version. Update your plugins and theme, then try switching back to the newer PHP version.
Step 7: Increase PHP Text Processing Limits
On some sites (especially those with very long posts or complex page builder layouts), the white screen can be caused by PHP hitting its recursion or backtrack limits during text processing.
Add these lines to your .htaccess file:
php_value pcre.recursion_limit 20000000
php_value pcre.backtrack_limit 10000000
This is a less common fix, but I have seen it solve the WSoD on sites using page builders like Elementor or Divi with very long, complex page layouts.
Still Stuck? Here Is What to Do
If none of the above steps fixed the white screen, here are your remaining options:
- Check the server error log. In cPanel, go to Errors or Error Log. This log often has the exact PHP error that is causing the problem.
- Contact your hosting provider. They can check server-side logs and configurations that you cannot access. Good hosts will help you troubleshoot.
- Restore from backup. If you have a recent backup (and you should — see my backup guide), restoring to a point before the error started is often the fastest solution.
Preventing the White Screen in the Future
After fixing the WSoD, take these steps to prevent it from happening again:
- Keep everything updated — Outdated plugins are the #1 cause of the white screen.
- Test updates on staging first — Most managed hosts include a staging environment. Use it.
- Use quality plugins only — Check the best WordPress plugins for my tested recommendations.
- Set up automated backups — So you can always restore quickly if something goes wrong.
- Never edit theme files directly — Use a child theme instead, so updates do not overwrite your changes.
The White Screen of Death sounds dramatic, but it is almost always fixable in under 15 minutes. The key is staying calm, working through the steps methodically, and not making changes you cannot undo. Your content is safe — you just need to get WordPress rendering again.
For more troubleshooting guides, see my complete list of common WordPress errors.
Written by Marvin
Our team tests and reviews WordPress products to help beginners make confident choices.
Learn more about our team →You might also like
How to Fix the 500 Internal Server Error in WordPress
The 500 Internal Server Error tells you nothing useful — just that something broke. I walk through the most common causes and the exact steps to fix each one, from .htaccess to plugin conflicts.
postHow to Fix the WordPress Memory Exhausted Error
Seeing "Fatal error: Allowed memory size of X bytes exhausted"? I explain why this happens and show you 4 ways to increase the WordPress memory limit — with exact code snippets for each method.
postCommon WordPress Errors and How to Fix Them (Complete Guide)
WordPress errors are frustrating but rarely fatal. I cover the 11 most common WordPress errors with quick-fix solutions for each one — based on years of troubleshooting real sites.
postHow to Fix the "Too Many Redirects" Error in WordPress
Stuck in a redirect loop? I explain what causes ERR_TOO_MANY_REDIRECTS in WordPress and walk through 6 fixes — from clearing cookies to fixing SSL conflicts and .htaccess rules.