Too many WordPress plugins? How to cut them without breaking your site

Every plugin solved something once. Now there are twenty-five of them, all asking for updates. Here is how to cut them down in seven steps, safely, shown on a real WordPress site.

The seven steps are written out below.

Read the steps

Captions available — press CC · Also on YouTube

Why fewer is better

Every plugin on your site was added for a good reason: a form, a gallery, a cookie banner, something a tutorial said you needed. Nobody adds them all at once. They arrive one need at a time, and almost nothing ever takes one away.

Each one is another piece of software from another author, with its own updates, its own settings and its own way of asking for your attention. WordPress's own Site Health screen puts it plainly: plugins "have deep access to your site, so it's vital to keep them up to date". The security company Wordfence went further in its 2024 report: plugins accounted for 96% of the WordPress vulnerabilities disclosed that year, and "removing unused and abandoned WordPress plugins and themes may be critically important".

There is no magic number, and WordPress doesn't set one. What matters more than the count is that every plugin on the site is one you use, one that is still looked after, and one that isn't doing a job something else already does. The seven steps below get you there without breaking anything, in an order that lets you undo each step.

The WordPress Plugins screen with 25 plugins, five updates waiting and set-up banners from several plugins above the list
The site in the film: 25 plugins, 19 active, 6 switched off, 5 updates waiting.

Step 1: Back up first

Everything below is reversible, as long as you have a copy of the site from before you started. WordPress's own guidance is to have a current backup before you update plugins, and the same goes for removing them.

  1. Open your hosting account (the company you pay for hosting, not WordPress). Most hosts have a page called Backups.
  2. Make a backup now, or check that last night's is there. Use the "Back up now" button if there is one, and wait until it says it has finished.
  3. No backups at your host? A backup plugin does the same job. If you already have one, run it now and keep the copy somewhere other than the site itself.

Step 2: Find the ones you don't use

  1. Go to Plugins and click Inactive. These are installed but switched off, so nothing on your site is using them. They are your first and easiest cuts (step 7 deletes them).
  2. Click Active and read every row. Each plugin has a one-line description under its name. For each, ask two questions: what does this do, and do I still need it? If you don't know what one does, click View details, or leave it on for now and come back to it.
  3. Write a short list: keep, not sure, remove. It takes ten minutes and saves guessing later.
  4. Open Tools → Site Health. If you have switched-off plugins, it says so: "You should remove inactive plugins … Inactive plugins are tempting targets for attackers. If you are not going to use a plugin, you should consider removing it."
The Plugins screen filtered to Inactive, showing six switched-off plugins
Inactive: installed, switched off, and still on your site.
Site Health's recommendation 'You should remove inactive plugins', opened
Site Health, under Tools, flags switched-off plugins on its own.

Step 3: Find the doubles

Two plugins doing one job is the most common kind of pile-up: you tried one, then another, and both stayed.

  1. Look for pairs in your list: two form plugins, two for search engines (SEO), two for caching, two for images, two for backups, two for security.
  2. Find out which one your pages really use. For forms, open the page with the form in the editor and see which plugin's form is in it. A form plugin with no forms in its own list is not being used.
  3. Mark the other one for removal. Two plugins doing the same job can also get in each other's way, so keeping just one is tidier as well as shorter.
The plugin list with four pairs highlighted: two form plugins, two SEO plugins, two caching plugins, two image plugins
Four jobs, eight plugins. On this site, the second form plugin had no forms at all.

Step 4: Check the dates

A plugin nobody looks after any more won't get fixes. You can see how well looked after each one is without leaving your dashboard.

  1. Click View details under a plugin's name. A window opens with the plugin's page from the WordPress.org directory.
  2. Read two lines on the right: Last Updated, and Compatible up to (the newest WordPress version its author has tested it with).
  3. Watch for the warning. If the author hasn't tested it with your version of WordPress, the window says so in a yellow box: "This plugin has not been tested with your current version of WordPress." On the plugin's WordPress.org page, one that is three major versions behind carries a stronger notice, and one removed from the directory says "This plugin has been closed".
  4. Plan to replace anything years out of date, especially if it does a small job. Step 6 shows what to replace it with.
A plugin's details window with Last Updated and Compatible up to highlighted
Last Updated and Compatible up to: the two lines to read.
A plugin's details window showing it was last updated six years ago and is compatible up to WordPress 5.9, with WordPress's yellow warning that it has not been tested with your version
A plugin last updated six years ago, with WordPress's own warning. (This one is our own demonstration plugin.)

No "View details" link? That usually means the plugin didn't come from the WordPress.org directory (a paid plugin, or one someone made for you). Check its maker's website for its last update instead.

Step 5: Switch them off one at a time

