You clicked the update button, and now your WordPress site shows a blank page, an error message, or a layout that looks wrong.
This is one of the most stressful moments for a site owner. Updates are meant to improve your site, but sometimes they break it. A plugin may not work with a new version of WordPress. A theme may not work with a new version of PHP. Or an update may stop halfway and leave your site stuck.
The good news is that nearly every update problem can be fixed, and your content is almost always safe. Your posts, pages, and images live in your database and your uploads folder, and an update rarely touches them.
In this guide, we’ll show how to fix a WordPress website that broke after an update. We’ll start with the safe first steps, then match your symptom to its cause and fix, and finish with a safe update routine that helps you avoid this problem next time.
First Steps: Stay Calm and Do Not Make It Worse
When a site breaks, the urge is to click everything at once. Resist it. Each random change can make the problem harder to trace.
- Do not run more updates.
- Do not delete plugins or themes yet.
- Do not restore a backup before you check what it contains.
- Write down what you updated, and when.
- Copy the exact error message, or take a screenshot.
Check whether your content is safe
Your posts and pages are in the database. If you can open your hosting panel and see your database and files, your content is there. Fix the break first, and your content will come back with it.
Make a backup of the broken state
Even a broken site is worth backing up. Download a copy of your files and database now. If a fix goes wrong, you can return to this point.
Find Out What Was Updated
Most update problems come from one change. Find it.
| What you updated | Where problems often show |
|---|---|
| A plugin | The page or feature that the plugin controls |
| The theme | Layout, menus, widgets, and custom code |
| WordPress core | Plugins and themes that are not compatible |
| PHP version | Fatal errors from old code |
| Several items at once | Hard to trace, so roll back in steps |
Check your update history if you keep one. Some hosts and backup plugins list recent changes. If you updated several things at once, you will test them one at a time.
Match Your Symptom to the Cause
| Symptom | Likely cause | Fix |
|---|---|---|
| Blank white page | A fatal PHP error | Turn on the debug log, then deactivate the plugin or theme named |
| Error message saying the site has a technical problem | WordPress caught a fatal error | Use the recovery mode link in your email |
| Message that the site is briefly unavailable for maintenance | A stuck maintenance file | Delete the .maintenance file |
| Layout broken, but the site loads | Style or script clash, or a cache | Clear all caches, then test plugins |
| Cannot log in to the dashboard | A plugin error in the admin area | Rename the plugin folder |
| 500 internal server error | A server error, often from code or the .htaccess file | Check the logs, reset the .htaccess file |
| Error establishing a database connection | Database details or server problem | Check wp-config.php and contact your host |
| Update stuck or failed halfway | A timeout, low memory, or file permissions | Retry, or update manually |
Use the table to pick the section below that matches what you see.
Fix 1: The White Screen or Fatal Error
A white screen is a fatal PHP error with the error message hidden. Nearly always, the cause is a plugin, a theme, or the PHP version.
Use the recovery mode email
Since version 5.2, WordPress can catch a fatal error and send an email to your site’s admin address. The email has a link that opens recovery mode. In recovery mode, WordPress pauses the plugin or theme that caused the error, so you can log in and deactivate it. Check your spam folder if you cannot find the email.
Turn on the debug log
If you do not get the email, read the error yourself. Open wp-config.php in your site’s root folder, and add or change these lines:
- define( ‘WP_DEBUG’, true );
- define( ‘WP_DEBUG_LOG’, true );
- define( ‘WP_DEBUG_DISPLAY’, false );
The official WordPress debugging guide explains each option. Reload the broken page, and then open the debug.log file in the wp-content folder. The newest lines usually name the file and the plugin or theme that failed. Turn debugging off again when you finish.
Deactivate the plugin by renaming its folder
If the log or your update list points to a plugin, and you cannot reach the dashboard:
- Open your host’s file manager, or connect with an FTP client.
- Go to wp-content, then plugins.
- Rename the plugin’s folder, for example by adding -off to the name.
- Reload your site. WordPress turns the plugin off because it cannot find it.
- Log in, and check whether the site works.
If you do not know which plugin it is, rename the whole plugins folder to plugins-off. This turns off all plugins. Then rename it back, and activate the plugins one at a time from the dashboard until the problem returns. Our guide on how to find which plugin is breaking your site shows the full method.
Switch the theme
If the theme was the update, rename the active theme’s folder in wp-content, then themes. WordPress falls back to a default theme, if one is installed. Log in and check whether the site works.
Fix 2: Stuck in Maintenance Mode
When WordPress updates something, it puts a small file named .maintenance in your site’s root folder. It shows the message “Briefly unavailable for scheduled maintenance. Check back in a minute.” When the update ends, WordPress deletes the file. If the update stops halfway, the file stays, and your site shows the message for good.
How to fix it
- Open your host’s file manager or an FTP client.
- Go to the root folder, the one that holds wp-config.php.
- Turn on the option to show hidden files, because the file name starts with a dot.
- Delete the .maintenance file.
- Reload your site.
- Go to Dashboard, then Updates, and check whether the failed update needs to run again.
If the update was for a plugin or theme, check that it works. If it does not, reinstall it, as shown later in this guide.
Fix 3: The Layout Is Broken, but the Site Loads
If the site loads but looks wrong, the cause is often a style or script that did not update, a cached old file, or a clash between code.
- Clear every cache: your caching plugin, your host’s cache, your CDN, and your browser.
- If you use a page builder, regenerate its CSS files from its settings.
- Hard refresh the page, or open it in a private window.
- Turn off minify and combine options in your caching plugin, then clear the cache, then test.
- Check for a theme or builder update that matches the plugin update.
- Deactivate the recently updated plugin and test.
If the layout is fixed after you clear the cache, the update was fine, and old files were the problem.
Fix 4: You Cannot Log In to the Dashboard
If the login page fails or redirects, the cause is usually a plugin that runs in the admin area, a security plugin, or a changed setting.
- Try recovery mode, using the email link.
- Try a private browser window, in case a stored cookie is the problem.
- Rename the plugins folder, as shown above.
- If a security plugin locked you out, rename its folder specifically.
- If you changed your site address, check that the address settings in the database or wp-config.php match your real address.
After you log in, go to Settings, then Permalinks, and click Save Changes. This refreshes the rewrite rules and fixes many page and login errors.
Fix 5: The 500 Internal Server Error
A 500 error means the server could not complete the request. After an update, common causes are a plugin error, a corrupted .htaccess file, or a PHP memory limit.
- Rename the .htaccess file to .htaccess-old, then reload. If the site works, go to Settings, then Permalinks, and save, to make a fresh file.
- Rename the plugins folder to test for a plugin cause.
- Check your host’s error log, which names the failing file.
- Raise the PHP memory limit in your hosting panel, or in wp-config.php.
- Ask your host to check the server logs if you cannot find the cause.
Fix 6: Error Establishing a Database Connection
This error does not usually come from an update, but it often appears at the same time, for example when the server restarts during an update.
- Check that the database name, user, password, and host in wp-config.php are correct.
- Ask your host whether the database server is running.
- Check whether you reached a database size or connection limit.
- If the database is damaged, your host can often repair it. WordPress also has a repair tool that you can turn on with a line in wp-config.php, and you should turn it off after use.
Fix 7: Roll Back a Plugin or Theme
If you know which plugin caused the break and you need the old version, you can roll back.
Use a rollback plugin or the advanced view
Some plugins have an advanced view or a rollback option in their page on the plugins screen. A rollback plugin can also install an earlier version of a plugin from the WordPress.org repository. Take a backup first, because a rollback can also change the database.
Install the old version by hand
- Go to the plugin’s page on WordPress.org, open the Advanced View, and download the older version from the list.
- Deactivate and delete the broken version from your dashboard, or rename its folder over FTP.
- Upload the old version, and activate it.
- Test the site.
- Turn off automatic updates for that plugin until the developer fixes the problem.
Restore from a backup
If you have a backup from before the update, you can restore it. Check the date first, and remember that a restore will also remove posts, comments, and orders that arrived after the backup date. Restore on a staging copy first, if you can.
Fix 8: Reinstall WordPress Core
If an update of WordPress itself failed and core files are missing or damaged, you can reinstall without losing your content.
- Back up your files and database.
- Go to Dashboard, then Updates, and click the Re-install Version button, if it is shown.
- If you cannot log in, download a fresh copy of WordPress from WordPress.org, and unzip it on your computer.
- Upload the wp-admin and wp-includes folders, and the files in the root folder, except wp-config.php and the wp-content folder.
- Do not overwrite wp-content, because it holds your plugins, themes, and uploads.
- Log in, and run any database update that WordPress asks for.
Fix 9: PHP Version and Memory Problems
An update can fail or break a site because of PHP.
PHP version
A plugin that was fine on one PHP version may fail on another. If you changed the PHP version recently, change it back in your hosting panel, test, and then plan a proper upgrade of the plugin. If an update needs a newer PHP version than your site has, the update may show errors until you upgrade PHP.
Memory limit
A low memory limit makes updates stop halfway. Raise the PHP memory limit in your hosting panel, or add a line to wp-config.php, and then retry the update. A figure of 256 MB suits most sites that use a page builder.
File permissions
If WordPress cannot write to its folders, updates fail. Ask your host to check that file and folder ownership is correct.
Check Site Health After the Fix
When your site works again, run the Site Health check. The official Site Health documentation explains the status and info tabs. Look for outdated PHP, inactive plugins, failed loopback requests, and plugins or themes that still need an update.
If your site works but feels slow after the update, read our guide on why your WordPress website is so slow. If your page builder is the part that failed, see Elementor not loading or stuck on the loading screen.
How to Update WordPress Without Breaking Your Site
A safe routine takes a few extra minutes and prevents most update disasters.
- Take a full backup of files and database, and store it off the server.
- Read the plugin’s change log, and check the “tested up to” version on its page.
- Update on a staging site first, if your host provides one.
- Update one thing at a time, and test after each update.
- Test your key pages: the home page, a post, the contact form, the search, and, if you sell products, the checkout.
- Update at a quiet time, not during a sale or a traffic spike.
- Keep notes of what you changed.
- For large updates, such as a new major version of WordPress, wait a short time after release, so that plugin authors can fix early bugs.
Think carefully about automatic updates
Automatic updates are useful for security fixes. For plugins that run your shop, forms, or page builder, many site owners prefer to update by hand after a test. Use automatic updates for small sites with simple plugins, and manual updates for sites where a break would cost money.
How to Roll Back Safely With WP-CLI or Your Host’s Tools
If you have command-line access, WP-CLI makes recovery faster, because it works even when the dashboard is down.
- List your plugins and their versions, so that you can see what changed.
- Deactivate one plugin, or all plugins, with a single command.
- Install a specific older version of a plugin by naming the version number.
- Check and repair core files by comparing them with the official checksums.
- Clear the cache and flush the rewrite rules.
Many hosts also provide one-click tools that help in a break:
- Daily backups that you can restore to a staging copy.
- A built-in staging site, for testing a fix before you apply it to the live site.
- A PHP version switcher, to undo a version change in seconds.
- Error logs, which show the exact file and line that failed.
If your host offers these, use them before you try anything manual. They are made for this situation.
What to Check on Each Important Page After the Fix
Once the site loads again, do not stop at the home page. A site can look fine and still have a broken feature. Use this short test list.
| Page or feature | What to test |
|---|---|
| Home page | Layout, menu, images, and speed |
| A blog post | Content, comments, and sidebar |
| Contact form | Submit a test message, and check that it arrives |
| Search | Run a search and check the results |
| Login and account pages | Log in and out with a test user |
| Shop pages | Add a product to the cart, and open the checkout |
| Mobile view | Open the site on a phone, and check the menu |
| Admin area | Open the editor, save a draft, and upload an image |
Run the list in a private window so that you see what visitors see. If a form fails after an update, check our guide on how to fix WordPress emails that do not send, because a form can work while the email behind it does not.
Common Mistakes After a Broken Update
- Deleting a plugin before you know whether its data matters. Deactivate first.
- Restoring an old backup without saving the newer content first.
- Updating everything again in the hope that it fixes the break.
- Leaving debug mode on, which can show errors to visitors.
- Turning off all security, and forgetting to turn it back on.
- Ignoring the cache, and thinking the fix did not work.
- Skipping the staging test on the next update.
- Not noting what changed, so the same break returns next month.
When the Problem Is Not the Update
Sometimes an update and a problem arrive at the same time, but the update is not the cause. Think about these other reasons if the fixes above do not work.
- Your host changed the server, the PHP version, or a security rule at the same time.
- A plugin license expired, so its features stopped working.
- A CDN or firewall service had an outage.
- A domain, SSL certificate, or DNS setting changed.
- Your site was hacked, and the update was a coincidence. Signs include unknown admin users, unknown files, and redirects to other sites.
- You ran out of disk space or database space, so updates could not finish.
Check your hosting panel for notices, and ask your host whether anything changed. If you see signs of a hack, change your passwords, scan the site, and ask your host for help.
A Short Recovery Checklist
Keep this list near your desk, so that you can follow it when a site breaks.
- Stay calm, and write down what you updated.
- Copy the error message, or take a screenshot.
- Back up the broken state.
- Check your email for the recovery mode link.
- Turn on the debug log, and read the newest lines.
- Rename the plugin folder, or the theme folder, named in the log.
- Delete the .maintenance file if you see the maintenance message.
- Clear every cache.
- Roll back the plugin, or restore a backup, if needed.
- Test your key pages, and turn debug mode off.
Set Up a Safety Net Before the Next Update
The best time to prepare for a break is before it happens. A small setup takes under an hour and gives you a fast way back.
Automatic backups
Set up daily backups, or hourly backups for a shop. Store them away from your server, for example in cloud storage. Keep at least a week of copies, so that you can go back past a problem that you noticed late. Test a restore once, on a staging site, so you know it works.
A staging site
A staging site is a private copy of your live site. Test every large update there first. If your host does not offer staging, a staging plugin can create a copy in a subfolder or on a subdomain.
Uptime and error alerts
Use an uptime monitor that checks your site every few minutes and emails you when it fails. You will learn about a break from the monitor, not from a customer. Also make sure the admin email in your settings is an address that you read, because WordPress sends the recovery mode link there.
A short list of contacts
Keep your host’s support link, your domain registrar login, and the names of your key plugins’ support forums in one place. In a break, you will not want to search for them.
Why Small Sites Break More Often Than You Think
Small sites often run on shared hosting with limited memory, an older PHP version, and many plugins from different authors. Each update changes one piece, but the pieces depend on each other. A plugin author tests on a standard setup, and your setup may differ in a small way. That is why a routine update can break one site and not another. It is not your fault, and it does not mean that you should stop updating. It means that a backup and a test step belong in every update.
Frequently Asked Questions (FAQs)
Why did my WordPress site break after an update?
The usual cause is a plugin or theme that is not compatible with a new version of WordPress, PHP, or another plugin. An update that stops halfway can also leave files in a broken state.
Will I lose my content if my site breaks after an update?
Almost never. Your posts, pages, and media are stored in the database and the uploads folder, and updates do not remove them. Back up before you try any fix.
How do I fix a white screen after an update?
Use the recovery mode link from your email, or turn on the debug log to find the plugin or theme. Then rename that folder over FTP to turn it off, and log in.
How do I fix a site that is stuck in maintenance mode?
Delete the .maintenance file in your site’s root folder. Show hidden files, because the name starts with a dot.
Can I undo a WordPress update?
You can roll back a plugin by installing the older version, and you can restore a backup. For WordPress core, re-install the same version, or restore a backup if you have one.
Should I restore from a backup?
If the fixes above do not work and you have a recent backup, yes. Check the backup’s date first, and remember that you will lose newer content. Restore to staging first if you can.
How can I avoid problems when I update?
Back up first, update on staging, update one item at a time, and test your key pages after each change.
Do I need to update WordPress at all?
Yes. Updates include security fixes. Run them, but do it with a backup and a test routine.
What if I cannot fix it myself?
Ask your host to check the server logs, or get help from someone who works with WordPress sites. You can get WordPress management and troubleshooting help through this Fiverr gig.
Final Thoughts
A WordPress site that breaks after an update is a problem that you can solve. Stay calm, back up the broken state, and match the symptom to its cause. Fatal errors point to a plugin or theme, a stuck maintenance message points to a file you can delete, and a broken layout often points to a cache.
Once your site is back, change how you update. Back up first, test on staging, and update one item at a time. A few minutes of care before each update saves hours of repair afterward.

