VitalLens
v1.0.0Core Web Vitals monitoring for WordPress that keeps its own history, tells real-visitor data from lab tests, and names the element and cause behind a failing metric.
VitalLens checks the pages you pick against Google PageSpeed Insights on a schedule, stores every result in your own database, and shows you what changed over time. It uses your own free Google API key and sends nothing anywhere else. The product site is vitallens.zactonz.com; this page is the reference.

The dashboard states the situation in a sentence, including when the situation is "nothing has run".
Real-user data where Google has it, a lab test where it does not#
Google publishes real-user measurements, the Chrome UX Report, only for URLs with enough traffic, which most individual pages never have. Plenty of tools quietly show a lab score and let you believe visitors measured it. VitalLens labels every number as real visitors, origin only or lab only, because a green page nobody has ever measured is worse than no answer.
The cause, not just the symptom#
"CLS 0.16" names the metric. "A 0.162 shift on a layout container, caused by an image with no explicit size and two web fonts" is something you can go and fix. For each failing metric VitalLens names the element involved, the cause Lighthouse attributed it to, and how much of the metric it accounts for. It reads seventeen of Lighthouse's diagnostic audits to do so, including the insight audits that Lighthouse 13 moved most of its findings into.

A page's report: which data Google had, the lab test, and the history built from your own stored checks with the failing threshold drawn on the chart.
What you get#
- A two-dot column on the Posts and Pages lists: a filled disc for real visitors, a ring for the lab test. Hover either for the latest LCP, INP and CLS.
- A dashboard that states the situation in a sentence, and a dashboard widget switched on and off from Screen Options like any other.
- History for every tracked page, built from your own stored checks, with the failing threshold drawn on the chart and a readout on hover or with the arrow keys.
- Email alerts that fire before a page crosses a threshold, not only after. See Alerts, exports & backups.
- Check now on any page's report, so a page you have just fixed is re-measured immediately.
- Export: a branded, printable report you can save as a PDF, and CSV of every tracked page or of one page's whole history.
- Backups written automatically to your uploads folder whenever the plugin is deactivated, with one-click restore.

The two-dot column on the Pages list, with the hover card.
What it costs to run#
One call to Google per page per device, per run. Thirty pages on mobile and desktop checked daily is about 1,800 calls a month, against a free allowance of 25,000 a day. The Tracked pages screen shows the figure for your own selection before you save it. Checks run in the background a few pages at a time, and nothing is added to your front end: no script, no tracking, no extra requests for visitors.
External service#
The plugin connects only to the Google PageSpeed Insights API, at https://www.googleapis.com/pagespeedonline/v5/runPagespeed. Each check sends the public URL of a tracked page and the API key you entered. No post content, visitor data or personal information leaves your site, and nothing is sent to Zactonz. Google's terms of service and privacy policy apply to those requests.
Not affiliated#
VitalLens is developed by Zactonz Technologies and is not affiliated with, endorsed by or sponsored by Google. Google, PageSpeed Insights, Lighthouse and Chrome are trademarks of Google LLC.