A blank white page (the WordPress white screen of death), or the message "There has been a critical error on this website," means PHP, the programming language WordPress runs on, hit a fatal error and stopped before it could build the page. The cause is usually a plugin or theme, often one that was just updated, and less often a PHP memory limit or a change of PHP version. Your posts, pages and orders are still in the database, so work through the checks and fixes below in order.
In this article
What do the white screen and the critical error message mean?
Both mean some code crashed while your site was loading. Before WordPress 5.2, that usually left a blank page, hence the name "white screen of death." Since 5.2, WordPress catches the crash and shows a message instead, which on current versions reads "There has been a critical error on this website." In the dashboard or on the login page, it adds "Please check your site admin email inbox for instructions."
You can still get a blank or half-drawn page on a current site: if part of the page has already reached the browser when the error happens, WordPress cannot swap in its message.
What should you check first?
Four checks tell you where to start:
- Is it the whole site or part of it? Open your homepage, an inner page and yoursite.com/wp-admin. If the dashboard works, you can do most of the fixes below from it. If only one page fails, look at what is different there, such as a form or the shop.
- Clear caches. Reload the site in a private browser window to rule out your own browser, and clear any caching plugin, host cache or CDN (now if the dashboard works, otherwise after each fix): a cache can keep showing visitors an old version of a page.
- What changed? An update, a new plugin, edits to your theme's files or a move to a new host points to the likely cause. If you know what changed, undo it first.
- Check the admin inbox, spam folder included, for an email titled "Your Site is Experiencing a Technical Issue".
How do you fix the WordPress white screen of death?
Try these in order, most likely first, and check the site after each one.
1. Use the recovery mode link
When a plugin or theme causes a fatal error, WordPress emails the site's administration email address, names the plugin or theme at fault, and includes a recovery mode link. Click it and log in, and WordPress pauses the faulty plugin or theme for you. Deactivate the plugin on the Plugins screen, or switch themes under Appearance > Themes, then click Exit Recovery Mode in the toolbar at the top.
The pause only applies to you, so visitors see the error until you deal with the culprit. The link expires after one day by default, and the email depends on your server being able to send mail. Recovery mode is not available on multisite networks. No email? Go to step 2.
2. Deactivate your plugins
If the dashboard works, go to Plugins, select them all, choose Deactivate from the Bulk actions menu and reload the site. If it loads, reactivate the plugins one at a time, checking the site after each, until the error returns. That plugin is the cause: leave it off, look for an update or contact its developer. Deactivating keeps each plugin's settings.
Without the dashboard, use SFTP or your host's file manager:
- In the wp-content folder, rename the
pluginsfolder toplugins.hold. Every plugin switches off. - Log in and open the Plugins screen, so WordPress records the plugins as deactivated.
- Rename the folder back to
plugins, then reactivate the plugins one at a time as above.
If the email or the error log names one plugin, rename just that plugin's folder instead, for example by adding "-old" to its name.
3. Switch to a default theme
If plugins are not the cause, test your theme. In the dashboard, go to Appearance > Themes and activate a default WordPress theme, such as Twenty Twenty-Five. Without the dashboard, rename your active theme's folder inside wp-content/themes, then log in and open Appearance > Themes. WordPress reports "The active theme is broken. Reverting to the default theme." and switches, as long as a default theme is installed.
If the site now works, the problem is in your theme: check for an update, undo any recent edits to its files, or ask its developer.
4. Turn on debugging to read the actual error
Still stuck? Have WordPress write the error to a log. Open wp-config.php, in your site's main folder (the one that contains wp-admin), through SFTP or your host's file manager. Save a copy first, and use a plain text editor, not a word processor. Replace the line define( 'WP_DEBUG', false ); with these three lines, above the line that says "That's all, stop editing!" (if there is no WP_DEBUG line, simply add them there):
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
They turn on debug mode, save errors to a file, and keep the errors off the page so visitors never see them. If the site gets worse after your edit, put the copy back.
Reload the broken page, then open wp-content/debug.log and look near the end for a line starting "PHP Fatal error". The file path in that line points to the cause: a folder inside wp-content/plugins is a plugin, and one inside wp-content/themes is your theme.
When you are done, set WP_DEBUG back to false and delete debug.log. WordPress's debugging guide advises against debugging on live sites, and the log often sits where anyone could download it.
5. Raise the PHP memory limit, only if the log says so
If the log shows "Allowed memory size of ... bytes exhausted", a task needed more memory than PHP allows. Add define( 'WP_MEMORY_LIMIT', '256M' ); to wp-config.php, above the "stop editing" line. WordPress can only raise the limit as far as your host allows, so if the error stays, ask your host to raise it. A plugin that keeps running out of memory may have a bug: treat the higher limit as breathing room, not the fix.
6. Check the PHP version after a host change
If the error started after a move to a new host, or after your host upgraded PHP, compare PHP versions. Yours is in your hosting control panel, or under Tools > Site Health, on the Info tab. Older plugins and themes can contain code that newer PHP rejects, and the log usually names the file. It works the other way too: each plugin's WordPress.org page lists the PHP version it needs.
The lasting fix is to update or replace that plugin or theme. As a stopgap, ask the host to switch back to the version the site ran before, but not for long: as of October 2026, PHP 8.1 and older no longer get security fixes, and security support for PHP 8.2 ends on December 31, 2026. WordPress 7.0 and later need at least PHP 7.4, and WordPress.org recommends 8.3 or greater.
7. Restore a backup
If nothing above works, restore a backup from before the problem started. A full restore needs both the files and the database, and your host may keep backups too. The site goes back to the day of the backup, so on a store, orders and customer accounts created since then disappear: note them first. Then test the update that caused the trouble on a staging copy before you reapply it, as our guide to WordPress update disasters explains.
When should you stop and get help?
Get help when:
- You cannot reach the site's files, or you would rather not edit wp-config.php.
- The log points to WordPress's own folders (wp-admin or wp-includes) or to wp-config.php itself.
- The error comes back after a restore, or appeared when nothing had changed.
- You see signs of a hack, such as admin users you did not create or a warning that your site is flagged for malware.
- Your store or booking system is losing business while the site is down.
Your host is the first call for server questions such as PHP versions and memory limits. If you need the site fixed quickly, WP Resolve's Emergency Fix is a flat $199 with a 24-hour turnaround, and no plan is needed.
How do you stop it from happening again?
These habits make the next crash quick to fix:
- Keep backups you know how to restore, of both files and database, stored away from the site.
- Update one thing at a time, and test on a staging copy first if the site takes orders, bookings or leads.
- Keep a default theme installed, so WordPress has a theme to fall back to.
- Make sure someone reads the admin email address in Settings > General, where the recovery email goes.
- Use uptime monitoring, so you hear about an outage before a customer does.
WP Resolve's Essential Care plan ($79 a month) includes weekly core, theme and plugin updates with visual checks, daily off-site backups kept 30 days and uptime monitoring. Business Care ($149 a month) also tests updates on a staging copy first.
Not sure how your site would cope with a bad update? Ask for a free site health check covering updates, backups, security and speed, or text (916) 209-0917.
Frequently asked questions
What causes the WordPress white screen of death?
A PHP fatal error, most often in a plugin or theme after an update, and sometimes from running out of PHP memory or a change of PHP version. The error stops WordPress before it can build the page.
What does "There has been a critical error on this website" mean?
It is WordPress's fatal error protection: some code crashed, so WordPress shows this message instead of a blank page. Check the site admin email inbox for a message naming the plugin or theme, with a recovery mode link.
What if the recovery mode email never arrives?
Check the spam folder and the Administration Email Address in Settings > General, because the email goes there and depends on your server being able to send mail. If it still does not come, deactivate your plugins by renaming the plugins folder over SFTP or your host's file manager.
How do I deactivate plugins without access to wp-admin?
Rename the wp-content/plugins folder, for example to plugins.hold, then log in and open the Plugins screen so WordPress deactivates them. Rename the folder back and reactivate the plugins one at a time to find the one that fails.
Where is the WordPress debug log?
With WP_DEBUG and WP_DEBUG_LOG turned on in wp-config.php, WordPress saves errors to wp-content/debug.log. Turn debugging off and delete the file when you are done, because it can often be downloaded by anyone.
Will I lose my content because of the white screen?
No, a fatal error stops pages from loading but does not delete posts, pages or orders, which are stored in the database. Restoring a backup does replace anything added since that backup was made, so note recent orders first.



