Chrome UX Report (CrUX)

A public Google dataset with performance metrics from real Chrome user experiences. The source of field data for PageSpeed Insights and Search Console.

In brief

The Chrome UX Report (CrUX) is a public Google dataset containing aggregated user experience data (Core Web Vitals, FCP, TTFB) for millions of sites, collected from real Chrome browser users who have opted into statistics collection. CrUX is used in PageSpeed Insights, Google Search Console, and the CrUX API.

What Is CrUX

CrUX (Chrome UX Report) is an official Google dataset that collects real‑world performance data from web pages based on visits from Chrome browser users who have opted into statistics. Unlike synthetic tests (Lighthouse), CrUX shows how a page performs in the field. The data is anonymised and aggregated over a 28‑day rolling period.

CrUX is the source of field data for Google. If you improve lab scores but users still experience lag, CrUX will reveal that.

What Metrics Does CrUX Collect

CrUX includes key performance metrics that reflect user experience:

  • LCP (Largest Contentful Paint) — render time of the largest content element (good ≤ 2.5 s).
  • INP (Interaction to Next Paint) — interaction delay (good ≤ 200 ms). Replaces FID.
  • CLS (Cumulative Layout Shift) — layout instability (good ≤ 0.1).
  • FCP (First Contentful Paint) — first content paint (good ≤ 1.8 s).
  • TTFB (Time to First Byte) — server response time (good ≤ 800 ms).
TXT
CrUX presents metrics as a distribution:
- 'good' → percentage of users meeting the threshold
- 'needs improvement'
- 'poor'

Example: LCP: good: 85%, needs: 10%, poor: 5%

Where Is CrUX Used

  • PageSpeed Insights — the 'Field Data' tab comes from CrUX. If a page is not in the dataset, you will see only lab data.
  • Google Search Console → Core Web Vitals report — also uses CrUX data, grouped by URL or page group.
  • CrUX API — programmatic access for developers (query metrics for any site with sufficient traffic).
  • BigQuery — public CrUX dataset for advanced analysis (requires SQL skills).

Requirements for CrUX Inclusion

For a site or specific page to appear in CrUX reports, several conditions must be met:

  • Sufficient Chrome traffic — a minimum number of real visitors (exact threshold unknown, but typically a few hundred unique views over 28 days).
  • Public site — not behind login, not localhost, not staging.
  • HTTPS — most modern sites use it; without HTTPS, data may not be collected.
  • Statistics enabled — users must not block data sending (the default in Chrome is enabled).
If your site is new or has low traffic, you may not see data in CrUX. That’s normal. Start with lab tests and grow your audience.

CrUX API

The CrUX API allows you to programmatically fetch metrics for any URL or origin. Useful for automated Core Web Vitals monitoring.

JAVASCRIPT
// Example CrUX API request (JavaScript)
const response = await fetch('https://chromeuxreport.googleapis.com/v1/records:queryRecord?key=YOUR_API_KEY', {
  method: 'POST',
  body: JSON.stringify({
    origin: 'https://example.com',
    formFactors: ['PHONE', 'DESKTOP']
  })
});
const data = await response.json();
console.log(data.record.metrics);

Common questions

PageSpeed Insights uses CrUX as one of its sources (field data). It also runs a lab test (Lighthouse). So CrUX is part of PSI.
Only indirectly — by increasing traffic and delivering a good user experience. There is no way to force send data.
Likely because your site hasn’t yet reached the traffic threshold for Chrome users with statistics enabled. Wait until traffic grows.
No, CrUX collects data per form factor: phone, tablet, desktop. You can filter by them in the API and reports.
Daily, but data is aggregated over the last 28 days. Therefore metrics change smoothly without sharp spikes.
Direct contacts

Discuss your project?

Share your goals and website context — I will suggest a practical next step.

Chrome UX Report (CrUX) — What is it?