Methodology
Every number on Plugin Pulse is computed from publicly available WordPress.org data with the formulas below. Nothing is editorial, nothing is pay-to-play, and the same math applies to every plugin, including our own.
Health score
A 0–100 blend of four sub-scores, each answering one question a person asks before installing. Grades: A ≥ 85, B ≥ 70, C ≥ 55, D ≥ 40, F below that.
| Sub-score | Weight | What it measures |
|---|---|---|
| Maintenance | 35% | Days since the last release. Full marks within 90 days; ~62 at one year; 25 at two years; near zero by four. |
| Rating quality | 29% | The volume-adjusted star rating (below), mapped so 3.0★ scores 50 and 4.8★ scores 96. |
| Support | 18% | Share of recent support threads marked resolved. Fewer than 5 threads reads as neutral (70), because silence is not evidence. |
| Momentum | 18% | Average daily downloads over the last 30 days versus the 30 before. Flat = 62, +25% = 80, −20% = 48. Unknown reads neutral (60). |
A fifth sub-score for security advisories is reserved (15% when active) and its weight is redistributed until vulnerability data ships, which is why the four weights above are shown as their effective values.
Adjusted rating
Raw star averages reward tiny samples: a 5.0★ plugin with 4 reviews is weaker evidence than a 4.6★ plugin with 900. We apply Bayesian shrinkage toward the directory-wide average (3.9★) with the pull of twelve phantom reviews, so small samples drift toward typical and large samples speak for themselves. That is why an adjusted rating always sits slightly below a small plugin's raw average.
Install estimates
WordPress.org reports active installs only in coarse buckets ("40K+"). The true value sits between that bucket and the next one up. We narrow the band using the date the plugin last crossed into its bucket, its download velocity since, and daily snapshots of our own. Estimates are labeled "modeled" until we hold enough of our own observations to call them "tracked".
Honest rankings
We replicated WordPress.org's search scoring from its public source: the install-count factor grows without any ceiling, so raw distribution dominates placement. Our merit re-rank applies the same inputs with three changes: the install factor is capped at one million active installs, ratings are weighted by review volume with a statistical lower bound (Wilson interval), and freshness/compatibility decay stays as wp.org has it. "Inflation" is the gap between a plugin's wp.org position and its merit position.
Signals on ranking rows
- install-weight boost — wp.org places this plugin 4+ positions above its merit rank, and the install-count factor supplies most of its wp.org score. This describes how the algorithm weighs the plugin. It says nothing about how those installs were acquired, and it is not an accusation against the developer.
- thin reviews — fewer than 25 reviews, so rating evidence is weak.
- low rating, top placement — under 3.5★ while holding a top-5 spot.
- stale but ranked — no update in 18 months while holding a top-10 spot.
Integrity watch
Separately from ranking signals, a plugin is flagged for artificial install growth only when hard thresholds are all met at once: 50,000+ active installs, a rating under 2.5★, and a statistically robust negative review consensus. That combination is the signature of installs that arrive without users choosing them (bundling, forced activation). Flagged plugins are excluded from positive leaderboards and their health is capped. This is the only label on the site that implies conduct, which is why its bar is high and its evidence is shown.
Data
Live data comes from the public WordPress.org APIs. Trend history combines our own daily snapshots with a historical archive assembled from public sources, and every stored data point is tagged with its origin. Download history reaches back to October 2022 for most tracked plugins. Plugin Pulse is built by WP Mayor and is not affiliated with WordPress.org.