What this problem looks like
Well-written plugins register an uninstall.php routine that runs when you delete from wp-admin. Many plugins skip that step, which leaves autoloaded options that slow every page load.
Never delete plugin folders at random on production WooCommerce or membership sites without reading whether custom tables hold orders or user progress.
Standard delete from wp-admin
- Plugins → Installed Plugins.
- Deactivate the plugin.
- Click Delete and confirm.
- Check for an uninstall wizard link in remaining admin notices.
Delete when admin Delete link is missing
Remove wp-content/plugins/plugin-slug/ via File Manager, SFTP, or FTP after deactivation.
Must-use plugins live in wp-content/mu-plugins/ and delete separately.
Clean database options and tables
Search phpMyAdmin for options rows containing the plugin prefix. Remove only rows you can identify as belonging to that plugin.
Some plugins add tables like wp_pluginname_logs. Drop them only after backup when documentation confirms they are safe to remove.
Remove scheduled cron events with WP-CLI over SSH
Only run the commands below if you have SSH access to the server. They will not work inside File Manager.
Orphan cron jobs from deleted plugins waste resources. Use WP-CLI or a cron manager plugin to remove events named after the plugin.
wp option list --search='myplugin_*' --format=table
wp cron event list | grep myplugin After removal checklist
- Load homepage and
wp-admin. - Submit a test form or order if the plugin touched commerce flows.
- Run a database optimization plugin only after confirmed cleanup.
- Document the removal for client sites so no one reinstalls a deprecated plugin.
When to stop DIY and hire help
Plugins that created dozens of tables need careful uninstall planning. BugShield cleans plugin conflicts and database bloat at a confirmed fixed price when DIY cleanup feels risky.