Overview
Pulse checks a page against Google's actual Core Web Vitals: field data from the Chrome UX Report (real Chrome users, a rolling 28-day window) and a single live Lighthouse lab run. Field data is what Google's search ranking signal actually uses. Lab data is what most site-owners have only ever looked at, a single synthetic run, useful for debugging a specific page load but not the same measurement as the ranking signal.
REST API
POST /api/check
curl -X POST https://pulse.allthepossibles.com/api/check \
-H "content-type: application/json" \
-d '{"url": "https://example.com"}'
Response is a CheckReport: vitals.field (real-user data, null when the origin doesn't have enough Chrome traffic yet, which is common and not a check failure), vitals.lab (this run's Lighthouse numbers), and passesCoreWebVitals (true only when all three field metrics rate "good" — Google's actual bar, not an invented one).
MCP server
{
"mcpServers": {
"pulse": { "url": "https://pulse.allthepossibles.com/mcp" }
}
}
check_vitals takes the same input shape as /api/check and returns the report as JSON text content.
The three metrics
| Metric | Good | Needs improvement | Poor |
|---|---|---|---|
| LCP (Largest Contentful Paint) | ≤ 2.5s | 2.5s–4s | > 4s |
| INP (Interaction to Next Paint) | ≤ 200ms | 200ms–500ms | > 500ms |
| CLS (Cumulative Layout Shift) | ≤ 0.1 | 0.1–0.25 | > 0.25 |
These are Google's own published thresholds, not this product's opinion. INP replaced FID as the official responsiveness metric in March 2024, most competing tools and dashboards still quote the old one.
Rate limits
20 checks/minute per caller IP during preview, tracked in D1. A 429 means you've hit it.
Known limitations
Field data legitimately doesn't exist for lower-traffic sites and pages, CrUX needs a real sample size before Google will report on an origin. That's not a broken check, it's an honest "not enough data yet." Lab data is a single Lighthouse run; treat it as directional; run-to-run variance on lab metrics is real and well-documented, not unique to this tool.
Multi-client monitoring with alerts on regression, the actual reason an agency would pay for this rather than running a free check by hand, isn't built yet. Today this is the check engine only.
Support
Found a bug or a false reading: support@allthepossibles.com.