For Agents
Query Chrome real-user performance data and Core Web Vitals (LCP, INP, CLS) for any public origin or URL with no instrumentation required.
Use for: Get the latest Core Web Vitals for example.com, Retrieve LCP and INP for a specific page URL, Compare phone vs desktop performance for our origin, Pull a six-month history of Core Web Vitals for our site
Not supported: Does not run synthetic audits, instrument first-party analytics, or collect non-Chrome data — use for querying aggregated Chrome real-user Core Web Vitals only.
The Chrome UX Report (CrUX) API exposes aggregated, anonymised real-user performance data collected from Chrome users for any sufficiently popular public origin or page URL. It returns Core Web Vitals — Largest Contentful Paint, Interaction to Next Paint, Cumulative Layout Shift — plus First Contentful Paint, Time to First Byte, and form-factor splits. Performance teams use it to track field metrics for sites they own and benchmark competitors' real-user performance.
Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the Chrome UX Report API, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with Chrome UX Report API.
Query the latest 28-day Core Web Vitals for any public origin
Query historical six-month time series of Core Web Vitals at the URL or origin level
Filter results by form factor — phone, tablet, desktop
Retrieve metric distributions across good, needs improvement, and poor buckets
Benchmark a competitor origin against your own real-user performance
Patterns agents use Chrome UX Report API for, with concrete tasks.
★ Core Web Vitals Dashboard
Performance engineers ingest CrUX queryRecord results into a dashboard that shows LCP, INP, and CLS distributions for owned origins, broken down by form factor. The data is real-user field data — no synthetic or RUM instrumentation required — which makes it the canonical source for Google's Search ranking signal. Most teams refresh weekly because the dataset is calendar-aligned.
POST /v1/records:queryRecord with origin=https://example.com and metrics=["largest_contentful_paint","interaction_to_next_paint","cumulative_layout_shift"] and return p75 values.
Historical Trend Analysis
Engineering managers track week-by-week regression and improvement of Core Web Vitals using queryHistoryRecord, which returns a six-month rolling time series. This shows whether shipped optimisations actually moved field metrics rather than only synthetic ones. The same call also surfaces form-factor splits so teams can isolate mobile-only regressions.
POST /v1/records:queryHistoryRecord with url=https://example.com/checkout and metric=largest_contentful_paint and return the six monthly p75 values.
Competitor Benchmarking
Product teams query CrUX for competitor origins to benchmark their real-user performance. Because CrUX is public for any origin meeting the eligibility threshold, no special access is required. This is widely used in retail and media verticals to scope optimisation roadmaps against the market.
POST /v1/records:queryRecord for origin https://competitor.com formFactor=PHONE and return whether all three Core Web Vitals pass.
AI Agent Performance Reporter via Jentic
An AI agent through Jentic runs an on-demand performance check — fetching the latest CrUX data for a list of owned origins, summarising which fail Core Web Vitals thresholds, and recommending where to invest. Jentic isolates the API key so the agent never sees the raw key value.
Through Jentic, search chromeuxreport_query_record, load schema, and execute it for origin https://example.com formFactor=PHONE and return p75 LCP.
2 endpoints — the chrome ux report (crux) api exposes aggregated, anonymised real-user performance data collected from chrome users for any sufficiently popular public origin or page url.
METHOD
PATH
DESCRIPTION
/v1/records:queryRecord
Query the latest 28-day CrUX record for an origin or URL
/v1/records:queryHistoryRecord
Query rolling six-month CrUX history for an origin or URL
/v1/records:queryRecord
Query the latest 28-day CrUX record for an origin or URL
/v1/records:queryHistoryRecord
Query rolling six-month CrUX history for an origin or URL
Three things that make agents converge on Jentic-routed access.
Credential isolation
Google Cloud API keys are stored encrypted in the Jentic vault (MAXsystem). Agents call CrUX with scoped access — the raw API key string never enters the agent's context.
Intent-based discovery
Agents search Jentic by intent (e.g. 'get core web vitals for origin') and Jentic returns the records.queryRecord operation with its parameter schema, including form factor enums.
Time to first call
Direct integration: 0.5-1 day for project setup, API key creation, and request signing. Through Jentic: under 30 minutes — search, load, execute.
Alternatives and complements available in the Jentic catalogue.
Specific to using Chrome UX Report API through Jentic.
What authentication does the Chrome UX Report API use?
It uses a Google Cloud API key passed as the key query parameter. No OAuth is required since CrUX data is aggregated and public. Through Jentic, the API key is stored encrypted in the Jentic vault and the agent calls CrUX without ever holding the raw key string.
Can I query Core Web Vitals for any URL?
Only for URLs and origins that meet the CrUX eligibility threshold — enough Chrome real-user samples in the 28-day window. POST /v1/records:queryRecord with either the origin or url field; if the URL has insufficient data the API returns 404 and you should fall back to the origin-level query.
What are the rate limits for the Chrome UX Report API?
Google enforces a default of 150 queries per minute per project on CrUX. Higher quota can be requested via the Google Cloud console. The dataset itself updates daily, so caching responses for several hours is the standard pattern.
How do I pull six months of LCP history through Jentic?
Use the Jentic search query "chrome ux report history record" to discover the records.queryHistoryRecord operation, load its schema, and execute it with the origin or url and metric=largest_contentful_paint. Run pip install jentic to get started.
Does CrUX cover non-Chrome browsers?
No. The dataset is collected only from opted-in Chrome users on devices that meet the criteria. Use a separate RUM provider if you need data from Safari, Firefox, or Edge users.
Is the Chrome UX Report API free?
Yes, the API is free within the default project quota. The underlying CrUX dataset is also published as a free public BigQuery dataset for callers who need bulk historical analysis.
GET STARTED