This is the step that keeps the site safe. WordPress's own troubleshooting advice is the same: one plugin at a time.

  1. Deactivate one plugin from your "remove" list. Just one.
  2. Open your site in another tab, logged out (a private window works), and check the pages that plugin might touch: the home page, any page with a form, a gallery or a button, and send yourself a test message through the contact form.
  3. All fine? Move on to the next one.
  4. Something broke? Switch that plugin straight back on, and note what it does. A common sign: a button or gallery turns into text in square brackets, like [book_now]. That is the plugin's placeholder tag, and it means the plugin is still in use on that page. It is a candidate for step 6, not a plugin to delete today.
A home page where a Book a groom button has turned into the plain text [merrowdale_book_now]
Switched off, a plugin's button becomes plain text. Switch it back on, then replace it in step 6.

Step 6: Use what WordPress already has

WordPress now does some small jobs that used to need a plugin. If a plugin does only one of these, you can swap it for WordPress's own feature, then switch the plugin off.

  1. A button plugin: use the Buttons block. In the page editor, add a Buttons block where the old button was, type the label, and add the link.
  2. Social links: use the Social Icons block, on a page or in your site's footer.
  3. A favicon (the little picture in the browser tab): go to Settings → General → Site Icon and choose an image. This has been built in since WordPress 6.5.
  4. A sitemap plugin: WordPress has made its own sitemap, at yoursite.com/wp-sitemap.xml, since version 5.5. If your SEO plugin already makes one, it may switch WordPress's off in favour of its own, so you don't need a third.
  5. Then switch those plugins off and check the page again, as in step 5.
The page editor with a Buttons block reading Book a groom where the plain-text tag used to be
The same button, made with WordPress's own Buttons block.
Settings, General, with a paw image set as the Site Icon
Settings → General → Site Icon does what a favicon plugin did.

Step 7: Delete what you switched off

Deactivated is not gone. A switched-off plugin is still on your site, and WordPress still checks it for updates.

  1. Go to Plugins and click Inactive. Everything you switched off in steps 2 to 6 is here.
  2. Tick the box at the top to select them all, choose Delete from Bulk actions, and press Apply. WordPress only offers Delete for plugins that are switched off.
  3. WordPress asks first: "Are you sure you want to delete the selected plugins and their data?" Deleting is when a plugin is meant to remove its own settings, so if you think you might want one back one day, note its settings before you press OK.
  4. Check Site Health again. The inactive-plugins recommendation is gone. In its place, the updates still waiting now show as a critical issue, "You have plugins waiting to be updated": run them after your backup.
WordPress asking 'Are you sure you want to delete the selected plugins and their data?'
Delete removes the plugin and its settings. That's why it asks.
The Plugins screen after the clear-out: 15 plugins, all active
From 25 to 15, and the site works exactly as before.
✦

Keep it from growing back

The honest part: the pile grows back. Every new need (a pop-up, a review widget, a booking tool) is usually solved with a new plugin, and the list creeps up again. So:

Every plugin solved something once. The job is keeping only the ones still solving something now.
The fix, in short
  • Step 1: back up first, from your hosting account or a backup plugin.
  • Step 2: click Inactive; read every active plugin and ask "do I still need it?"; Site Health flags the switched-off ones.
  • Step 3: find two plugins doing one job, and keep the one your pages use.
  • Step 4: View details: read Last Updated and Compatible up to, and plan to replace anything years out of date.
  • Step 5: deactivate one at a time and check the site in another tab; if something breaks, switch it back on.
  • Step 6: swap small plugins for the Buttons block, the Social Icons block and Settings → General → Site Icon.
  • Step 7: delete everything you switched off. Deactivated is not gone.
✦

Or, there is another way

All seven steps make the list shorter. None of them stops it growing again, because on WordPress almost every new thing your site does arrives as another plugin to keep up to date. If your site is a few pages, a contact form, a gallery and a booking button, it doesn't need plugins at all: those can simply be part of the page.

Ullbek is an AI website builder. You give it your WordPress site's address, and it builds a new, custom website from your pages and photos: the same pages, your wording and pictures, a fresh design, the form wired to your inbox, the gallery and the booking button built into the pages themselves. There are no plugins and nothing to update, so there is no list to prune and no banners to dismiss. When you need something new, you say what you want, and it's added to the site.

A WordPress cake-shop site on the left and the new custom site Ullbek built from its address on the right
Left: a public WordPress demo site. Right: what Ullbek built from its address, filmed for the video above.
  1. Give it your old site's address. "Rebuild [your address] as a new site. It's my current WordPress website. Keep every page and bring across the photos." It reads every page and downloads your pictures.
  2. Answer a few questions in one go. Usually the business name, what to do with any placeholder text, and your real contact details.
  3. Look it over, publish, then move your domain. Your WordPress site stays up until the new one is live, and your old page addresses can be kept so links and search results still work. The move guide walks through every step, including what to collect from your old host first.

In our tests, a six-page business site moved from its address in about seventeen minutes of building, with one round of questions. After that, there is nothing to prune: no plugins to check, no updates to run.

Leave the plugins behind

See how moving a WordPress site to Ullbek works, step by step.