Optimization plugins
Performance and optimization plugins detected on the page.
At a glance the headline numbers for Optimization plugins
Performance and optimization plugins detected on the page.
Wp rocket leads the optimization plugins, on 29.3% of sites.
The optimization plugins mix who uses what, and how stable each group is
Optimization plugins. On the fleet: 29.3% wp rocket, 25.8% litespeed cache, 21.6% autoptimize. 100.0% of sites use at least one wp_rocket.
Why this matters for the Core Web Vitals, and where to start fixing it
Optimization plugins exist because platform defaults are slow. They minify, defer, lazy-load, compress and cache what the theme ships, without anyone touching the theme. Their presence says something honest about a site: someone cared enough to install one.
They fix symptoms, and that is fine. A deferred script you could have removed is still a win, just a smaller one. The real risk is blind configuration: the same plugin helps one site and breaks another, usually when something inline depended on a script that is now deferred. Measure before and after, always.
Chrome field data from 189,915 sites, representing millions of real page loads. How we measured.
Live queries (2) — admin only
SELECT 1 AS ok FROM site_metric_bags LIMIT 0;
WITH flat AS (
SELECT CAST(p.key AS VARCHAR) AS cat, 1.0::DOUBLE AS n, NULL::DOUBLE AS size, s.crux."phone".cls AS cwv_val
FROM sites s, UNNEST(s.entities.providers) AS u(p)
WHERE p.key IS NOT NULL
AND CAST(p.key AS VARCHAR) <> ''
AND p.category = 'performance'
AND regexp_matches(CAST(p.key AS VARCHAR), '^[a-zA-Z0-9_]+$')
),
totals AS (
SELECT cat,
SUM(n) AS fleet_n,
SUM(size) AS fleet_size,
COUNT(*) FILTER (WHERE n IS NOT NULL) AS sample,
COUNT(*) FILTER (WHERE n > 0) AS with_any,
quantile_disc(n, 0.95) AS p95
FROM flat
GROUP BY cat
),
widths AS (
SELECT *,
GREATEST(1, CAST(round(COALESCE(p95, 0)) AS INTEGER)) AS cap,
LEAST(GREATEST(1, CAST(round(COALESCE(p95, 0)) AS INTEGER)), 12 - 1) AS regular_buckets
FROM totals
),
widths2 AS (
SELECT *,
GREATEST(1, CAST(ceil(cap * 1.0 / regular_buckets) AS INTEGER)) AS width
FROM widths
),
binned AS (
SELECT f.cat, f.cwv_val, w.fleet_n, w.fleet_size, w.sample, w.with_any, w.width, w.regular_buckets,
CASE WHEN f.n IS NULL THEN NULL
ELSE LEAST(CAST(FLOOR(f.n * 1.0 / w.width) AS INTEGER), w.regular_buckets)
END AS bucket_idx
FROM flat f
JOIN widths2 w ON f.cat = w.cat
)
SELECT cat, fleet_n, fleet_size, sample, with_any, width, regular_buckets,
bucket_idx,
COUNT(*) AS n,
quantile_disc(cwv_val, 0.5) AS median,
COUNT(*) FILTER (WHERE cwv_val IS NOT NULL) AS total_cwv,
COUNT(*) FILTER (WHERE cwv_val IS NOT NULL AND cwv_val <= 0.1) AS good
FROM binned
WHERE bucket_idx IS NOT NULL
GROUP BY cat, fleet_n, fleet_size, sample, with_any, width, regular_buckets, bucket_idx
ORDER BY cat, bucket_idx;