How to Fix WordPress White Screen of Death
The WordPress White Screen of Death (WSOD) is one of the most frustrating problems a website owner can encounter. Instead of loading the website or WordPress dashboard, the browser displays a completely blank white page.
In some cases, the entire website is affected. In others, only the WordPress admin area, a particular page, or a specific section stops working.
The good news is that the White Screen of Death usually does not mean that your website data has been permanently lost. It is commonly caused by a PHP error, plugin conflict, theme problem, insufficient memory, or incompatible code.
This guide explains how to identify and fix the WordPress White Screen of Death step by step.
What Is the WordPress White Screen of Death?
The WordPress White Screen of Death occurs when WordPress encounters a critical PHP error but cannot display a normal error message.
Instead of seeing your website, you may see:
- A completely blank white screen
- A partially loaded page
- A blank WordPress admin dashboard
- A message indicating that a critical error has occurred
- A website that works for some users but not others
The problem can occur after installing a plugin, updating WordPress, changing a theme, modifying PHP code, or moving the website to another server.
Common Causes of the WordPress White Screen of Death
Several issues can trigger WSOD, including:
- Plugin conflicts
- Incompatible themes
- PHP errors
- Insufficient PHP memory
- Outdated plugins or themes
- Incompatible PHP versions
- Incorrect custom code
- Corrupted WordPress files
- Failed WordPress updates
- Server configuration problems
- Problems with caching or optimization plugins
The most effective way to troubleshoot the problem is to start with the easiest solutions and gradually move toward more advanced checks.
1. Clear Your Browser and Website Cache
Before making changes to WordPress, determine whether the problem is caused by cached content.
Clear your:
- Browser cache
- WordPress cache
- Server cache
- CDN cache
Then open the website in a private or incognito browser window.
If the website works in an incognito window, the problem may be related to cached content rather than WordPress itself.
2. Check Whether the WordPress Admin Works
Try accessing:
https://example.com/wp-admin/
If the website is blank but the WordPress dashboard works, the problem may be related to your active theme or a plugin used on the frontend.
If both the website and dashboard display a blank screen, investigate plugins, themes, PHP errors, memory limits, and server configuration.
This distinction can significantly reduce troubleshooting time.
3. Enable WordPress Debugging
WordPress includes a built-in debugging system that can help identify PHP errors.
Open the wp-config.php file in your WordPress root directory and locate:
define( 'WP_DEBUG', false );
Change it to:
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
This configuration records errors in a log file without displaying potentially sensitive information to visitors.
The log is generally located at:
/wp-content/debug.log
Open the log and look for errors that occurred immediately before the White Screen of Death appeared.
Important
Do not leave debugging enabled unnecessarily on a production website. Disable it after troubleshooting:
define( 'WP_DEBUG', false );
4. Disable WordPress Plugins
A faulty or incompatible plugin is one of the most common causes of WSOD.
If you can access the WordPress dashboard:
- Go to Plugins → Installed Plugins.
- Deactivate all plugins.
- Reload the website.
- If the website works, reactivate plugins one at a time.
- Test the website after each activation.
When the White Screen of Death returns, the last activated plugin is likely responsible.
What if the WordPress Dashboard Is Inaccessible?
You can disable plugins through your hosting File Manager or FTP.
Navigate to:
/wp-content/
Rename:
plugins
to something such as:
plugins-disabled
WordPress will no longer load the plugins.
If the website starts working, rename the directory back to:
plugins
Then identify the problematic plugin individually.
5. Switch to a Default WordPress Theme
A theme can also cause the White Screen of Death, especially after a theme update or PHP version change.
If you can access the dashboard:
- Go to Appearance → Themes.
- Activate a default WordPress theme.
- Reload the website.
If the website works after switching themes, your previous theme is likely responsible.
If the Dashboard Is Inaccessible
Use File Manager or FTP and open:
/wp-content/themes/
Find the directory of your active theme and rename it.
WordPress may automatically fall back to an available default theme.
If this resolves the problem, investigate your previous theme for:
- PHP compatibility problems
- Custom code errors
- Missing files
- Outdated functions
- Plugin compatibility issues
6. Increase the WordPress PHP Memory Limit
A website can display a blank screen when a PHP process exceeds its available memory.
You can increase the WordPress memory limit by editing wp-config.php.
Add the following before the line that says That's all, stop editing!:
define( 'WP_MEMORY_LIMIT', '256M' );
For the WordPress administration area, you can also use:
define( 'WP_MAX_MEMORY_LIMIT', '512M' );
The actual limit available to WordPress is also affected by your hosting provider’s PHP configuration.
If increasing the WordPress limit does not help, check the server’s PHP memory limit as well.
7. Check the PHP Error Log
Your hosting control panel may provide access to PHP error logs.
Depending on your hosting environment, look for:
- PHP error logs
- Apache error logs
- Nginx error logs
- WordPress
debug.log
Look for errors such as:
Fatal error
Allowed memory size exhausted
Call to undefined function
Call to undefined method
Cannot redeclare function
Parse error
Uncaught Error
These messages often identify the exact plugin, theme, or PHP file causing the problem.
8. Check Your PHP Version
An incompatible PHP version can cause a WordPress website to stop working.
For example, an old plugin may rely on PHP functionality that is no longer supported by the PHP version configured on your server.
Check the PHP version through your hosting control panel.
If the White Screen of Death appeared immediately after changing PHP versions, temporarily switch back to the previous compatible version and test the website.
However, do not permanently use an outdated PHP version just to keep an old plugin or theme working. Update the software causing the compatibility problem instead.
9. Update WordPress, Plugins, and Themes
Outdated software can contain compatibility problems that lead to fatal errors.
Once you regain access to the dashboard, update:
- WordPress core
- Plugins
- Themes
- PHP-compatible extensions
Before performing major updates, create a complete backup.
If the problem appeared immediately after an update, identify what changed and consider restoring the affected component from a backup while you investigate compatibility.
10. Increase PHP Execution Limits
Some websites require more server resources to complete PHP operations.
Depending on your hosting environment, you may need to review:
memory_limit
max_execution_time
max_input_time
max_input_vars
For example, your hosting configuration might use values such as:
memory_limit = 256M
max_execution_time = 120
The appropriate values depend on your website and hosting environment.
If you do not have permission to modify these settings, ask your hosting provider to review the PHP configuration.
11. Check for Syntax Errors in Custom Code
If you recently added PHP code to:
functions.php
or another WordPress file, a syntax error can cause a fatal error.
Common mistakes include:
- Missing semicolons
- Missing brackets
- Incorrect function names
- Invalid PHP syntax
- Copying incompatible code
- Duplicate function declarations
If the White Screen of Death appeared immediately after adding custom code, temporarily remove or revert that code.
Always keep a backup before editing PHP files.
12. Check the functions.php File
The active theme’s functions.php file is particularly important because WordPress loads it when the theme is initialized.
If the file contains invalid PHP code, the website may stop loading.
You can test this by switching to a default theme.
If the site works with the default theme, inspect the original theme’s functions.php for recent changes.
13. Replace Corrupted WordPress Core Files
Sometimes WordPress core files become damaged during an incomplete update or server problem.
If you suspect corrupted core files:
- Download a fresh copy of the same WordPress version.
- Extract the files locally.
- Upload the fresh
wp-admindirectory. - Upload the fresh
wp-includesdirectory. - Replace WordPress root files as appropriate.
Do not overwrite:
wp-content/
or your existing:
wp-config.php
without understanding what you are replacing.
The wp-content directory contains your themes, plugins, uploads, and other site content.
14. Check the .htaccess File
A damaged .htaccess file can cause website errors and unexpected behavior.
If your server uses Apache, temporarily rename:
.htaccess
to:
.htaccess-backup
Then test the website.
If WordPress loads again, log in to the dashboard and go to:
Settings → Permalinks
Click Save Changes to generate fresh rewrite rules.
Always keep a backup of the original .htaccess file because it may contain custom rules.
15. Disable Caching and Optimization Features
Caching and optimization plugins can sometimes introduce problems after configuration changes or updates.
Temporarily disable features such as:
- JavaScript optimization
- CSS minification
- HTML optimization
- Object caching
- Database optimization
- Aggressive page caching
Clear all caches afterward and test the website again.
If the site works, re-enable optimization features one by one to identify the problematic setting.
16. Check the Database
Although database problems are not the most common cause of WSOD, database corruption or failed queries can cause serious WordPress errors.
Look for database-related messages in the PHP or WordPress error logs.
Common database errors include:
Error establishing a database connection
Table doesn't exist
Unknown column
Database query errors
Do not repair or modify database tables blindly. Create a backup first and investigate the specific error.
17. Disable WordPress Automatic Updates Temporarily
If the White Screen of Death started immediately after an automatic update, determine which component was updated.
Check:
- WordPress core
- Plugins
- Themes
- PHP version
Once the problematic component has been identified, restore a compatible version or update it to a fixed release.
Automatic updates should not generally be disabled permanently without a maintenance strategy.
18. Use Recovery Mode
Modern WordPress versions can provide Recovery Mode when a fatal PHP error is detected.
If WordPress identifies a fatal error, it may send an administrator an email containing a special recovery link.
Using that link can allow you to access the dashboard while the faulty plugin or theme is isolated.
Once inside the dashboard, deactivate or fix the component identified by WordPress.
If you do not receive a recovery email, check your site’s administrator email configuration and your server mail delivery.
19. Check Server Resources
A hosting account that reaches its resource limits can cause websites to fail unexpectedly.
Check your hosting control panel for:
- CPU usage
- RAM usage
- PHP workers
- Entry processes
- Disk space
- Inode usage
- Process limits
If your hosting account repeatedly reaches its limits, increasing PHP memory alone may not solve the underlying problem.
You may need to optimize the website or move to a hosting plan with additional resources.
20. Restore a Recent Backup
If the White Screen of Death appeared after a major change and you cannot identify the cause, restoring a known-good backup may be the fastest recovery option.
Before restoring:
- Preserve the current website if possible.
- Identify the backup date.
- Confirm that the backup contains both files and database.
- Restore to a staging environment when possible.
- Test the website.
- Determine what caused the original failure before repeating the change.
Avoid repeatedly restoring backups without investigating the underlying problem.
How to Find the Exact Cause
A systematic troubleshooting process is usually faster than randomly changing settings.
Use this order:
1. Check whether wp-admin works
2. Clear caches
3. Enable WordPress logging
4. Check debug.log
5. Disable plugins
6. Switch the theme
7. Check PHP version
8. Check PHP memory and server limits
9. Review recent code changes
10. Check .htaccess
11. Inspect server logs
12. Restore from backup if necessary
The error log is particularly valuable because it can reveal the exact file and line responsible for the failure.
For example:
/wp-content/plugins/example-plugin/includes/file.php
indicates that the problem may be associated with that plugin.
A message containing:
Allowed memory size exhausted
points toward a memory limitation.
A:
Parse error
usually indicates invalid PHP syntax.
How to Prevent the WordPress White Screen of Death
You can reduce the likelihood of WSOD by following a few maintenance practices:
- Keep WordPress updated.
- Use actively maintained plugins and themes.
- Remove abandoned plugins.
- Test major updates on staging first.
- Maintain regular backups.
- Monitor PHP error logs.
- Use a supported PHP version.
- Avoid copying unverified PHP code into WordPress.
- Keep adequate server resources available.
- Avoid installing multiple plugins that perform the same function.
- Use staging environments for significant changes.
Quick WSOD Troubleshooting Checklist
☐ Check whether wp-admin is accessible
☐ Clear website and browser caches
☐ Enable WP_DEBUG_LOG
☐ Check wp-content/debug.log
☐ Disable all plugins
☐ Switch to a default theme
☐ Check PHP version
☐ Increase PHP/WordPress memory if appropriate
☐ Review PHP and server error logs
☐ Check recent custom code
☐ Check .htaccess
☐ Check hosting resource limits
☐ Replace corrupted WordPress core files if necessary
☐ Restore a known-good backup as a last resort
Conclusion
The WordPress White Screen of Death is usually caused by a fatal PHP error, plugin or theme conflict, insufficient resources, incompatible PHP version, or damaged WordPress files.
Start by checking the error logs instead of making multiple changes at once. Disabling plugins, switching to a default theme, checking PHP compatibility, and reviewing debug.log can often identify the problem quickly.
Once the website is restored, determine what caused the failure and address the underlying issue. Keeping reliable backups, using compatible software, and testing major changes on a staging website can greatly reduce the risk of future WordPress outages.