Skip to main content
WordPressWSoDtroubleshootingpluginsthemesPHPWeb DevelopmentHostingWhite Screen of Death

How to Fix WordPress White Screen of Death Step by Step

Facing the WordPress White Screen of Death? As a web developer with 8+ years, I'll show you how to fix WordPress White Screen of Death step by step with

We earn commissions when you shop through the links below.
Shafat Mahmud Khan
13 min read
How to Fix WordPress White Screen of Death Step by Step

There's nothing quite like the heart-stopping moment when you navigate to your WordPress website, only to be greeted by a blank, white screen. No error messages, no content, just… nothing. This dreaded phenomenon, affectionately known as the WordPress White Screen of Death (WSoD), is a common and incredibly frustrating issue for site owners and developers alike. In my eight years of building everything from custom WordPress plugins like OpenWA WhatsApp Gateway to full-scale Laravel ERP systems, I've encountered the WSoD more times than I care to admit. And what I've learned is that while it looks terrifying, it's almost always fixable with a systematic, step-by-step approach.

Many online guides offer theoretical advice, but I'm here to walk you through how to fix WordPress White Screen of Death step by step using the same practical methods I apply in my own work. We'll dive into real scenarios, drawing from my experience managing live WooCommerce sites and complex custom applications. So, take a deep breath; your website isn't gone forever. Let's get it back online.

The WordPress White Screen of Death: What Is It and Why Does It Happen?

The WSoD typically occurs when a critical error prevents WordPress from rendering any output. Instead of displaying an error message (which would be helpful!), PHP simply stops execution, resulting in a blank page. In my experience, the most common culprits are:

  • Plugin Conflicts: This is by far the #1 cause. A newly installed or updated plugin, or a conflict between two existing plugins, can break your site. When I was developing and testing the OpenWA WhatsApp Gateway plugin for sending WooCommerce order notifications, OTP verification, and PDF invoices, I meticulously tested for conflicts, but in the wild, any combination can cause issues.
  • Theme Problems: Similarly, a faulty theme or a bad theme update can trigger the WSoD.
  • PHP Memory Limit Exhaustion: WordPress, themes, and plugins all consume server memory. If they exceed the allocated PHP memory limit, PHP will crash.
  • Corrupted Files: Sometimes, core WordPress files or even your .htaccess file can become corrupted.
  • Server Issues: Less commonly, server-side problems or misconfigurations can lead to a WSoD.

My Step-by-Step Guide to Fixing the WordPress White Screen of Death

When facing a WSoD, panic is your worst enemy. A systematic approach is crucial. Here's the workflow I follow, refined over years of debugging:

Step 1: The Quick Checks - Before You Dive Deep

Clear Your Browser Cache

It sounds simple, but you'd be surprised how often a cached version of your site or an outdated stylesheet can make it *appear* broken. Try accessing your site from an incognito window or a different browser first. If it works there, clear your main browser's cache and cookies.

Check for Server Resource Limits

Sometimes, the WSoD is preceded by or accompanied by a message about exceeding memory limits, although not always. If you have access to your hosting control panel, quickly check if your site is hitting any CPU or RAM limits. Many managed WordPress hosts like Kinsta provide excellent dashboards for this. For smaller sites or those on shared hosting like Hostinger, you might need to check your cPanel metrics.

Step 2: Deactivate All Plugins (The Most Common Culprit)

As I mentioned, plugins are frequently the cause. A newly updated plugin, a conflict between two, or even a poorly coded one can bring your site down. When I developed the OpenWA WhatsApp Gateway, I had to be vigilant about not introducing conflicts, but with thousands of plugins out there, issues are inevitable. This is usually the first real troubleshooting step I take when dealing with the WSoD.

How to Deactivate Plugins via WordPress Admin

If you can still access your WordPress admin dashboard (e.g., yourdomain.com/wp-admin), this is the easiest route:

  1. Log in to your WordPress admin panel.
  2. Go to 'Plugins' > 'Installed Plugins'.
  3. Select all plugins using the checkbox at the top.
  4. From the 'Bulk Actions' dropdown, choose 'Deactivate' and click 'Apply'.
  5. Check your website. If it's back, reactivate your plugins one by one, checking your site after each activation. The moment the WSoD returns, you've found the culprit.

It sounds tedious, but this systematic approach is key. On a client's WooCommerce site running OpenWA, this method quickly identified a conflict with a caching plugin after an update.

How to Deactivate Plugins via FTP/File Manager

More often than not, if you have the WSoD, you can't access your admin area. This means you need to get your hands dirty with FTP or your hosting provider's file manager.

  1. Connect to your website via FTP (using a client like FileZilla) or through your hosting's file manager (e.g., cPanel File Manager).
  2. Navigate to the wp-content directory.
  3. Inside wp-content, you'll find a folder named plugins.
  4. Rename this plugins folder to something like plugins_old or plugins_deactivated.
  5. Now, try to access your website. If it loads, it confirms a plugin was the issue.

