Most WordPress compromises come through a vulnerability in a plugin, not through a guessed password. That makes plugin vetting the highest-value security work available, and it is the part most site owners never do — because it has no dashboard and produces no alert.
Five signals separate a plugin worth keeping from a liability, and all five are checkable in about a minute each.
Why plugins are the main route
A vulnerability disclosed responsibly is a vulnerability published. That is the point — so administrators can patch. It also means automated scanners have a list, and they work through it against every WordPress site they can reach.
The window between disclosure and exploitation is short. Which reframes "I will update next month" from a scheduling choice into the actual exposure.
Two structural facts make this worse than it needs to be:
- The plugin ecosystem has tens of thousands of entries of wildly varying quality, many written by one person who has since moved on
- An abandoned plugin does not announce itself. It keeps working, so nobody notices until a vulnerability is found and no fix arrives
The five signals
1. When was it last updated?
The single most predictive signal.
Check the plugin's page on wordpress.org, or Plugins → Installed Plugins where it is shown.
| Last update | Read |
|---|---|
| Within 3 months | Actively maintained |
| 3–12 months | Probably fine, worth watching |
| 1–2 years | Scrutinise. Likely abandoned |
| Over 2 years | Treat as abandoned. Replace |
The exception: a small, simple plugin doing one thing correctly may genuinely need no updates. A plugin handling forms, uploads, user input or payments and untouched for two years is a different matter — those need maintenance because the threat landscape moves.
2. Does it say "tested up to" a current version?
A plugin whose compatibility declaration is several WordPress versions behind is a maintenance signal, not a compatibility one.
It usually still works. What it tells you is that nobody has looked at it recently, which is exactly what matters for security.
3. Does it have a known vulnerability?
Check before installing anything, and periodically for what you already run.
The WPScan vulnerability database is the standard reference and is searchable by plugin. Several security plugins query it automatically and alert on installed plugins with published vulnerabilities — that alert is one of the genuinely valuable things a security plugin provides.
A published vulnerability with a patch available means update now, ahead of any schedule. A published vulnerability with no patch means remove the plugin until one exists.
4. How responsive is the developer?
Open the support forum on wordpress.org and read the last twenty threads.
- Answered within days, by the developer — actively maintained
- Answered by other users only — the developer has gone
- Unanswered for months — abandoned in practice
- Bug reports acknowledged and fixed — a real maintainer
This takes two minutes and predicts the next two years better than the star rating, which reflects how people felt about the plugin when they installed it rather than whether anyone is still looking after it.
5. What does it actually need access to?
A plugin's risk is proportional to what it touches.
Higher risk by nature: anything handling file uploads, form submissions, user registration, payments, or code execution. Anything with a public-facing endpoint. Anything requiring elevated database privileges.
Lower risk: admin-only tools, display and formatting plugins, anything that only reads.
This changes the standard you should apply. An abandoned display plugin is a small problem. An abandoned form plugin accepting public input is a large one, and the two should not be judged by the same last-updated threshold.
Auditing what you already have
Thirty minutes, quarterly.
1. List every installed plugin, active and inactive.
2. Delete the inactive ones. A deactivated plugin still has files on the server. Some vulnerabilities are exploitable without the plugin being active, because the file is reachable. Deactivating is not removing.
3. For each active plugin, check the five signals. Last updated, tested-up-to, known vulnerabilities, support responsiveness, what it touches.
4. Sort into three groups:
- Keep — maintained, no known issues
- Watch — working but slowing down. Note it and check next quarter
- Replace — abandoned, vulnerable, or unmaintained while handling sensitive input
5. Replace the third group. Most abandoned plugins have a maintained equivalent, and switching is usually less work than the audit was.
6. Note what you removed and why, so it is not reinstalled in six months by someone solving the same problem.
Before installing anything new
Five checks, two minutes:
- Last updated within the last few months
- Tested up to a current WordPress version
- Support forum shows the developer responding
- No open vulnerability in the WPScan database
- Active install count — not a quality measure, but a widely-used plugin gets scrutinised, and vulnerabilities are found and reported faster
One more question worth asking: do you need a plugin at all? Several plugin categories became unnecessary as WordPress absorbed the feature, and the safest plugin is the one you did not install. The weight side of the same question.
Nulled and pirated plugins
Do not use them, and the reason is not licensing.
Nulled premium plugins are distributed with code added. That is the business model — the distribution is free because the payload is the product. Backdoors, spam injection and credential harvesting are the common ones.
They also never receive security updates, so any vulnerability found later stays open permanently.
If a premium plugin is beyond your budget, use the free alternative. There is almost always one, and a limited free plugin is safer than a full premium one with someone else's code in it.
What a security plugin adds here
One genuinely valuable feature and several partial ones.
The valuable one: alerting when an installed plugin has a published vulnerability. That closes the gap between disclosure and your knowing, which is the window that matters.
The partial ones: file integrity monitoring catches changes after the fact, and malware scanning finds known signatures rather than novel code.
What it cannot do is patch the vulnerability. A firewall may block a known exploit pattern; the hole stays until you update. That is the limit worth understanding before relying on one.
Frequently asked questions
How do I know if a plugin is abandoned?
Check the last updated date and the "tested up to" version on its wordpress.org page, then read the last twenty support forum threads. A plugin untouched for over two years, with a compatibility declaration several versions behind and a support forum where only users answer, is abandoned regardless of whether it still works.
Are free plugins less safe than premium ones?
Not inherently. What matters is maintenance, and both free and premium plugins get abandoned. A well-maintained free plugin from an active developer is safer than a premium one whose author has stopped working on it.
Where can I check plugin vulnerabilities?
The WPScan vulnerability database is the standard reference and is searchable by plugin name. Several security plugins query it automatically and alert on installed plugins with published vulnerabilities, which is one of their genuinely valuable features.
Should I delete deactivated plugins?
Yes. A deactivated plugin still has files on your server, and some vulnerabilities are exploitable without the plugin being active because the file remains reachable. Deactivating is not removing.
Is it safe to use nulled premium plugins?
No, and the reason is not licensing. Nulled plugins are distributed with added code — backdoors, spam injection and credential harvesting are common — and they never receive security updates. A limited free alternative is safer than a full premium plugin containing someone else's payload.
How many plugins is too many from a security perspective?
The count matters less than maintenance and exposure. Five abandoned plugins handling public input are riskier than thirty maintained ones doing admin-only work. Audit by the five signals rather than by number.
The WordPress Email Delivery Checklist
Stop your WordPress emails from failing silently. Get the complete setup guide.

Muhammad Basim has worked in digital marketing since 2013, focused on email deliverability and AI-assisted content production. He is the author of the Email Deliverability Playbook and the Email Copywriting Playbook, and has run 100+ email campaigns for ecommerce brands, coaches, and B2B senders. He writes about email, SEO, WordPress, and AI — with a bias toward what can be tested over what sounds good.
Related Articles
WordPress Email: Why Your Site’s Emails Never Arrive
WordPress sends email in a way that fails modern authentication by default, and it reports success while doing it. That combination is why this problem is so persistent. The site is not broken. Nothing is logged. wp_mail() returns true, the order is placed, the form says thank you — and the message never reaches an […]
WordPress Sitemaps, Properly Configured
You already have a sitemap. WordPress has generated one in core since version 5.5, served at /wp-sitemap.xml, with no plugin required. And you may not need it. Google's own threshold: you might not need a sitemap if "Your site is 'small'. By small, we mean about 500 pages or fewer on your site" and it […]
WordPress SEO: What the Platform Decides for You
WordPress makes a set of SEO decisions for you at install, before you write anything. Four of them are wrong for most sites, and none of them is fixed by a plugin. That is the useful frame for this subject, because "WordPress SEO" is usually presented as a plugin choice, and the plugin is the […]