Skip to content
July 11, 2026·11 min read·updated October 03, 2026

Why is my website loading a blank white page?

A blank white page usually means a plugin, theme, PHP or script error stopped your site. Your content is almost always safe. Here's how to find the cause.

Don't want to fix it yourself? Let us take a look. Tell us what you see. Within 24 hours we tell you what's broken, whether we can fix it and what it costs.

Ask for a diagnosis on WhatsApp

A blank white page almost always means your website's code crashed before the page could be built. On WordPress the usual culprit is a plugin, a theme, a PHP version change or a memory limit; on sites built with JavaScript, it is usually a script that failed to load or run. Your content is almost never lost: first check whether the page is blank only for you, then read the error log to find the exact cause.

You open your site and, instead of your homepage, you get a completely blank white page. No text, no error, nothing. It's unnerving, especially if your site brings in customers or sales. The good news: this "white screen of death" (WSOD) doesn't appear out of nowhere, and its cause can almost always be tracked down. Below, step by step and without needless jargon, is how to find it and get your site back, even if you're not technical.

Quick diagnosis: what you see and what it usually means

What you seeWhat it usually meansCheck first
Blank on your computer, fine on your phone or in a private windowOld cached files or a browser extensionBrowser
Blank right after you installed or updated a plugin or themeA fatal PHP error in that plugin or themePlugins
"There has been a critical error on this website"WordPress caught a fatal errorAdmin inbox
Blank only in /wp-admin, public site fine (or the reverse)Code that loads only in that part of the siteError log
"Briefly unavailable for scheduled maintenance"An update stopped halfway.maintenance
"500 Internal Server Error" instead of whiteA server or configuration errorError log
Blank, and the browser console shows red errorsA script failed to load or crashedConsole
Blank after your host changed somethingNew PHP version or a tighter memory limitPHP

First, rule out your own browser

Before you touch any files, make sure the site is actually broken for everyone, not just for you:

  • Open the page in a private (incognito) window. It loads without your cache, cookies or most extensions.
  • Open it on your phone over mobile data, not your Wi-Fi.
  • Do a hard refresh that skips the cache: Ctrl+Shift+R on Windows, Cmd+Shift+R on a Mac (in Chrome, Edge or Firefox).

If the site loads everywhere except your usual browser, the website is fine. Clear that browser's cache and cookies for the site, then turn off ad blockers and other extensions one at a time. If the page is blank everywhere, the problem is on the site itself, so keep reading.

What the white page actually means

A WordPress site (or any PHP-based site) works like this: the server runs code, builds the page and sends it to the browser. When a piece of code throws a fatal error (a missing function, an incompatibility, exhausted memory), execution stops abruptly. If error display is turned off, as it should be on a public site, you don't see the error message, just the result: an empty white page.

So the white page isn't a "disease", it's a symptom. Somewhere behind it there's a very specific error message; you just need to surface it. Often the cause appeared right after an action: you installed a plugin, hit "Update", edited a theme, or your host changed a setting. Before anything else, write down what happened just before the site went blank.

On current WordPress versions you may see a message instead of pure white: "There has been a critical error on this website." It's the same kind of fatal error. Since version 5.2, WordPress catches many of these errors, shows visitors a short error notice instead of a blank page and emails the site's admin a link to recovery mode (see step 1). A completely blank page still happens on older installs, with some errors and on setups where this protection has been switched off.

The most common causes

In practice, nearly every white screen comes from a handful of sources:

  • A plugin conflict or a poorly written plugin: the most frequent cause. An updated plugin becomes incompatible with another one or with your PHP version.
  • A broken theme: especially after an update, or after someone pasted code into its functions.php file.
  • Exhausted PHP memory: the site asks for more memory than the server allows and crashes.
  • An interrupted update: WordPress, a theme or a plugin updated only halfway (dropped connection, timeout) and left incomplete files behind.
  • An incompatible PHP version: the host moved to a newer PHP version and an old plugin or theme doesn't support it.
  • A caching or optimization plugin: settings that combine or delay JavaScript and CSS can sometimes leave a page that loads but shows nothing.
  • A JavaScript error: on sites that build the page inside the browser, one failed script can leave the whole page blank.

