# VitalLens: Alerts, exports & backups

> Core 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.

Page: https://developers.zactonz.com/wordpress/plugins/vitallens/alerts/

Complete documentation for this product: https://developers.zactonz.com/wordpress/plugins/vitallens.md

## Alerts that earn their send

Most tools alert on a percentage change, which is close to useless for Core Web Vitals: the Chrome UX Report gives CLS on a 0.01 grid, so the smallest move a healthy page can make is a double-digit percentage. VitalLens judges a change by **how much of the remaining margin it consumed**. A metric that spends a third of its headroom gets an email while it is still passing; a metric that ticks by one grid step does not.

Four alerts, each switched on or off separately in Settings:

- A page starts failing for real visitors.
- A page is running out of headroom.
- A page starts passing again. Off by default, because good news should be opt-in.
- Checks stop running.

## Exports

Three ways to get the data out:

- **Download CSV** on the dashboard gives every tracked page with its latest reading, as raw numbers a spreadsheet treats as numbers.
- **Export history** on a page's report gives that page's whole stored history, one row per check.
- **Save as PDF** opens a printable, branded site-wide report and your browser's print dialog, where "Save as PDF" is a destination.

The last one is deliberate. A plugin that bundles a PDF engine ships megabytes of vendored code, a GD and mbstring dependency and a memory limit a cheap host will not grant, to redraw a report the browser renders perfectly already.

![The printable VitalLens site-wide report: a header with the site and generation time, the summary that 2 of 6 pages are failing, counts, and a table of every tracked page with its source, score, LCP, INP, CLS and check time](https://developers.zactonz.com/assets/images/wordpress/vitallens-5.webp)

*The site-wide report: every tracked page in one table, ready to print or save as a PDF.*

## Backups

Every time the plugin is deactivated, which is the step before every delete, a snapshot of every tracked page, check and setting is written to your uploads folder. It lives outside the plugin folder, so deleting the plugin cannot take it, and the Settings screen restores it in one click. The API key is never written to a snapshot.

## Your data stays yours

Updating never touches your data. Deactivating stops the schedule. Deleting keeps your tracked pages and every stored check, so re-installing picks up exactly where you left off. If you genuinely want the tables gone, tick the box under **Your data** on the Settings screen before deleting; it is off by default.
