WordPress
How to fix the WordPress white screen of death (step by step)

Short answer
The WordPress white screen of death is when your site, or your admin dashboard, loads to a blank white page with no error message. It’s almost always a fatal error in a plugin, a theme or the PHP configuration, and it’s usually fixable in 10 to 15 minutes.
It looks alarming mainly because it gives you nothing to go on. Work through it in order: back up first, turn on debugging, then eliminate plugins, theme and PHP settings one at a time until you find the source.
Why the WordPress white screen of death happens
There’s no single cause, but in practice the list of usual suspects is short:
- A plugin that was just updated or installed, and doesn’t get along with your WordPress version or your PHP version
- A syntax error in the theme’s
functions.phpfile - A PHP memory limit that’s lower than what the site actually needs
- A corrupted or misconfigured
.htaccessfile - A sudden PHP version change on the server, or a resource/timeout limit being hit
What these all have in common is that something that was working stops working. Running into this on a brand-new, never-touched install is rare — it almost always follows an update, a new plugin, or a hosting change. Which is why the first question is always “what changed most recently?”
Back up before you touch anything
Panicking and deleting files at random when you hit a white screen tends to make things worse, not better. Before changing anything, use your file manager or FTP client to copy the wp-content folder and, if you can, the database. This step means that if you make the wrong call while fixing the WordPress white screen of death, you can always undo it — even if your host runs automatic backups, taking your own copy of the current state costs a few minutes and removes the risk entirely.
Turn on debug mode (WP_DEBUG)
The most frustrating part of a white screen is that WordPress normally won’t tell you which file or line caused it. Open wp-config.php with FTP or your host’s file manager and add the following lines (or flip existing false values to true):
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
Keeping WP_DEBUG_DISPLAY set to false is deliberate — otherwise the raw error message becomes visible to every visitor while your site is live. WP_DEBUG_LOG instead writes the error straight to wp-content/debug.log.
Read the actual error in debug.log
Open that file and you’ll typically find a line starting with “Fatal error” that names exactly which plugin or theme file is at fault. If you see something like wp-content/plugins/example-plugin/example-file.php, the source is now obvious, and you can skip straight to disabling that one plugin instead of working through every step below.
Disable plugins one at a time
If debug.log doesn’t point clearly at anything, the reliable, low-tech method is to test plugins individually. Using FTP or a file manager, go to wp-content/plugins and temporarily rename the folder (to something like plugins-old). WordPress can’t find the folder, treats every plugin as deactivated, and the site usually comes back — confirming that a plugin is the cause.
Rename the folder back, then reactivate plugins one by one from the dashboard, checking the site after each one. Once the white screen reappears, you’ve found the plugin responsible: update it, look for an alternative, or contact the developer.
Switch to a default theme and test
If plugins check out clean, the theme is next. If you don’t already have a current WordPress default theme (something like Twenty Twenty-Four) in wp-content/themes, download and install one, then temporarily add this line to wp-config.php:
define( 'WP_DEFAULT_THEME', 'twentytwentyfour' );
If the site comes back, the problem sits in your active theme — most likely a functions.php file broken by an update, or a theme add-on that’s no longer compatible. Ask your theme’s developer for a current version, or manually roll back the change.
Check your PHP memory limit
Sometimes the WordPress white screen of death has nothing to do with a plugin or theme bug — PHP simply can’t allocate as much memory as the site needs. You can raise the limit by adding this to wp-config.php:
define( 'WP_MEMORY_LIMIT', '256M' );
On shared hosting this can run into a server-wide PHP limit that overrides it; if that happens, you’ll need to raise the PHP memory value from your host’s control panel, or ask their support team to do it for you.
Regenerate your .htaccess file
A corrupted .htaccess file is another common cause of the WordPress white screen of death. Back up the existing file and delete it, then open Settings → Permalinks in the WordPress dashboard and click “Save Changes” without changing anything — WordPress will regenerate a standard .htaccess file for you. This fix is especially effective after a server migration or a manual edit to the file.
Get your PHP version right
An older plugin or theme can fall out of step with a newer PHP version your host has rolled out — and the reverse also happens, where an outdated PHP version can’t run a current plugin. Check the PHP version in your hosting panel and confirm it falls within the range the current WordPress version supports. If you suspect a version mismatch, temporarily switching back to the previous PHP version is a fast way to confirm the cause.
When to contact your host
If none of the steps above resolve it, the issue is probably server-side: a resource quota being exceeded, a corrupted system file, or a server configuration problem. At that point, contacting your hosting provider’s support team — and clearly describing what you’ve already tried and what debug.log showed — gets it resolved faster. Their access to server-level error logs can surface things your own file manager simply can’t show you.
Avoiding it next time
The WordPress white screen of death is largely a preventable problem. Testing plugin and theme updates on a staging environment first, keeping a regular and accessible backup routine, removing plugins you no longer use, and staying within a supported PHP version range all meaningfully cut your odds of hitting it again. Our guide to WordPress SEO, security and speed covers this in a broader maintenance context, including how to set up an update and backup rhythm.
For an up-to-date, official reference on WP_DEBUG and related constants, WordPress’s own Advanced Administration Handbook — Debugging in WordPress is worth bookmarking.
Other common WordPress errors and how to fix them
The white screen is only one of the errors a WordPress site can produce. The table below lists the most common ones and the first thing worth checking.
| Error | Typical cause | First check |
|---|---|---|
500 Internal Server Error |
Corrupted .htaccess, PHP memory limit or a plugin conflict |
debug.log and the server error log; temporarily rename .htaccess |
Error establishing a database connection |
Changed database credentials or an unresponsive database server | The values in wp-config.php and the database status in your hosting panel |
Allowed memory size ... exhausted |
A PHP memory limit that is too low | The WP_MEMORY_LIMIT value and the PHP limit in your hosting panel |
403 Forbidden |
File permissions or a security rule | Permissions on wp-content and plugins, and your security plugin’s rules |
404 (a page that used to exist) |
Permalink settings or a corrupted .htaccess |
Re-save the permalink settings and check the rules file |
| White screen after an update | A plugin or theme incompatible with the new version | Rename the plugins folder to deactivate everything at once |
Briefly unavailable for scheduled maintenance |
A .maintenance file left behind by an unfinished update |
Delete the .maintenance file in the root directory |
Most of these errors come from the same three sources: plugin or theme incompatibility, PHP version and limits, and file or database access. Rather than trying fixes one by one, first establish which layer you are stuck at: if there is no trace in the server log the problem is most likely in PHP; if there is a trace, look at the file or database layer.
Next step
Worked through in the right order, the WordPress white screen of death is usually something you can fix yourself with careful file changes — but when the cause sits on the server side, or it keeps recurring, bringing in professional help is the safer choice for both your time and your data. If you’re weighing up ongoing technical maintenance for a WordPress site, hardening it against critical errors, or moving it to sturdier architecture, our group company Web Tasarım Ofisi supports WordPress builds and technical troubleshooting. If the cause turns out to be server-side, our guides to SSH and essential Linux commands and DevOps cover the log, disk and deployment checks that point to it.
To talk through your site’s technical setup or a custom software need, take a look at our custom software service or get in touch with Argo Ajans.
Frequently asked questions
How long does it take to fix the WordPress white screen of death?
In most cases, once debug mode is on and the source (a plugin, theme or PHP setting) is identified, it's fixed within 10 to 15 minutes. If the cause is server-side, you may need your host's support team.
Does the WordPress white screen of death cause data loss?
No, it generally doesn't — the issue is a fatal error that stops code from executing, not data being deleted. Still, backing up before touching any files means a wrong move is always reversible.
How do I enable WP_DEBUG?
Add the WP_DEBUG, WP_DEBUG_LOG and WP_DEBUG_DISPLAY constants to wp-config.php. Keeping WP_DEBUG_DISPLAY set to false stops the raw error message from being shown to visitors on a live site.
How do I find out which plugin is causing the problem?
Temporarily rename the wp-content/plugins folder to deactivate every plugin at once, then reactivate them one by one from the dashboard, checking the site after each one.
What should I do if I can't fix it myself?
Share the exact error from debug.log and the steps you've already tried with your hosting provider's technical support team — if the cause is server-side, that information speeds up the fix.
How do I fix a 500 error in WordPress?
Start with `debug.log` and the server error log. If there is no trace, temporarily rename `.htaccess` to rule out a bad rule, then deactivate plugins one at a time to isolate the conflict.