Check the setup
- Python 3.10 or newer
- A notebook environment such as Jupyter or Google Colab
- A Google API key saved in the CRUX_API_KEY environment variable
Real-user Chrome experience metrics for building Core Web Vitals monitors from origin-level CrUX records.
From source to product signal
The CrUX API returns origin-level p75 metrics such as LCP and INP. Start with one origin you are authorized to monitor. CrUX covers opted-in Chrome users, not synthetic tests, and small origins can be missing.
Install the packages, then run the notebook cell.
python -m pip install pandas requests
import os
import pandas as pd
import requests
response = requests.post(
"https://chromeuxreport.googleapis.com/v1/records:queryRecord",
params={"key": os.environ["CRUX_API_KEY"]},
json={"origin": "https://developer.chrome.com"},
timeout=30,
)
response.raise_for_status()
record = pd.json_normalize(response.json())
print(record)Test a useful signal
Test whether CrUX can power a bounded real-user performance card.
Google is a company source. Last verified 2026-08-18. Temporal coverage: rolling 28-day CrUX collection windows.