Astro Core Web Vitals
Field-data LCP, CLS, and INP tracking with regression alerts.
The Astro-specific angle
Astro's default output is nearly perfect on Core Web Vitals — the regression usually comes from a client:load island that grew unnoticed. Since Astro ships zero JS by default, a single heavy island doubles your INP p75.
What we watch on Astro
- INP regression traced to a client:load or client:visible island
- LCP shift when an integration like @astrojs/image is misconfigured
- CLS from View Transitions running before web-font swap
Universal core web vitals checks
Same on every stack — these run on your Astro site out of the box:
- Largest Contentful Paint (LCP) — 75th percentile, tracked hourly
- Cumulative Layout Shift (CLS) — with the specific shifting element flagged
- Interaction to Next Paint (INP) — replaces FID for 2026 rankings
- Alerts fire when the 7-day rolling baseline degrades by >20%
Reference thresholds we alert against
How Lemwatch handles it on Astro
We track the specific route where CWV degraded, so you know which island to convert back to client:idle or server-only.
More Astro monitoring guides
Core Web Vitals on other stacks
Astro Core Web Vitals — FAQs
We track the specific route where CWV degraded, so you know which island to convert back to client:idle or server-only.
Astro's default output is nearly perfect on Core Web Vitals — the regression usually comes from a client:load island that grew unnoticed. Since Astro ships zero JS by default, a single heavy island doubles your INP p75.
No. Lemwatch is fully black-box — we monitor what visitors and Googlebot see. Add your domain, checks start within 60 seconds, and no plugin, SDK, or code change is required in your Astro app.
Pro plans run 1-minute checks from multiple regions. When a regression trips a rule (e.g. p75 LCP up >20% for 3 consecutive windows, or cert expiry <7 days), the notification fires within the next check cycle — typically 60 seconds.
Yes. Add HTTP basic auth headers or a bearer token per site, and Lemwatch treats staging as an isolated site — flaky preview envs won't pollute your production status board.

