Skip to content

crux-api

Use when querying Chrome UX Report field data, comparing lab vs field metrics, tracking Core Web Vitals trends, or correlating performance with search rankings. Also use when verifying CWV pass rates or checking p75 thresholds.

ModelSource
sonnetpack: performance
Full Reference

Chrome UX Report (CrUX) is real user performance data collected from Chrome browsers worldwide. Unlike Lighthouse lab data, CrUX reflects actual user experiences — network conditions, device capabilities, and geographic distribution all factored in. Google uses CrUX field data (not lab data) as the signal for Core Web Vitals ranking.

PropertyValue
Base URLhttps://chromeuxreport.googleapis.com/v1
AuthAPI key via ?key=API_KEY query param (no OAuth)
Env varCRUX_API_KEY
Rate limit150 QPM per Google Cloud project (free, cannot be increased)
Data window28-day rolling average
Update frequencyDaily ~04:00 UTC (queryRecord) / Weekly Monday (History API)
Data lag~2 days behind current date
Official docshttps://developer.chrome.com/docs/crux/api
I want to…File
Get an API key, configure env vars, and understand rate limitsreference/setup.md
Query site-wide CWV data for an origin or batch multiple originsreference/query-origin.md
Query a specific page URL or compare mobile vs desktopreference/query-url.md
Understand CWV thresholds or parse histogram and p75 valuesreference/metrics.md
Analyze trends with the History API, detect regressions, or query BigQueryreference/historical-data.md
Handle 404s, rate limit errors, retry with backoff, or set CI gatesreference/error-handling.md

Usage: Read the reference file matching your current task from the index above. Each file is self-contained with code examples and inline gotchas.


┏━ 📊 crux-api ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ ┃ Query real-user CWV field data from Chrome UX Report ┃ ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