Type something to search...
How Do I Fix the WordPress White Screen of Death?

How Do I Fix the WordPress White Screen of Death?

You type in your domain, hit enter, and instead of your homepage you get... nothing. No error message, no broken layout, just a blank white page staring back at you. This is the infamous WordPress White Screen of Death (WSOD), and it's one of the most unsettling errors you can run into as a site owner, mostly because it gives you zero clues about what actually went wrong.

The good news is that the White Screen of Death is almost always caused by a handful of well-known culprits: a fatal PHP error, an exhausted memory limit, or a plugin or theme that has broken compatibility with your WordPress core files. In this guide, you'll learn exactly why the white screen happens and walk through a systematic, step-by-step process to fix it, starting with the fastest and safest fixes first.

What Is the White Screen of Death in WordPress?

The White Screen of Death is what you see when PHP encounters a fatal error while trying to render your site, but your server is configured to hide the error message from visitors instead of displaying it. The result is a completely blank white page on the front end, the admin dashboard, or both.

Unlike the "Internal Server Error" or a "Database Connection Error," the WSOD doesn't come with a helpful label. That's exactly why the first step in fixing it is always the same: make the hidden error visible again.

What Causes the White Screen of Death?

Before jumping into fixes, it helps to understand what's actually happening behind that blank page. The most common causes are:

  • A plugin conflict or a bad plugin update that introduces a fatal PHP error.
  • A theme error, often in functions.php, especially after a manual edit or a theme update.
  • PHP memory exhaustion, where your site runs out of the memory allotted to it.
  • A corrupted WordPress core file, usually from an interrupted update.
  • Incompatible PHP version, where a plugin or theme uses functions that your server's PHP version no longer supports (or doesn't support yet).

Because the white screen looks identical no matter which of these causes it, you need to work through them methodically rather than guessing.

Before You Start: Back Up Your Site

Even though your site is already broken, don't skip this step. Back up your database and files now, before making any changes, so you have something to roll back to if a fix makes things worse. Most hosting control panels (cPanel, Plesk, or your host's custom dashboard) offer a one-click backup option, and if you have a backup plugin like UpdraftPlus installed, you can usually still trigger a manual backup via FTP by keeping its files in place.

Step 1: Turn On WordPress Debugging to See the Real Error

The white screen hides the actual PHP error from you, but you can switch that off. Connect to your site via FTP, SFTP, or your hosting file manager, and open wp-config.php in the root of your WordPress installation.

Find this line:

/* That's all, stop editing! Happy publishing. */

And add the following just above it:

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );

Here's what each line does:

  • WP_DEBUG turns on WordPress's debugging mode.
  • WP_DEBUG_LOG writes all errors, warnings, and notices to a file at wp-content/debug.log.
  • WP_DEBUG_DISPLAY is set to false so errors are logged quietly instead of being printed on the live site for every visitor to see.

Reload your site, then open wp-content/debug.log in a text editor or FTP client. Look for the most recent PHP Fatal error entry — it will usually name the exact file and line number responsible, for example:

PHP Fatal error:  Uncaught Error: Call to undefined function some_removed_function() in /wp-content/plugins/example-plugin/example-plugin.php:42

That single line tells you exactly which plugin or theme file to investigate first, which turns the rest of this process from guesswork into a targeted fix.

Step 2: Access Your Site via FTP or File Manager

Because the WSOD can lock you out of wp-admin as well as the front end, you'll need file-level access to your server to apply most of these fixes. Use an FTP client (like FileZilla) with the credentials from your hosting provider, or use the File Manager built into your host's control panel. Everything below assumes you have this kind of access.

Step 3: Deactivate All Plugins

Plugin conflicts are the single most common cause of the White Screen of Death, so this is usually the fastest way to confirm (or rule out) the culprit.

Navigate to wp-content/plugins and rename the folder to something like plugins-disabled:

mv wp-content/plugins wp-content/plugins-disabled

WordPress will now treat all plugins as missing and deactivate them automatically. Reload your site. If it comes back, you've confirmed a plugin is the problem.

If you have SSH access and WP-CLI installed, this is even cleaner because it deactivates plugins properly instead of just hiding the folder:

wp plugin deactivate --all

Once your site is back up, find the specific plugin at fault by reactivating them one at a time, checking the site after each one:

wp plugin activate plugin-name

The plugin that brings back the white screen is your culprit. Update it, replace it with an alternative, or contact its developer, then keep it deactivated until you have a fix.

Step 4: Switch to a Default Theme

If deactivating plugins didn't fix anything, the problem is likely in your active theme. Rename your current theme's folder via FTP:

mv wp-content/themes/your-theme wp-content/themes/your-theme-disabled

WordPress will automatically fall back to a default theme if one is installed (like Twenty Twenty-Four). If you don't have a default theme available, upload one via FTP first.

With WP-CLI, switching themes is a single command:

wp theme activate twentytwentyfour

If the site loads normally on the default theme, the issue is in your theme's code, most often in functions.php. Compare your theme's functions.php against a backup or a fresh copy from the theme developer to spot the problematic change.

Step 5: Increase Your PHP Memory Limit

If your debug log shows an error like Allowed memory size of X bytes exhausted, your site simply doesn't have enough memory to finish loading. You can raise the limit in a few different places, depending on your hosting setup.

In wp-config.php, add this above the "stop editing" line:

define( 'WP_MEMORY_LIMIT', '256M' );

In .htaccess, if your host supports it:

php_value memory_limit 256M

In php.ini, if you have access to it:

memory_limit = 256M

After making this change, refresh your site. If the white screen was caused by memory exhaustion, it should resolve immediately.

Step 6: Check for a Fatal Syntax Error in Your Code