One useful detail: notice where the white appears. Only on the public site? Only in /wp-admin? On one page or everywhere? That narrows the search a lot.

Step 1: look for the WordPress recovery email

Check the inbox of the site's admin email address, including the spam folder. When WordPress catches a fatal error, it sends that address the error details and a special link that lets you into the dashboard in recovery mode. In recovery mode, the plugin or theme that crashed is paused only for you, so you can reach the dashboard, deactivate or update it, and then leave recovery mode from the button in the top admin bar. Visitors keep seeing the error until you fix the cause.

The email only arrives if your site can send mail and the admin address is one you can read. If nothing shows up, move on to step 2.

Step 2: make the errors visible

So you don't have to guess, have WordPress write down exactly which error occurred. Via FTP or your hosting File Manager, open wp-config.php in the site's main folder. Find the WP_DEBUG line (or add these lines above the one that says "That's all, stop editing!") and set:

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

With WP_DEBUG_LOG on, errors are saved to a debug.log file in the /wp-content/ folder, and WP_DEBUG_DISPLAY set to false keeps them off the pages your visitors see. Reload the white page, then open debug.log. Look for lines containing "PHP Fatal error": they name the file that failed, and the path tells you who is to blame. A path with /wp-content/plugins/plugin-name/ points to that plugin; /wp-content/themes/theme-name/ points to your theme.

If no debug.log appears, look for the PHP error log in your hosting control panel; many hosts keep one there. And if you suddenly see a new error right after editing wp-config.php, check that you didn't delete a semicolon or a quote, then redo the change carefully.

Important: once the problem is fixed, set WP_DEBUG back to false. The official WordPress debugging guide says these tools are meant for local testing and staging, not live sites. A log left running also keeps filling up on your server.

Step 3: disable plugins and switch the theme

If you can still log in to /wp-admin, deactivate plugins from the Plugins screen, starting with the one you touched last. If you can't get in, disable them without the dashboard:

  • Go into /wp-content/ via FTP or File Manager.
  • Rename the plugins folder to plugins-off. WordPress can no longer load any plugin.
  • Check the site. If it's back, a plugin was the cause.
  • While the folder is still renamed, log in and open the Plugins screen once: WordPress notices the plugins are missing and deactivates them.
  • Rename the folder back to plugins, then reactivate plugins one by one, checking the site after each. The one that brings back the white screen is your culprit.

If plugins aren't the problem, test the theme: in /wp-content/themes/ rename your active theme's folder. WordPress falls back to a default theme (one of the "Twenty Twenty-something" themes), as long as one is still installed in that folder. If the site appears, the problem is in your theme. If you recently pasted code into the theme's functions.php file, undo that change first: it's the most likely suspect.

Once the site loads again, clear every cache layer: your caching plugin, your host's cache and your CDN, if you use one. Otherwise some visitors may keep getting the blank version for a while.

Step 4: memory, PHP version and half-finished updates

If debug.log shows something like "Allowed memory size exhausted", the site ran out of memory. By default, WordPress tries to raise PHP's memory to 40MB on a single site and 64MB on a multisite network. Raise it in wp-config.php, above the "That's all, stop editing!" line:

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

Some hosts don't let WordPress raise the limit on its own. In that case, increase the PHP memory limit in your control panel or ask your host to do it.

If the white screen appeared right after your host upgraded PHP, debug.log will usually show errors from an old plugin or theme. The lasting fix is to update or replace that plugin or theme; switching back to the previous PHP version in your control panel, if your host still offers it, only buys you time.

If a WordPress update was interrupted, visitors usually see "Briefly unavailable for scheduled maintenance" rather than white. That's caused by a leftover .maintenance file in the site's root, and deleting it fixes it: here's how to get a site stuck in maintenance mode back online. If the site is white instead, the update may have left incomplete files. Reinstall the affected plugin from a fresh copy, or replace the WordPress core files with a fresh download following the official manual update guide. Never delete wp-config.php or the wp-content folder: that's where your settings, themes, plugins and uploads live.

Not on WordPress? Blank pages on JavaScript sites and site builders

