{"id":5272,"date":"2026-03-03T14:14:33","date_gmt":"2026-03-03T17:14:33","guid":{"rendered":"https:\/\/awp.agency\/?p=5272"},"modified":"2026-02-25T19:53:19","modified_gmt":"2026-02-25T22:53:19","slug":"fix-you-should-remove-inactive-plugins-you-should-remove-inactive-plugins-in-wordpress","status":"publish","type":"post","link":"https:\/\/awp.agency\/en\/blog\/solucionar-deberias-eliminar-los-plugins-inactivos-you-should-remove-inactive-plugins-en-wordpress\/","title":{"rendered":"Fix: You should remove inactive plugins (You should remove inactive plugins) in WordPress."},"content":{"rendered":"<div class=\"container\">\n<div class=\"intro\">\n<p>If you've recently logged into the \u00abSite Health\u00bb section of your admin panel, chances are you've come across a persistent, yellow-marked recommendation: <strong>\u00abYou should remove inactive plugins.\u00bb<\/strong> (or in English, its original version: <em>\u00abYou should remove inactive WordPress plugins\u00bb.\u00bb<\/em>). At first glance, this may seem like a minor, almost cosmetic suggestion. After all, if the plugin is \u00aboff\u00bb, what harm can it do?<\/p>\n<p>As a Senior WordPress developer focused on the profitability and security of websites, I assure you that this warning is much more than just spring cleaning. Inactive plugins represent latent security risks, unnecessary overhead and what we call \u00abtechnical debt\u00bb.<\/p>\n<p>In this article, we will break down exactly why this error appears, the real risks it hides and how to fix it step by step, based on official documentation and my technical experience optimizing high-traffic sites.<\/p>\n<\/div>\n<h2>What does \u00abYou should remove inactive plugins\u00bb really mean?<\/h2>\n<p>WordPress introduced the Site Health tool to help website owners keep their installations safe and fast. When you see the message \u00abYou should remove inactive plugins\u00bb, the system has detected software installed on your server that is currently not running on the <em>frontend<\/em> nor in the <em>backend<\/em> of your site.<\/p>\n<p>Many users fall into the trap of thinking that \u00abDeactivate\u00bb equals \u00abDelete\u00bb. It's not. By deactivating a plugin, you are simply telling the WordPress database to stop loading that specific code on page startup. However, the physical files (PHP, JS, CSS) remain on your server.<\/p>\n<div class=\"critical-note\"><strong>Key Data:<\/strong> WordPress considers this practice a \u00abRecommended Security Enhancement\u00bb. It's not a fatal flaw that will break your site today, but it is a vulnerability waiting to be exploited tomorrow.<\/div>\n<h2>Latent security risks: The danger of executable code<\/h2>\n<p>The main reason you should heed this warning is security. There is a common myth: \u00abIf the plugin is inactive, hackers can't use it\u00bb. In my experience auditing hacked sites, this is absolutely false.<\/p>\n<p>Even if a plug-in is deactivated, its files remain on the server and constitute <strong>\u00abexecutable code\u00bb<\/strong>. PHP files inside the plugin folder can be called directly through an HTTP request if the server is not perfectly configured to block it.<\/p>\n<p>According to technical discussions in the official forums, moderators warn that the <a href=\"https:\/\/wordpress.org\/support\/topic\/you-should-remove-inactive-plugins\/\" target=\"_blank\" rel=\"noopener noreferrer\">hackers can attack and execute this code even without the plugin being active.<\/a>. This is especially critical if you are dealing with old or outdated software.<\/p>\n<h3>The common attack scenario<\/h3>\n<p>Imagine you installed a form plugin two years ago, deactivated it but did not delete it. Today, a \u00abRemote Code Execution\u00bb (RCE) vulnerability is discovered in that old version of the plugin. A bot scans your website, detects the `\/wp-content\/plugins\/plugin-vulnerable\/` folder and executes the malicious script directly, completely ignoring that WordPress has it \u00abdisabled\u00bb.<\/p>\n<h2>2. Technical impact on performance and the database<\/h2>\n<p>Beyond security, keeping plugins inactive affects the overall health of your infrastructure. They are not invisible to the system.<\/p>\n<h3>Space consumption and backups<\/h3>\n<p>Every file counts. Inactive plugins consume valuable disk space. On servers with limited storage, this is an obvious problem. But the real impact is seen in backups.<\/p>\n<ul>\n<li><strong>Slower backups:<\/strong> Your backup processes will take longer to complete.<\/li>\n<li><strong>Complex restorations:<\/strong> If your site goes down, restoring a bloated 2GB backup is much slower than an optimized 500MB backup. Every minute of downtime is money lost.<\/li>\n<\/ul>\n<h3>Overhead in the requests (Overhead)<\/h3>\n<p>WordPress security and development experts say that <a href=\"https:\/\/patchstack.com\/articles\/how-to-properly-remove-inactive-wordpress-plugins\/\" target=\"_blank\" rel=\"noopener noreferrer\">WordPress keeps loading information about these plugins during every page request<\/a>. The system needs to scan the plugin directory to know what is available, adding unnecessary overhead to site processing.<\/p>\n<p>Also, many plugins, when installed, create custom tables in your database or add rows to the `wp_options` table. By simply deactivating them, that data stays there, slowing down database queries unnecessarily.<\/p>\n<h2>3. The \u00abDead Weight\u00bb Factor: Obsolescence Vulnerabilities<\/h2>\n<p>In web development, we often talk about \u00abDead Weight\u00bb. This often occurs when we install plugins for a single purpose (such as a migration plugin or a thumbnail regenerator) or for a trial period, and then forget about them.<\/p>\n<p>These plugins become a major risk because they are inactive, <strong>stop updating<\/strong>. It's natural: if you don't see it working, you ignore the update notice. According to security sources such as Patchstack, these plugins <a href=\"https:\/\/patchstack.com\/articles\/how-to-properly-remove-inactive-wordpress-plugins\/\" target=\"_blank\" rel=\"noopener noreferrer\">accumulate known security vulnerabilities that are specifically exploited by hackers.<\/a> because they know that administrators neglect their maintenance.<\/p>\n<div class=\"warning\"><strong>Warning:<\/strong> An inactive and outdated plugin is much more dangerous than an active and updated plugin. It is an unattended forgotten backdoor.<\/div>\n<h2>4. Dilemma of future use: When to keep a plugin deactivated?<\/h2>\n<p>As a developer, I understand that not everything is black and white. What if you deactivated a plugin because it caused a momentary conflict or because you plan to use it next week?<\/p>\n<p>There is an important nuance, especially with reputable premium plugins (such as WPML or WooCommerce Add-ons) that are planned to be used soon. <a href=\"https:\/\/wordpress.org\/support\/topic\/you-should-remove-inactive-plugins\/\" target=\"_blank\" rel=\"noopener noreferrer\">If the intention of use is definitive, it is not strictly obligatory to eliminate them immediately.<\/a>, but the decision rests with the user and his or her risk tolerance.<\/p>\n<p><strong>My professional recommendation:<\/strong><br \/>\nIf you are debugging a bug, it is fine to have it inactive for a few hours or days. But if the plan is to \u00abuse it maybe in 6 months\u00bb, delete it. You can always reinstall the latest version when you really need it. It is preferable to fix the bugs that cause the deactivation rather than keep them on indefinite hiatus, as \u00abSite Health\u00bb will continue to flag them as potential targets.<\/p>\n<h2>5. Detection and elimination methods<\/h2>\n<p>To fix the \u00abYou should remove inactive WordPress plugins\u00bb warning, you need to identify what is left over. There are two main methods: visual interface and technical inspection.<\/p>\n<h3>Method A: Via WordPress Dashboard (The standard method)<\/h3>\n<p>This is the easiest and safest way for most users:<\/p>\n<ol>\n<li>Go to your WordPress administration panel.<\/li>\n<li>Navigate to the section <strong>Plugins &gt; Installed plugins<\/strong>.<\/li>\n<li>At the top, you will see filters. Click on the link that says <strong>Inactive<\/strong>.<\/li>\n<li>This will filter the list to show you only those that are not in use.<\/li>\n<li>Select them and choose \u00abDelete\u00bb.<\/li>\n<\/ol>\n<h3>Method B: Technical Way (FTP\/SFTP) for hidden residues<\/h3>\n<p>Sometimes, a plugin gets deleted badly or leaves residual files that the WordPress panel no longer sees, but are still taking up space and being a risk. This is where manual inspection comes in.<\/p>\n<p>You can manually inspect your server's directory for <a href=\"https:\/\/patchstack.com\/articles\/how-to-properly-remove-inactive-wordpress-plugins\/\" target=\"_blank\" rel=\"noopener noreferrer\">find folders that do not correspond to active plugins<\/a>.<\/p>\n<div class=\"code-block\">Typical route to be inspected:<br \/>\n\/public_html\/wp-content\/plugins\/<\/div>\n<p><strong>Steps for cleaning via FTP:<\/strong><\/p>\n<ol>\n<li>Connect to your server using an FTP client such as FileZilla.<\/li>\n<li>Navigate to the folder <code>wp-content\/plugins<\/code>.<\/li>\n<li>Compare the list of folders you see there with the list of active plugins in your WordPress dashboard.<\/li>\n<li>If you see a folder named, for example, <code>plugin-former-x<\/code> and you know you don't have it installed, that folder is hazardous waste.<\/li>\n<li>Make a backup copy of that folder on your computer (just in case) and delete it from the server.<\/li>\n<\/ol>\n<div class=\"good-practice\"><strong>Best Practices:<\/strong> Before performing any mass deletion, always, without exception, perform a complete backup (files + database) of your website.<\/div>\n<h2>How to perform a Deep Clean<\/h2>\n<p>Removing the \u00abYou should remove inactive plugins\u00bb warning is the first step, but to truly optimize SEO and speed, I suggest going one step further.<\/p>\n<h3>Database Cleanup<\/h3>\n<p>As I mentioned earlier, deleting the file does not always delete the data. Many plugins leave \u00aborphaned\u00bb configurations in the table. <code>wp_options<\/code> with the attribute <code>autoload = yes<\/code>. This means that this data is loaded on EVERY visit, even if the plugin no longer exists.<\/p>\n<p>To fix this, you can use database optimization tools like WP-Optimize or Advanced Database Cleaner, which can scan orphaned tables and obsolete cron data.<\/p>\n<h2>Conclusion: Less is more<\/h2>\n<p>The message \u00abYou should remove inactive plugins\u00bb is not a trivial WordPress suggestion; it is a fundamental security guideline. In my daily work optimizing sites for clients, the golden rule is digital minimalism: have only what you use.<\/p>\n<p>Keeping plugins inactive is like leaving your home windows open just because \u00abno one is coming in at the moment\u00bb. It's an unnecessary invitation to security and performance problems.<\/p>\n<p><strong>Summary of actions to be taken today:<\/strong><\/p>\n<ul>\n<li>Check the \u00abInactive\u00bb tab in your plugins panel.<\/li>\n<li>Remove everything that is not essential to the current operation of your website.<\/li>\n<li>If you have doubts about a premium plugin, download the latest version to your computer and delete the one on the server.<\/li>\n<li>Perform a cleanup via FTP if you suspect old residues.<\/li>\n<\/ul>\n<p>Keeping your WordPress installation clean not only improves security, but ensures that your infrastructure is agile, scalable and ready to convert visitors into revenue.<\/p>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>Si has entrado recientemente en la secci\u00f3n de \u00abSalud del Sitio\u00bb (Site Health) de tu panel de administraci\u00f3n, es muy probable que te hayas encontrado con una recomendaci\u00f3n persistente y marcada en amarillo: \u00abDeber\u00edas eliminar los plugins inactivos\u00bb (o en ingl\u00e9s, su versi\u00f3n original: \u00abYou should remove inactive plugins WordPress\u00bb). A primera vista, puede parecer [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":5608,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-5272","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/awp.agency\/en\/wp-json\/wp\/v2\/posts\/5272","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/awp.agency\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/awp.agency\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/awp.agency\/en\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/awp.agency\/en\/wp-json\/wp\/v2\/comments?post=5272"}],"version-history":[{"count":1,"href":"https:\/\/awp.agency\/en\/wp-json\/wp\/v2\/posts\/5272\/revisions"}],"predecessor-version":[{"id":5283,"href":"https:\/\/awp.agency\/en\/wp-json\/wp\/v2\/posts\/5272\/revisions\/5283"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/awp.agency\/en\/wp-json\/wp\/v2\/media\/5608"}],"wp:attachment":[{"href":"https:\/\/awp.agency\/en\/wp-json\/wp\/v2\/media?parent=5272"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/awp.agency\/en\/wp-json\/wp\/v2\/categories?post=5272"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/awp.agency\/en\/wp-json\/wp\/v2\/tags?post=5272"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}