Stop shipping performance regressions.

Vitalgate runs Lighthouse on every pull request, compares it against your baseline, and fails the PR check when a change breaks your budgets.

Free for one repository · No credit card · 14-day refund on Pro

Lazy-load the hero image#1042Open
a1f3c9efeat: lazy-load the hero image
VercelDeploying preview…
VitalgateWaiting for the previewRequired

6 of 10 developer tools fail Core Web Vitals.

Real Chrome users, 75th percentile, the 28 days to October 8, 2026. Source: Chrome UX Report.

  • GitHub
  • Stripe
  • Netlify
  • Slack
  • Vercel
  • Linear
  • Notion
  • Supabase
  • Figma
  • Atlassian
Check your site
How it works

From pull request to production, with guardrails.

01

Connect

Install the GitHub App and pick the repos to monitor, with granular permissions per repo.

02

Budget

Pick a preset — default, strict or relaxed — for LCP, CLS, FCP, TBT and the performance score. Each metric is either required or a warning.

03

Enforce

Every PR runs Lighthouse, compares against your baseline, posts the results on the PR, and fails the check when a required budget is broken.

Performance engineering, in your existing GitHub flow.

Results on the pull request

Every metric against its budget and your baseline, in a comment updated on each push, plus a "Vitalgate" check you can make required so a broken budget can't be merged.

vitalgate[bot]commented on acme/storefront#1042

Vitalgate: a required performance budget was exceeded

MetricThis PRChange vs baselineBudgetResult
Performance score81-11≥ 90 (required)
Largest Contentful Paint2.91s+38%≤ 2.50s (required)
Cumulative Layout Shift0.020no change≤ 0.100
First Contentful Paint1.42s+2%≤ 1.80s
Total Blocking Time0.24s+33%≤ 0.30s

Median of 3 Lighthouse lab runs on this workflow's runner. Full report on Vitalgate

VitalgateA required budget was exceededRequired
VercelPreview deployed
Example of the comment and check Vitalgate adds to a pull request

Lighthouse on every pull request

Three Lighthouse runs on every push, on your own GitHub Actions runner or against your preview deployment. The median run counts, so one noisy run can't fail a PR.

Budgets · acme/storefront
LCP:  max: 2500ms severity: fail
FCP:  max: 1800ms severity: warn
CLS:  max: 0.10   severity: warn
PERF: min: 90    severity: fail

Smart alerts

Email, Slack, Discord, Teams, Google Chat and webhook alerts on threshold breaches.

Required checks

Mark the Vitalgate check as required and a broken budget can't be merged.

Runs on your runner

Audits run in your own GitHub Actions. Only the metrics come back.

Multi-tenant orgs

Invite your team as admins or view-only members, per workspace.

One dashboard for every repo, every metric, every regression.

See exactly which repos are healthy and which PRs broke something, without digging through CI logs.

  • Workspace-wide performance score, updated on every PR
  • Per-repo health score and failing-budget count
  • Every PR checked against your budgets, pass or fail
  • Alerts to email, Slack, Discord, Teams or Google Chat when something breaks
acme/storefront, last 30 days
0/100
30d agotoday
Pricing

Simple plans that scale with your repos.

Free

$0/mo

Try it on your main repo.

  • 1 connected repository
  • Unlimited PRs audited
  • Core Web Vitals budgets
  • Email alerts

Pro

Recommended
$19/mo$29

Founding price, kept while you stay subscribed. 50 of 50 left.

For teams protecting more than one repo.

  • Unlimited repositories
  • Slack, Discord, Teams, Google Chat + webhook alerts
  • Custom alert rules
  • Weekly digest email

Not for you? Ask within 14 days of your first Pro payment for a full refund. See all plans

Francis Castillo

Built by one developer, in the open

I'm Francis, a developer from the Dominican Republic, and I build Vitalgate on my own. If it doesn't work with your setup, write to me through the contact form: I read and answer every message.

Not the right fit if you need production monitoring around the clock from many locations: Vitalgate checks pull requests, before they ship. See how it compares.

Frequently asked questions

Your next PR shouldn't slow your site down.

Install Vitalgate in 5 minutes. Free for your first repo, no credit card.