How to Remove Unused WordPress Plugins Without Leftovers
Your plugins page lists 38 entries, you actively use maybe 20, and nobody on the team remembers why the rest were installed.

Your plugins page lists 38 entries, you actively use maybe 20, and nobody on the team remembers why the rest were installed. Removing unused WordPress plugins sounds like a five minute job, yet a careless cleanup can break a shortcode on a guide page, wipe a settings table you needed, or leave hundreds of orphaned rows in your database.
I run cleanups on fan sites and guild sites a few times a year, and the method below is the one that has never cost me a page. It takes about an hour for a site with 30 to 40 plugins, and most of that time is checking, not deleting.
Why unused WordPress plugins are worth removing
A deactivated plugin does not run, so it is tempting to think it is harmless. It is not entirely harmless, for three reasons.
- Security exposure. Deactivated plugin files still sit in your wp-content folder. If one of them has a known vulnerability in a file that can be reached directly, an attacker does not need it to be active.
- Update noise. Every inactive plugin still asks for updates. Ten stale plugins means ten extra notices that train your team to ignore the update screen.
- Database clutter. Many plugins leave options, custom tables and scheduled tasks behind. Some keep autoloaded options that load on every single page request even when the plugin is gone.
Active plugins you no longer need are worse. They add scripts, styles and database queries to every page, which is often why a site that "used to be fast" now is not.
Step 1: Back up and list every plugin
Take a full backup of files and database before you touch anything. If your current routine is a weekly scheduled job, run a manual one now. Our guide to backing up a WordPress site the right way covers what a usable backup must include.
Then build a simple list. A spreadsheet with these columns works well:
| Plugin | Active? | Last updated by author | What it does on our site | Decision |
|---|---|---|---|---|
| Old slider plugin | No | 3 years ago | Homepage slider, replaced in 2024 | Remove |
| Contact form plugin | Yes | 2 weeks ago | Recruitment form for the guild | Keep |
| Table plugin | Yes | 5 months ago | Unknown, check guide pages | Investigate |
Anything the author has not updated in over a year deserves a second look even if you still use it. Abandoned plugins are a common source of both security issues and conflicts after a WordPress core update.
Step 2: Find out what each plugin actually touches
The "Investigate" rows are where cleanups go wrong. A plugin you think is unused might power one shortcode on a single tier list page from 2022. Before removing it, search for its footprint:
- Open the plugin's settings and note any shortcode names, block names or widget names it provides.
- Search your posts and pages for those shortcodes. In the database, a search of the post_content column for the shortcode tag, for example "[tablepress", finds every page using it.
- Check Appearance, then Widgets and the site editor for blocks or widgets from that plugin.
- Look at your theme's functions file or a code snippets plugin for any function calls that reference it.
If nothing turns up, it is a real candidate for removal. If something does, decide whether to keep it or migrate that content first.
Step 3: Deactivate in small batches and test
Do not deactivate fifteen plugins at once. Deactivate three to five, then check the pages that matter most: the homepage, a long guide, a category archive, the login page, any form and your checkout if you sell merch. Clear your cache between checks, or you will be testing an old copy.
Wait at least a few days with the plugins deactivated before deleting them. Some problems only show up when a scheduled task runs or when a logged out visitor hits a page you did not test. If something breaks, reactivate the last batch one plugin at a time. That is the same method we use to find a WordPress plugin conflict on a fan site, just run in reverse.
Step 4: Delete properly and clean what plugins leave behind
Use the Delete link on the plugins screen rather than removing folders over FTP. Deleting through WordPress runs the plugin's uninstall routine if it has one, which is the only clean way many plugins remove their own data.
Some plugins ask on their settings page whether to keep data on uninstall. If you are sure you will not return to the plugin, switch that option to remove data before you delete.
After deleting, check for leftovers:
- Database tables with the plugin's prefix, such as wp_oldslider_items.
- Autoloaded options in wp_options. Sort by size and look for names that match deleted plugins.
- Scheduled tasks still registered under the plugin's hook names. A cron viewer plugin, used briefly and then removed, will show them.
- Folders in wp-content/uploads created by the plugin, often holding cached images or exports.
Only remove database items you can clearly link to a deleted plugin. When in doubt, leave it. A stray 2 KB option costs you nothing, while deleting the wrong table can break a working feature.
The counter-take: fewer plugins is not automatically faster
A common rule says "keep your plugin count under 20" as if the number itself slows the site. It does not. One badly built plugin that loads a 400 KB script on every page does more damage than fifteen small, well written ones that only run on the admin side.
So do not delete a useful, lightweight plugin just to hit a target number, and do not replace it with 40 lines of copied code in your theme that nobody will maintain. Judge each plugin by what it loads on the front end and whether it is still maintained. If speed is the real goal, our guide on how to speed up a slow WordPress site shows how to measure which plugins actually cost you load time.
Keep the list short from now on
The easiest cleanup is the one you never need. Two habits help. First, add a line to your spreadsheet every time someone installs a plugin, with the reason and the page it serves. Second, test new plugins on a staging copy, not the live site, so trial installs never pile up in production. A quick review every three months, about 15 minutes, keeps the list honest.
Frequently asked questions
Does deleting a WordPress plugin delete its data?
It depends on the plugin. Deleting from the plugins screen runs its uninstall routine, which some plugins use to remove settings and tables, while others leave everything behind on purpose. Check the plugin's settings for a "remove data on uninstall" option before deleting.
Is it safe to leave plugins deactivated instead of deleting them?
It is safer than leaving them active, but not fully safe. The files remain on the server and can still be targeted if they contain a vulnerability. If you have not needed a deactivated plugin in three months, delete it and reinstall later if needed.
How many plugins is too many for WordPress?
There is no fixed number. A site can run 40 well built plugins smoothly and struggle with 10 heavy ones. Focus on what each plugin loads for visitors and whether its author still maintains it.
More in WordPress
WordPress
How to Add a WordPress Table of Contents to Long Guides
Your boss guide runs to 4,000 words, and readers who only want phase three scroll past everything else, give up, and go back to...
WordPress
How to Choose a WordPress Security Plugin for a Fan Site
Your fan site gets a few thousand visitors a month, and suddenly the login page is being hammered by 400 bot attempts an hour.
WordPress
How to Set Up WordPress Redirects After Changing a URL
You renamed a guide from "/elden-ring-boss-tips" to "/elden-ring-boss-guide", and a week later Search Console shows a pile of...