The White Screen of Death
The WordPress White Screen of Death (WSOD) is one of the most frustrating errors you can face, because it gives you a blank screen with no information at all. Both PHP errors and database errors can trigger it, leaving your site completely inaccessible.
Before resorting to desperate measures, it helps to know that there are several reasons for the WordPress White Screen of Death. Below we explain the ones most likely to occur, namely plugins, themes, and other causes, along with step-by-step fixes for each.
Plugins Causing the White Screen of Death
No matter how hard developers try, it is basically impossible to write plugins that work and play well with every single theme, and vice versa. If you experience a white screen after activating a theme, the problem could be a plugin that conflicts with the theme. Try the following:
- If you can access the Administration Screens but get the white screen on the front end, log in to your WP Admin Dashboard and deactivate all of your plugins. Then check your front end again. If you can access it, you have a plugin conflict for sure. Now activate each plugin one by one, checking the front end after each. When the white screen returns, you know the last plugin you activated was the culprit. Deactivate it and continue checking the remaining plugins to make sure there are no others.
- If you cannot access either the front end or back end, log in to your website via any FTP client. Locate the folder
wp-content/pluginsand rename it towp-content/plugins_old. This deactivates all of your plugins. Now check whether this resolves your problem. If it does, log in to your WP Admin Dashboard and open the plugins page, which restores the folder name. Then re-activate plugins one by one until you find the one causing the issue.
Themes That Trigger the White Screen of Death
If you are experiencing the white screen of death right after activating a new theme, there is likely a corrupt file in the theme directory. Files often corrupt when a theme is not uploaded properly via the Upload Theme action under Appearance -> Themes. Low PHP memory limits can also be the cause.
Try this:
- If you can access the Administration Screens, disable all plugins as described above and switch to a default WordPress theme such as Twenty Seventeen. Check if this resolves the problem. If it does, reinstall the theme by completely removing the old copy in
/wp-content/themes/and installing a fresh copy. We recommend using FTP, because you have fewer chances of error than with the HTTP theme installer. Activate the replacement theme and see if the white screen returns. - If you cannot access either the front end or back end, log in via any FTP client. Disable all plugins as described above and delete the theme entirely. This forces WordPress to use the default theme. See if the problem persists. If it does, the issue is probably in your WordPress installation. If it does not, install a fresh copy of the theme via FTP, activate it, and see if the problem reappears.
- You may also have a web server configured with PHP memory limits set too low, which can cause the white screen as well. Check with your web hosting provider and ask them to increase your PHP
memory_limitto at least 64MB. We recommend 128MB.
Other Causes of the White Screen of Death
The following are other possible causes for the white screen condition, because they too can trigger this error:
- Blank space in
functions.php: This is easy to do if you have been modifying the file. A good way to check is to replace it with the unchanged version of the file and see if the site works. - Blank line in
wp-config.php: A blank line at the start of this file can bring on the white screen of death. Check for extra spaces at the end as well. - File Permissions: Make sure all folders are set to 755 and all files to 644. This should not happen, because the server should inherit the permissions of uploaded files. But we have seen cases where unpacking a ZIP archive with cPanel and other tools botched permissions. Setting permissions either too strict or too loose often causes this and other errors.
- Multiple Plugins: When you reactivate all of your plugins except the one you found at fault, that one may not be the only culprit. Sometimes it is a combination of two or more. So you may think the problem is solved when it still exists and could come back later.
Pro Tips to Diagnose the Error
- Check your error logs. A good amount of the time, server logs show exactly which PHP function is causing the issue, and where. The official Debugging in WordPress guide explains how to enable detailed logs.
- Run a PHP validator on the code before saving. It will catch a lot of simple, known mistakes.