When I built my Frontend File Explorer plugin, one of the key features was providing an intuitive way to manage files and folders directly within WordPress, akin to Windows Explorer. This kind of direct file access is exactly what you need in WSoD situations. If your site comes back after renaming the folder, rename it back to plugins. Then, inside the plugins folder, rename individual plugin folders one by one (e.g., my-plugin to my-plugin_old) until you find the problematic plugin. For editing files like wp-config.php or .htaccess, having good tools is critical. I've found that using some of the best VS Code extensions for web developers can make this process much smoother, even when working with remote files via SFTP.

Step 3: Switch to a Default Theme

If deactivating plugins didn't work, your theme might be the problem. A faulty theme, especially after an update or custom modifications, can cause the WSoD.

How to Switch Themes via WordPress Admin

If you can access your admin dashboard:

  1. Go to 'Appearance' > 'Themes'.
  2. Activate a default WordPress theme like 'Twenty Twenty-Three' or 'Twenty Twenty-Two'.
  3. Check your website.

How to Switch Themes via FTP/File Manager

If admin access is denied:

  1. Connect via FTP/File Manager to your website.
  2. Navigate to wp-content/themes.
  3. Rename your currently active theme's folder (e.g., my-custom-theme to my-custom-theme_old).

WordPress will automatically fall back to a default theme (like 'Twenty Twenty-Three') if one exists. If no default theme is present, you might see an error. In that case, you'll need to upload a fresh copy of a default theme to the themes folder.

Step 4: Increase PHP Memory Limit

Often, the WSoD occurs because a script runs out of allocated memory. This is common when running many plugins or a complex theme. My Laravel-based School ERP, for instance, requires a healthy memory allocation to handle complex data processing.

To increase your PHP memory limit, you'll need to edit your wp-config.php file. Access it via FTP/File Manager in the root directory of your WordPress installation.


/**
 * WordPress memory limit
 * Added by Shafat to fix WSoD issues in live environments.
 */
define( 'WP_MEMORY_LIMIT', '256M' );

Add this line above the line that says /* That's all, stop editing! Happy publishing. */. I usually start with '256M', but you can try '128M' or even '512M' if needed. Save the file and check your site. If you're on a shared hosting plan like Hostinger, there might be limits to how much you can increase this. For more control and higher limits, a VPS from DigitalOcean or managed cloud hosting like Kinsta gives you much more flexibility.

Step 5: Enable WordPress Debugging

If the WSoD persists without any error messages, debugging is your best friend. This forces WordPress to display PHP errors, which can pinpoint the exact file and line of code causing the problem.

Edit your wp-config.php file again, finding the line define( 'WP_DEBUG', false );. Change it to:


/**
 * Enable debugging
 * Display and log all errors for troubleshooting WSoD.
 */
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false ); // Set to false to prevent errors from showing on live site

By setting WP_DEBUG_LOG to true, WordPress will create a debug.log file inside your wp-content directory, silently logging all errors. This is crucial for a live site because WP_DEBUG_DISPLAY set to false means errors won't be visible to visitors, but you can check the log file. Check the debug.log file for clues after reloading your site.

Step 6: Check File Permissions

Incorrect file permissions can prevent WordPress from accessing necessary files, leading to a WSoD. This is especially true after a migration or a manual file transfer. From my experience managing servers for projects like the Point of Sale application, correct permissions are non-negotiable for any web application.

Common Permissions to Set:

  • Folders: 755 (rwxr-xr-x)
  • Files: 644 (rw-r--r--)
  • wp-config.php: 640 or 600 for extra security

You can change file permissions via FTP (right-click on files/folders > File permissions) or your hosting's file manager. Be very careful with this step; incorrect permissions can introduce security vulnerabilities.

Step 7: Replace Corrupted Core WordPress Files

Rarely, core WordPress files might become corrupted. If you've tried everything else, replacing these files with fresh copies can help. This is a bit more involved but often effective.

  1. Download a fresh copy of WordPress from wordpress.org that matches your current version.
  2. Unzip the downloaded file.
  3. Connect to your site via FTP/File Manager.
  4. Upload all files and folders from the fresh WordPress download EXCEPT for the wp-content folder and the wp-config.php file. Overwrite existing files.
  5. This ensures your plugins, themes, and configuration remain intact while refreshing the core files.

Step 8: Investigate Your .htaccess File

The .htaccess file, located in your WordPress root directory, handles permalinks and redirects. A misconfiguration here can easily cause a WSoD or a 500 internal server error. When I'm working on full-stack projects, incorrect server configurations are always a headache.

  1. Via FTP/File Manager, rename your .htaccess file to something like .htaccess_old.
  2. Try accessing your site. If it works, the .htaccess file was the problem.
  3. Log into your WordPress admin, go to 'Settings' > 'Permalinks', and simply click 'Save Changes' without making any modifications. This will generate a new, clean .htaccess file.

Step 9: Database Troubleshooting (Less Common for WSoD)