If you (or a developer) recently edited functions.php or a plugin file directly, a small typo, like a missing semicolon or an unclosed bracket, can cause a fatal error that produces the exact same blank white page.

You can check a file for syntax errors without loading WordPress at all, using PHP's built-in linter:

php -l wp-content/themes/your-theme/functions.php

A clean file returns:

No syntax errors detected in wp-content/themes/your-theme/functions.php

If there's a syntax error, PHP will tell you the exact line number. Fix it directly via FTP, or restore the file from a backup if you have one.

Step 7: Restore From a Backup

If none of the steps above bring your site back, and you have a recent backup, restoring it is often faster than continuing to hunt for the exact cause. Most managed WordPress hosts (like Kinsta, SiteGround, or WP Engine) keep automatic daily backups you can roll back to from your hosting dashboard. If you're using a backup plugin, its restore process usually runs from a standalone page even while the rest of the site is down.

Step 8: Clear Every Layer of Cache

Occasionally, you'll fix the underlying issue but still see a white screen because an old, broken version of the page is being served from cache. Clear caches in this order:

  • Any caching plugin (WP Super Cache, W3 Total Cache, WP Rocket, etc.) via wp cache flush if using WP-CLI, or its settings page.
  • Your host's server-level cache, if it offers one (common on managed WordPress hosts).
  • Any CDN in front of your site, such as Cloudflare.
  • Your own browser cache, using a hard refresh (Ctrl/Cmd + Shift + R).

Diagnosing Faster With WP-CLI

If you manage WordPress sites regularly, WP-CLI is worth having installed on your server because it lets you inspect and fix a broken site without ever touching wp-admin. A few commands worth knowing:

# See which plugins are active before you start disabling anything
wp plugin list --status=active

# See the current active theme
wp theme list --status=active

# Tail the debug log live while you reproduce the issue
tail -f wp-content/debug.log

# Verify WordPress core files against the official checksums
wp core verify-checksums

That last command is particularly useful after a failed or interrupted update, since it will flag any core file that doesn't match what WordPress officially shipped, pointing you straight at corrupted files.

How to Prevent the White Screen of Death in the Future

Once your site is back up, a few habits will make this far less likely to happen again:

Use a staging site for updates. Test plugin, theme, and core updates on a staging copy before applying them to your live site.

Update one thing at a time. If you update five plugins simultaneously and something breaks, you have no idea which one caused it. Update individually, especially for anything mission-critical.

Keep automated backups running. A recent backup turns a stressful outage into a five-minute fix.

Stick to well-maintained plugins and themes. Check a plugin's "last updated" date and support forum before installing it, and be cautious with anything that hasn't been updated in over a year.

Monitor your debug.log periodically. Catching PHP warnings and deprecation notices before they become fatal errors saves you from ever seeing the white screen at all.

Frequently Asked Questions (FAQ) About the WordPress White Screen of Death

By default, production servers hide PHP errors from visitors for security reasons, since error messages can reveal server paths and configuration details. When a fatal error occurs, WordPress simply outputs nothing instead of the requested page. Enabling WP_DEBUG_LOG in wp-config.php lets you see the hidden error without exposing it publicly.

Follow the same troubleshooting steps: rename the plugins folder via FTP to deactivate all plugins, and if that doesn't work, switch to a default theme. Since both the front end and dashboard share the same PHP codebase, whatever is causing the fatal error affects both.

They're related but not identical. A 500 error is a generic HTTP status code your server returns for a range of server-side failures, and it usually comes with some kind of error page. The White Screen of Death specifically refers to a blank page with no status message at all, most often caused by an unhandled PHP fatal error.

Check wp-content/debug.log after enabling WP_DEBUG_LOG. A memory issue will show an error containing the phrase "Allowed memory size of X bytes exhausted." If you see that, increase WP_MEMORY_LIMIT in wp-config.php.

Most hosting providers include a File Manager in their control panel (cPanel, Plesk, or a custom dashboard) that works as a browser-based alternative to FTP. You can rename folders and edit wp-config.php from there just as you would over FTP.

Yes, most commonly when the update is interrupted partway through, leaving some core files updated and others outdated or missing. Running wp core verify-checksums (or re-uploading a fresh copy of WordPress core files, excluding wp-content) will detect and let you repair this.

If it's a plugin conflict or memory limit issue, most sites are back up within 10-15 minutes of starting the debugging steps above. Theme-related issues or corrupted core files can take longer, especially if you need to restore from a backup.

Conclusion

The White Screen of Death is alarming mostly because it's silent, but the fix is rarely complicated once you know where to look. Turn on debug logging first so you're working from an actual error message instead of a guess, then work through plugins, themes, and memory limits in order, since together they account for the vast majority of white-screen cases. With WP_DEBUG_LOG enabled and a recent backup on hand, you'll be able to diagnose and resolve this error in minutes instead of hours, and the habits above will help keep it from happening again.

Here are a few additional resources if you want to go deeper on any of the steps above:

Tags :
Share :

Related Posts

Effortlessly Crafting Compelling WordPress Pages

Effortlessly Crafting Compelling WordPress Pages

As a website owner or content creator, having the ability to seamlessly add new pages to your WordPress site is crucial. Whether you're introducing a

Continue Reading
High Traffic Tips for WordPress Mastery 🚥

High Traffic Tips for WordPress Mastery 🚥

In our digital age, where online visibility is paramount, ensuring your WordPress site can handle surging traffic is crucial. Just like a finely-tune

Continue Reading
How to add a contact form to the WordPress website?

How to add a contact form to the WordPress website?

In today's digital age, having a robust online presence is crucial for businesses and individuals alike. Your WordPress website serves as a virtual s

Continue Reading