Performance is
non-negotiable.
Set hard limits on JavaScript size, image weight, route speed, and Core Web Vitals thresholds. Breaches trigger Slack alerts, webhooks, or fail the CI build before code reaches production.
Enforce limits,
not wishes.
Set hard limits on JavaScript size, image weight, route speed, and Core Web Vitals. Breaches trigger Slack alerts, webhooks, or fail the CI build before code reaches production.
Image weight on /blog/[slug] exceeded the 500 KB budget by 112 KB. Largest contributor: hero-og-image.png (640 KB).
- Block PRs that breach a budget via @pagepulse/ci
- Tag every regression to the offending commit
- Promote a budget to an SLO with burn-rate tracking
- Auto-file Linear, Jira, or GitHub issues on breach
- Stream budget breaches to any webhook endpoint
Sensible defaults to start from.
These are the budgets we recommend as a starting point. Adjust per route based on your actual real-user data, then tighten over time.
Enough for a modern framework, router, and your app code. Forces you to tree-shake and lazy-load.
Google's 'good' threshold at the 75th percentile of real-user traffic.
Google's 'good' threshold. Interactions over 200ms feel sluggish to most users.
Google's 'good' threshold. Layout shifts above 0.1 are noticeable and erode trust.
Cap hero and product images. Forces modern formats (AVIF, WebP) and proper srcset.
Per-route budget for client-side navigation. Keeps your app feeling instant.
Ready to ship
faster pages?
Join thousands of frontend teams monitoring Core Web Vitals with PagePulse. Install in 2 minutes, see results today.
No credit card required