While less common for a pure WSoD, a database connection error or a corrupted database table can also result in a blank screen. My School ERP system relies heavily on database integrity, and I've certainly faced issues there.

  • Check wp-config.php: Double-check your database credentials (DB_NAME, DB_USER, DB_PASSWORD, DB_HOST) in wp-config.php. One incorrect character will break the connection.
  • Repair Database: Add define('WP_ALLOW_REPAIR', true); to your wp-config.php file. Then navigate to yourdomain.com/wp-admin/maint/repair.php in your browser. Follow the instructions to repair your database. Remember to remove the line from wp-config.php once done for security.

Step 10: Check Server Error Logs Directly

If all else fails, it's time to dig into your server's raw error logs. This is where you get the unfiltered truth. For managed hosting like Kinsta, these are usually accessible through their custom dashboard. For self-managed VPS setups on DigitalOcean, you'd typically find them in /var/log/apache2/error.log or /var/log/nginx/error.log, depending on your web server. This direct access is invaluable for diagnosing deeper issues, much like I rely on detailed logging for my custom applications. Sometimes, the WSoD isn't just a WordPress issue; it can stem from broader server environment problems, similar to how a Drupal White Screen of Death can also have server-level roots.

WordPress admin dashboard showing plugins list and settings
From my experience building plugins like OpenWA, a clear and organized admin dashboard is crucial for smooth management and troubleshooting. Sometimes, simply deactivating a conflicting plugin here can solve the WSoD.

Preventing the WordPress White Screen of Death

Fixing the WSoD is one thing; preventing it is another. Over my career, I've developed habits that drastically reduce these unwelcome surprises:

Regular Backups: Your Safety Net

This is non-negotiable. Before any major update or change, always create a full backup. Many quality hosts like Kinsta offer automated daily backups and one-click restore options. For those on more budget-friendly shared hosting like Hostinger, ensure you use a reliable backup plugin.

Use Staging Environments

Never test updates or new features directly on a live site. A staging environment is a clone of your live site where you can safely test changes. Only push changes to live after confirming everything works. This is a critical workflow I use for all client projects and my own, like the OpenWA plugin updates.

Update Cautiously

While keeping WordPress, themes, and plugins updated is vital for security and performance, don't rush into updates. Read release notes, check compatibility, and update one by one, especially plugins. If you're running a WooCommerce store using OpenWA for critical notifications, you certainly don't want a WSoD to disrupt your business.

Choose Reliable Hosting

Your hosting provider plays a huge role in site stability. Managed WordPress hosting from Kinsta (built on Google Cloud) offers excellent performance, security, and support for high-traffic sites. For developers who need full control over server environments for custom apps (like my Laravel ERP), DigitalOcean provides scalable cloud VPS with simple pricing. And for cost-conscious users or smaller projects, Hostinger offers a great balance of features and affordability.

FAQ

Q: How long does it usually take to fix the WSoD?

A: In my experience, if it's a plugin or theme conflict (which is most common), it can be resolved within 10-30 minutes using the deactivation method. Deeper issues like server misconfigurations or database problems can take a few hours or even require hosting support, but often, the debugging log helps shorten the process significantly.

Q: Can I lose data when fixing the WSoD?

A: If you follow a careful, systematic approach like the one outlined, the risk of data loss is very low. The most crucial preventative measure is always having a recent backup. Renaming files or folders simply makes them inactive; it doesn't delete them. Only when you start deleting things without a backup does real risk occur.

Q: What if I don't have FTP access?

A: If you don't have FTP access, contact your hosting provider immediately. They can usually provide you with access credentials or help you troubleshoot directly. Some managed hosts offer file managers within their control panels, which serve the same purpose as FTP. Without file access, troubleshooting the WSoD becomes nearly impossible.

Conclusion

Encountering the WordPress White Screen of Death can be incredibly daunting, but it's a problem with a solution. By systematically working through the steps I've outlined - from checking plugins and themes to increasing memory and enabling debugging - you can identify and resolve the root cause. This isn't just theory; these are the exact troubleshooting steps I've used countless times to save websites, whether it's a simple blog or a complex WooCommerce store relying on my OpenWA plugin for critical communications.

The key takeaway is to approach the problem methodically, remain calm, and leverage the tools available to you. Don't be afraid to dig into your server logs or edit your wp-config.php file; these are standard developer tasks. With patience and persistence, you'll learn exactly how to fix WordPress White Screen of Death step by step and get your site back to serving its purpose. If you found this guide helpful, share it with others who might be facing this frustrating issue!

Need help with your project?

Comments(0)

No comments yet. Be the first to share your thoughts.

Leave a comment

Your email is optional and never shown publicly.

All posts
Shafat Mahmud Khan

Shafat Mahmud Khan

WordPress & full-stack dev with 8+ years. Built OpenWA, File Explorer, ERP systems

GitHub
Recommended Hosting

Launch with Hostinger & Save 20%

Fast, reliable hosting for WordPress, Next.js, and more. Trusted by millions.

Free SSL24/7 Support1-Click WP Install99.9% Uptime
20% OFFexclusive discount
Get 20% Off

Affiliate disclosure: I earn a commission at no extra cost to you.

Related Articles