Skip to content

← All posts

30 July 20265 minWordPress / Rescue / Troubleshooting

WordPress white screen of death: how to fix it, step by step

A blank white page means a fatal PHP error with the message switched off. Here is the diagnosis order that finds it — least invasive first.

The white screen of death looks like the site has vanished. It has not. A blank white page almost always means PHP hit a fatal error and WordPress is configured — sensibly, for visitors — not to print the details. The site is still there; something in it is crashing before anything can render. The job is to find out what, and the order below goes from least invasive to most, because most cases resolve in the first three steps.

Before anything: take a copy

Download a backup of the files and the database before changing a single thing — even in its broken state. A rescue that makes things worse with no way back is not a rescue. If your host offers one-click backups, take one now; if not, copy wp-config.php, .htaccess and the wp-content folder at minimum.

Step one: does the admin still load?

Try yourdomain.com/wp-admin. If the admin loads while the front of the site is white, the fault is almost certainly in the theme or a front-end plugin, and you can work from the dashboard. If the admin is white too, the fault is more central and you will be working over FTP or the host’s file manager. Either way, the answer narrows immediately.

Step two: make the error visible

Edit wp-config.php and enable debugging — set WP_DEBUG and WP_DEBUG_LOG to true. Reload the white page, then read wp-content/debug.log. In a large share of cases the log simply names the failing file, and the file’s path names the plugin or theme responsible. That single line often turns an afternoon of guessing into a two-minute fix.

Step three: disable plugins — by halves, not one by one

If the log points at a plugin, or you cannot get a log, rename the wp-content/plugins folder over FTP and reload. Site back? A plugin is the culprit. Restore the folder name, then rename half the individual plugin folders at a time — if the site loads, the fault is in the renamed half; keep halving until one folder remains. This finds the offender in a handful of steps instead of twenty. Check wp-content/mu-plugins too; must-use plugins load silently and never appear in the plugins list.

Step four: switch to a default theme

If plugins are clean, the theme is next — especially if someone recently edited functions.php or ran a theme update. Over FTP, rename the active theme’s folder and WordPress will fall back to a default theme. If the site comes back, the fault is in the theme, and the debug log from step two will usually say exactly where.

Step five: memory and core

  • Raise the PHP memory limit in wp-config.php — exhausted memory is a classic silent white screen on heavier sites.
  • If a failed update corrupted core files, upload a fresh copy of WordPress core — deleting its wp-content folder and wp-config.php from the fresh copy first, so nothing of yours is overwritten.
  • Check with your host whether the PHP version changed recently; old plugin code on a new PHP version is a recurring cause.

Why did it happen out of nowhere?

The most unsettling version is the white screen with no obvious trigger — nobody touched the site. But something moved: WordPress and many plugins auto-update themselves; hosts bump PHP versions quietly; a premium plugin’s licence expires and its behaviour changes. This is why the diagnosis starts with what changed, and why the debug log matters — it names the file that failed regardless of who or what updated it.

Stopping it happening again

  • Update on a schedule you control, not never and not blindly — and read the site after each round.
  • Keep a staging copy so updates land somewhere safe before production.
  • Take backups that someone has actually test-restored; an untested backup is a hope, not a plan.
  • Delete inactive plugins and themes entirely — dormant code still runs on update hooks and still breaks.
  • When the host emails about a PHP upgrade, treat it as a diary date, not spam.

If it is still white

A white screen that survives all of the above is rare and usually means database corruption, a compromised install, or a hosting-level fault — each a bigger job with its own discipline. That tier of rescue is exactly what the recovery tooling on this site was built for, up to and including rebuilding a production site from nothing but its backup archive.

The white screen is not the site gone — it is the site refusing to say what hurts. Make it say.

Print the diagnosis checklistThis order of operations as one printable page, for when the site is down and reading is hard.The wider rescue playbookTriage, repair-or-rebuild, and what prevention actually costs.White screen right now?Tell me what changed last — update, migration, new plugin — and I will point you at the likely cause.

Got something like this to build? Let's talk.

Start a project ↗