Many modern sites send the browser an almost empty page and let JavaScript build everything you see. If a script fails, the page stays white even though the server is fine. To find out why:

  • In Chrome, Edge or Firefox, right-click the blank page, choose Inspect (Firefox may call it Inspect Element) and open the Console tab. Red messages mean a script crashed; the first one is usually the real cause and the rest are knock-on errors.
  • Switch to the Network tab and reload. JavaScript or CSS files marked 404 (not found) usually mean a deployment went wrong or the site points to the wrong folder.
  • If the site broke right after a new version went live, a cached copy of the old page may be asking for files that no longer exist. Clearing the hosting or CDN cache often fixes it.

On hosted builders such as Wix, Squarespace or Shopify you can't see the server, so check the platform's status page first, then remove any custom code, embed or app you added recently. If the page is still blank, the platform's support team is your fastest route.

If you see "500 Internal Server Error" instead of a white page, the server is telling you something failed on its side; here's what a 500 error means and how to fix it.

When restoring a backup is the faster fix

If you have a recent backup from before the problem and can't find the cause, restoring it can be the quickest way back online. Just remember that anything changed since that backup, such as new orders, form entries or posts, will be lost unless you save it first. Then apply the updates again one at a time, on a staging copy, to find the one that broke the site.

How to prevent it, and when it's worth getting help

Prevention is cheaper than panic. A few simple rules:

  • Back up before any update, automatically, not "when I remember".
  • Test updates on a staging site, not directly on the live one.
  • Keep plugins few and from serious sources; every extra plugin is extra risk.
  • Don't edit theme files directly: use a child theme or ask someone who knows.
  • Make sure the admin email in your WordPress settings is one you actually read, so a recovery email doesn't go unseen.
  • Use monitoring that checks for a word on your page, not only that the server responds. A blank page can still look "up" to a basic uptime check, because the server is technically answering.

If you've tried the steps above and still see white, or you simply don't want to poke around FTP on the site you depend on, don't push until you break more. At MPO Web Studio we build and maintain sites remotely, with backups and monitoring included, and we can diagnose a white screen quickly, from a distance. A short WhatsApp message telling us what happened just before the error is often enough for us to get started.

MPO Web Studio

Don't want to fix it yourself? Let us take a look.

Tell us what you see. Within 24 hours we tell you what's broken, whether we can fix it and what it costs.

  • Free diagnosis within 24 hours, no commitment
  • Quick fix from €49
  • You know the fixed price before we start any work

Frequently asked questions

Why is my website showing a blank white page?+

Usually because a plugin, theme or PHP error stopped the server before it could send the page; on JavaScript-built sites, because a script failed to load or run. Check a private window first, then the error log or the browser console.

Is my whole site lost if I see a white screen?+

Almost certainly not. The white screen is an execution error, not a deletion: your content, images and database are usually intact on the server. Once you disable the plugin or theme at fault, the site comes back as it was.

Why is my website blank only on my computer?+

If it loads in a private window or on another device, the site is fine and your browser is the problem. Clear its cache and cookies for that site and turn off extensions one at a time, starting with ad blockers.

What's the difference between a white screen and "There has been a critical error on this website"?+

Usually it's the same problem: a fatal PHP error. Since version 5.2, WordPress catches many of these errors, shows an error notice instead of a blank page (on current versions, that exact message) and emails the admin a recovery-mode link.

Why is only /wp-admin blank while the public site works (or the other way round)?+

Because the dashboard and the public site load different sets of code. A plugin that runs only in the admin area can fail only there, while visitors see a normal site. That's a helpful clue: it tells you which area to search.

I don't have FTP access. What do I do?+

Nearly every host offers a File Manager in its control panel (cPanel, Plesk or similar) that does what FTP does, right from the browser. From there you can edit wp-config.php and rename the plugins folder; if you can't find it, your hosting provider can point you to it.

How long does it take you to fix a white screen if I hire you?+

It depends on the cause, but most cases (plugin, theme, memory) are resolved the same day once we have access. We work remotely, and telling us what you did right before the white appeared shortens the diagnosis a lot.

Free guide

7 mistakes that drive clients away from your website

Leave your email and get the guide right here, instantly. No spam.

By submitting, you agree to the Privacy Policy.
MThe MPO teamWe reply personally

Want to see what your business's website could look like?

Message us on WhatsApp and we'll build you a free demo website with your business name on it. See it first, then decide — no strings attached.

Ask for a free demo websiteWe usually reply within a few minutes