Why WordPress white screen how to fix happens and how to resolve it: Practical Guide
WordPress white screen of death stopping your site? Learn what causes it and follow practical troubleshooting steps to restore your website safely.

On this page
- What is the WordPress white screen of death
- Common causes of WordPress white screen errors
- Enable WordPress debugging to identify the error
- Deactivate plugins to isolate conflicts
- Switch to a default WordPress theme
- Increase PHP memory limit
- Replace corrupted WordPress core files
- Check server error logs and PHP configuration
TL;DR — Key takeaways
- The WordPress white screen of death occurs when PHP errors prevent rendering but no error message displays, most commonly caused by plugin conflicts, theme issues, or exhausted PHP memory limits.
- Enable WP_DEBUG in wp-config.php to reveal the underlying PHP error causing the blank screen, allowing targeted diagnosis instead of trial-and-error troubleshooting.
- Deactivate all plugins via file system access (rename plugins folder) to isolate plugin conflicts, then reactivate individually to identify the problematic extension.
- Increase PHP memory limits through wp-config.php or hosting settings when memory exhaustion causes the white screen, with 256M being a safe starting point for most WordPress installations.
- Always maintain backups before troubleshooting and test changes on staging environments when available to prevent data loss during recovery procedures.
The WordPress white screen of death is one of the most frustrating issues website owners encounter. Your site displays nothing but a blank white page with no error message, no indication of what went wrong, and no obvious path to recovery. This issue can affect your entire site, only the admin dashboard, or specific pages.
This guide explains what causes the WordPress white screen, why it happens, and walks through systematic troubleshooting steps to restore your site. Each method is ordered by likelihood and safety, allowing you to resolve the issue with minimal risk to your existing content and configuration.
What is the WordPress white screen of death
The WordPress white screen of death (WSOD) is a critical error state where WordPress fails to render any content, presenting visitors with a completely blank white page. Unlike other WordPress errors that display messages like "Error establishing database connection" or specific HTTP status codes, the white screen provides no diagnostic information in the browser.
This blank display occurs when a PHP fatal error prevents WordPress from completing its page rendering process. PHP stops execution at the point of failure, but because WordPress error display is often disabled in production environments, the error message itself never reaches the browser. The result is an abrupt halt that leaves the page empty.
The white screen can manifest in several ways: affecting only the admin dashboard while the front end works normally, showing only on the public site while wp-admin remains accessible, appearing on all pages across the entire site, or occurring only when performing specific actions like updating plugins or publishing posts.
Common causes of WordPress white screen errors
Plugin conflicts are the leading cause of white screen errors. When two plugins use conflicting code, attempt to declare the same function, or when a single plugin contains a fatal bug, PHP execution stops. This is especially common after plugin updates that introduce compatibility issues with your WordPress version or other installed plugins.
Theme problems cause white screens when theme files contain syntax errors, call deprecated WordPress functions, or exceed PHP execution limits during template rendering. Switching themes or updating to a new theme version often triggers these issues if the theme code is not compatible with your PHP version or WordPress core.
PHP memory exhaustion happens when WordPress processes require more memory than your server allows. Complex queries, large media libraries, resource-intensive plugins, or inefficient code can push memory usage beyond the allocated limit, causing PHP to terminate with a fatal error that displays as a white screen.
Corrupted WordPress core files can produce white screens when file uploads fail partially, FTP transfers interrupt, or manual edits damage critical WordPress system files. Even a single corrupted file in wp-includes or wp-admin can prevent WordPress from initializing properly.
- Plugin conflicts or bugs introduced during updates
- Theme syntax errors or incompatible template code
- PHP memory limit exhausted by resource-intensive operations
- Corrupted WordPress core files from incomplete uploads
- PHP version incompatibility with plugins or themes
- Server-level PHP errors or misconfigured php.ini settings
Enable WordPress debugging to identify the error
The first diagnostic step is enabling WordPress debug mode to reveal the underlying PHP error. By default, WordPress suppresses error display in production environments, which is why you see a white screen instead of an error message. Enabling debugging allows you to see exactly what PHP error is causing the failure.
Access your site files via FTP, SFTP, or your hosting file manager. Locate wp-config.php in your WordPress root directory. This file contains your WordPress configuration settings. Create a backup copy of wp-config.php before making any changes so you can restore it if needed.
Find the line that reads define('WP_DEBUG', false); and change it to define('WP_DEBUG', true);. If this line does not exist, add these lines just before the comment that says "That's all, stop editing":
define('WP_DEBUG', true); define('WP_DEBUG_LOG', true); define('WP_DEBUG_DISPLAY', false); define('SCRIPT_DEBUG', true);
This configuration writes errors to wp-content/debug.log instead of displaying them on screen, which is safer for production sites. After saving the file, attempt to load your site again, then check the debug.log file for the specific error message. The error will indicate the exact file and line number where PHP failed, pointing you toward the plugin, theme, or core file causing the issue.
Deactivate plugins to isolate conflicts
When the white screen affects your admin dashboard, you cannot deactivate plugins through the WordPress interface. Instead, use file system access to disable all plugins at once, then reactivate them individually to identify the problematic plugin.
Connect to your site via FTP, SFTP, or file manager and navigate to wp-content/plugins/. Rename the plugins folder to plugins-disabled or plugins-old. This immediately deactivates all plugins because WordPress cannot find them in their expected location. Refresh your site to see if the white screen resolves.
If your site loads normally after renaming the plugins folder, the issue is plugin-related. Rename the folder back to plugins to restore access to your plugin files. Now the plugins are present but all deactivated. If you can access wp-admin at this point, go to the Plugins page and reactivate plugins one at a time, checking your site after each activation.
When you reactivate the plugin that causes the white screen to return, you have identified the culprit. Check if an update is available for that plugin, or search for known issues with that plugin version. If no fix is available, consider finding an alternative plugin with similar functionality or contacting the plugin developer for support.
If the white screen persists even after renaming the plugins folder, the cause is not a plugin conflict. Rename the folder back to plugins and proceed to theme troubleshooting.
Switch to a default WordPress theme
Theme issues can cause white screens when template files contain errors or incompatible code. Testing with a default WordPress theme isolates whether your active theme is responsible. Since you may not have admin access, you need to switch themes via the database or file system.
The safest method is forcing WordPress to use a default theme. Access your database using phpMyAdmin, which is typically available through your hosting control panel. Select your WordPress database from the left sidebar. Look for the table named wp_options (the prefix may differ if you customized it during installation).
In the wp_options table, find the row where option_name is 'template' and another where option_name is 'stylesheet'. These values store your active theme. Change both values to 'twentytwentyfour' (or another default theme you have installed like 'twentytwentythree' or 'twentytwentytwo'). This forces WordPress to load the default theme instead of your custom theme.
After making this change, clear your browser cache and reload your site. If the white screen disappears, your theme is the cause. You can then either update your theme if an update is available, restore from a backup, or contact your theme developer. If you have a child theme, check the child theme files for errors first, as parent theme updates can expose issues in child theme code.
To test theme functionality without database access, rename your active theme's folder in wp-content/themes/ to something like yourtheme-disabled. WordPress will automatically fall back to a default theme when it cannot find your active theme.
Increase PHP memory limit
Memory exhaustion causes white screens when WordPress processes exceed the allocated PHP memory. This commonly happens on shared hosting with low default limits, or when running memory-intensive plugins like page builders, backup tools, or image optimization scripts.
First, add this line to wp-config.php just before the "That's all, stop editing" comment: define('WP_MEMORY_LIMIT', '256M');. This sets WordPress memory to 256MB, which handles most WordPress installations comfortably. Save the file and test your site.
If the white screen persists, your hosting server may enforce a maximum that overrides this setting. In that case, increase the server-level PHP memory limit. Create or edit a php.ini file in your WordPress root directory (the same location as wp-config.php). Add this line: memory_limit = 256M. Some hosts require this file in a different location or use a different name like .user.ini.
Alternatively, try adding this line to a .htaccess file in your WordPress root: php_value memory_limit 256M. This approach works on Apache servers with mod_php. If your server runs PHP via FastCGI or PHP-FPM, this method will not work and may cause a 500 error, so remove the line if issues occur.
After increasing memory limits, check if your site loads. If 256M is insufficient, you can try 512M, but excessively high memory usage often indicates an underlying problem like an inefficient plugin, corrupted database tables, or runaway processes. If you need more than 512M regularly, investigate what is consuming memory rather than continuously increasing limits.
Replace corrupted WordPress core files
Corrupted WordPress core files can cause white screens if critical system files are damaged or incomplete. This happens after failed updates, interrupted FTP uploads, or incorrect manual edits to core files. Re-uploading fresh WordPress files replaces any corrupted components without affecting your content, plugins, or themes.
Download a fresh copy of WordPress from wordpress.org that matches your current version. You can check your WordPress version in wp-includes/version.php if you have file access. Extract the downloaded zip file on your local computer.
Using FTP or SFTP, upload only the wp-admin and wp-includes folders from the fresh WordPress download to your server, overwriting the existing folders. Do not upload wp-content, as this contains your themes, plugins, and media. Also skip wp-config.php since it contains your database credentials and settings.
After uploading, manually replace the root directory files except for wp-config.php and .htaccess. This includes index.php, wp-login.php, and other files in the WordPress root. These file replacements restore corrupted WordPress core code while preserving your configuration and content.
Test your site after uploading. This process is safe because you are only replacing WordPress system files, not your site-specific content. If you are concerned about the process, create a complete backup before starting, including database and all files.
Check server error logs and PHP configuration
Server error logs provide detailed diagnostic information when WordPress debugging does not reveal the cause. Your hosting error logs capture PHP fatal errors, memory exhaustion events, and server-level issues that WordPress cannot log internally.
Access error logs through your hosting control panel. Most hosts provide an "Error Log" or "Logs" section that displays recent PHP errors. cPanel users can find this under Metrics > Errors. Look for entries timestamped around when the white screen appeared. Error messages will include file paths and line numbers that identify the problematic code.
Common server-level causes include PHP version incompatibility where your plugins or theme require a newer PHP version than your server provides, syntax errors in custom code that violate PHP 8 standards if you recently upgraded, and file permission issues that prevent WordPress from reading necessary files.
Check your PHP version in your hosting control panel. WordPress 6.0 and later require PHP 7.4 minimum, with PHP 8.0 or higher recommended. If you are running an older PHP version and recently updated WordPress or plugins, this mismatch could cause white screens. Coordinate PHP version upgrades carefully, as older plugins may not support newer PHP versions.
File permissions should be 644 for files and 755 for directories in WordPress installations. Incorrect permissions set to 777 or overly restrictive settings can cause failures. If you recently moved hosts or restored from backup, verify permissions match the standard WordPress requirements.
Quick troubleshooting checklist
- Create complete backup of files and database before troubleshooting
- Enable WP_DEBUG in wp-config.php and check wp-content/debug.log for error messages
- Rename wp-content/plugins/ folder to deactivate all plugins and test
- Switch to default WordPress theme via database wp_options table or file system
- Increase PHP memory limit to 256M in wp-config.php using WP_MEMORY_LIMIT
- Upload fresh wp-admin and wp-includes folders from matching WordPress version
- Check hosting error logs for PHP fatal errors with file paths and line numbers
- Verify PHP version meets WordPress minimum requirements (7.4 or higher)
- Test after each change to identify which step resolves the issue
- Re-enable plugins individually after white screen resolves to identify conflicts
FAQ
What causes the WordPress white screen of death?
The WordPress white screen of death is caused by PHP fatal errors that stop page rendering, most commonly from plugin conflicts, theme errors, exhausted PHP memory limits, or corrupted WordPress core files. The blank screen appears because WordPress error display is disabled in production environments, preventing the actual error message from reaching your browser.
How do I fix WordPress white screen without admin access?
Fix WordPress white screen without admin access by using FTP or file manager to rename the wp-content/plugins folder, which deactivates all plugins instantly. If this resolves the issue, rename it back and reactivate plugins individually. Alternatively, switch themes via database by changing the 'template' and 'stylesheet' values in the wp_options table to a default theme like 'twentytwentyfour'.
Why does my WordPress admin show a white screen but the front end works?
WordPress admin white screen with functioning front end typically indicates a plugin conflict affecting only admin dashboard functionality, or insufficient PHP memory for admin operations. Admin pages load more plugins and scripts than the front end, often triggering memory limits or plugin conflicts that do not affect public pages. Increase memory limits and deactivate plugins to isolate the cause.
How much memory does WordPress need to prevent white screen errors?
WordPress needs a minimum of 64MB PHP memory, but 256MB is recommended to prevent white screen errors in typical installations with multiple plugins. Sites using page builders, e-commerce plugins, or backup tools should allocate 512MB or more. Set this via define('WP_MEMORY_LIMIT', '256M'); in wp-config.php, though your hosting server limits may require adjustment at the hosting level.
Can I fix WordPress white screen by reinstalling WordPress?
Yes, reinstalling WordPress core files fixes white screens caused by corrupted system files. Download a fresh WordPress copy matching your version, then upload only wp-admin and wp-includes folders via FTP, overwriting existing files. Do not replace wp-content or wp-config.php, as these contain your themes, plugins, media, and database settings. This method preserves all content while replacing potentially corrupted core files.
Related articles
- Hosting OperationsSelf-Hosted App Deployment Fails? Check DNS, SSL, Reverse Proxy, and Logs FirstTroubleshoot failed self-hosted app deployments by checking DNS, SSL, reverse proxy routing, container status, logs, and ports.
- Hosting OperationsSelf-Hosted PaaS on a VPS: What to Check Before Installing Coolify, Dokploy, or CapRoverA hosting support checklist for preparing a VPS before installing self-hosted PaaS tools like Coolify, Dokploy, or CapRover.
- Hosting OperationsLinux Server Security Lessons from the Arch Linux Malware Package IncidentPractical Linux server security checklist for VPS admins after package malware concerns, with safe checks, rollback steps, and support guidance.
- Hosting OperationsAWS Lightsail Hong Kong VPS Latency: Practical Hosting Guide for IndonesiaLearn how to test AWS Lightsail Hong Kong VPS latency, compare regions, migrate safely, and troubleshoot hosting performance.
- Hosting OperationsCloudflare Tomorrow Watchlist: A Practical Hosting Operations GuidePractical Cloudflare troubleshooting checklist for DNS, SSL, caching, WAF, origin health, safe testing, and rollback planning.
- Hosting OperationsNetwork Safety Checklist for AI Agent Skills in Hosting OperationsAudit AI agent skills safely with network checks, secret protection, sandbox testing, rollback steps, and hosting support troubleshooting guidance.