Troubleshooting

The WordPress white screen of death: causes and fixes.

A blank page tells you nothing on purpose — error display is off. The first job is not fixing the site, it is making it tell you what is wrong.

The fastest fix

Make the blank page talk

Add these lines to wp-config.php above the “stop editing” comment, reload the page, then read wp-content/debug.log:

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

The last entries name the file and line that failed. Nine times out of ten that identifies the plugin or theme directly. Turn both off again once the site is back.

Diagnosis

What causes a blank page

A white screen means PHP produced no output at all. Something stopped execution before anything reached the browser, and whatever error explained it was written nowhere you can see. The blankness is the symptom of the error being suppressed, not of the error being mysterious.

  • A fatal PHP error with display off — most production hosts disable error display deliberately, which is correct for visitors and unhelpful for you.
  • Memory exhaustion — the script hit its allocated limit mid-render. A leading cause of a genuinely blank page rather than a caught error.
  • An infinite loop or redirect loop — execution never completes.
  • A corrupted .htaccess — malformed rules can produce a blank response rather than an error page.
  • A corrupted cache file — an empty cached page served in place of the real one.
  • Incorrect file permissions — PHP cannot read what it needs and fails silently.

Narrow it before you start changing things

Check three URLs: the home page, a single post, and /wp-admin/. Which of them are blank tells you a great deal. All three blank suggests memory, core files or .htaccess. Front end blank with a working admin points at the theme. One page blank points at whatever is unique to that page.

Fixes

Work through these in order

1. Enable debug logging

Covered above, and it should genuinely be first — everything after this is guesswork by comparison. Write errors to the log rather than the screen:

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

2. Raise the memory limit

If the log shows an allowed memory size message, or if you get no log at all, try:

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

Memory exhaustion is disproportionately common behind blank pages, because the process is killed before it can report anything. If this fixes it, find out what needed that much memory rather than treating the higher limit as the answer.

3. Deactivate all plugins

Over FTP or SFTP, rename wp-content/plugins to plugins-off. If the site returns, rename it back and re-enable plugins one at a time from the admin, checking the site after each. Tedious, reliable, and it always ends with an answer.

4. Rule out the theme

Rename the active theme folder in wp-content/themes so WordPress falls back to a default. If the front end returns while the admin was always fine, this was almost certainly it — and a recent edit to functions.php is the usual specific cause.

5. Regenerate .htaccess

Rename .htaccess in the site root to .htaccess-old and reload. If the site returns, log in and re-save your permalink settings, which writes a clean file. Note that any custom rules in the old file — redirects, security rules — need copying across manually.

6. Clear the cache

If a caching plugin is installed and you cannot reach the admin, delete the contents of its cache directory under wp-content over FTP. A corrupted cache entry can serve a blank page indefinitely while the underlying site is perfectly healthy.

7. Check file permissions and core integrity

Directories are normally 755 and files 644. If a failed update left files unreadable or truncated, re-uploading a fresh copy of WordPress core — everything except wp-content and wp-config.php — replaces anything damaged without touching your content.

Prevention

How to stop it happening again

  • Keep WordPress current. Modern versions catch most fatal errors and show a critical error message with a recovery link instead of a blank page. That alone converts this problem from an FTP session into a click.
  • Know your memory headroom. Sites creep toward their limit as plugins and content accumulate, then fail on an ordinary Tuesday.
  • Never edit theme files in the browser on production.
  • Keep a working .htaccess backed up if you maintain custom rules in it.
At scale

If you manage this across multiple sites

The expensive part of a white screen is never the fix — it is the twenty minutes spent working out what changed. On a site you touch daily you already know. On a client site you last opened in March, you are reconstructing history from file timestamps.

An activity log that records every change, and the ability to reverse any one of them without a restore, turns that reconstruction into a lookup. One-click undo covers the mechanism, and WordPress maintenance covers the checks that catch this before a visitor does.

Questions

White screen of death, answered.

What is the WordPress white screen of death?

It is a completely blank page with no error message, served where your site should be. It happens when PHP stops executing and nothing is output — usually a fatal error with error display switched off, or memory exhaustion. Modern WordPress catches most of these and shows a critical error message instead, so a truly blank screen often means the failure happened very early or error reporting is suppressed.

What is the difference between the white screen and a critical error message?

They are the same class of failure with different handling. Since WordPress 5.2, fatal error protection catches most fatal errors and displays a critical error message, emailing the administrator a recovery link. A blank white screen means that protection did not engage — the error occurred too early, or WP_DEBUG_DISPLAY is off and nothing was output at all.

Why is only part of my site white?

That is useful diagnostic information. If the front end is blank but wp-admin works, suspect the theme or a plugin that only loads on the front end. If the admin is blank but the front end works, suspect an admin-side plugin. If a single page is blank, it is usually a plugin or shortcode used only on that page.

Can a caching plugin cause a white screen?

Yes, in two ways: a corrupted cache file can be served in place of a real page, and a caching plugin conflicting with another plugin can produce a fatal error. Clearing the cache — deleting the cache directory over FTP if you cannot reach the admin — is a quick thing to rule out early.

Stop reconstructing what changed.

Every action logged and reversible, across every site you manage.

Start free