Chrome UX Report (CrUX): Field Data, Core Web Vitals

CrUX is Google's public real-user data of Chrome browsing performance — Core Web Vitals, TTFB, FCP. Used by PageSpeed Insights and Google Search ranking.

What is the Chrome User Experience Report (CrUX)?

The Chrome User Experience Report (CrUX) is Google's public dataset of real-world web performance data, aggregated from Chrome users who have opted in to syncing browsing history and have usage statistics enabled. It powers PageSpeed Insights, Search Console's Core Web Vitals report, and — most importantly — Google's page experience ranking signal.

CrUX is "field data" (real users) as opposed to "lab data" (synthetic tests like Lighthouse). Lab data is reproducible but doesn't reflect actual user devices, networks, or behaviors. CrUX captures the messy reality.

What CrUX measures

MetricWhat it tracksGood threshold
LCP (Largest Contentful Paint)Loading speed of main content≤ 2.5s
INP (Interaction to Next Paint)Responsiveness to user input≤ 200ms
CLS (Cumulative Layout Shift)Visual stability≤ 0.1
FCP (First Contentful Paint)First paint of any content≤ 1.8s
TTFB (Time to First Byte)Server response time≤ 800ms
FID (First Input Delay)Legacy responsiveness metric (replaced by INP March 2024)≤ 100ms

Reported as 75th percentile across users — a page is "good" only if 75% of real-world experiences meet the threshold.

How CrUX collects data

Anonymous, aggregated data from Chrome users who:

  • Opted in to syncing browsing history
  • Have not set a Sync passphrase
  • Have usage statistic reporting enabled
  • Are using a publicly-routable URL (no localhost, no internal IPs)

Data is reported per-origin and per-URL when there's enough traffic (typical threshold: thousands of monthly visits). Low-traffic URLs/origins won't appear in CrUX.

How to access CrUX data

ToolUse caseCost
PageSpeed InsightsQuick audit, single URLFree
Search ConsoleSite-wide CWV report by categoryFree
CrUX Dashboard (Looker Studio)Pre-built dashboard for any originFree
CrUX APIProgrammatic per-URL/origin lookupFree (with API key)
CrUX BigQueryHistorical data, custom analysisPay-per-query
web.dev/measureCombined lab + CrUXFree

CrUX API example

curl -X POST 'https://chromeuxreport.googleapis.com/v1/records:queryRecord?key=YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
    "origin": "https://example.com",
    "formFactor": "PHONE"
  }'

Response includes p75 metrics + histograms (Good / Needs Improvement / Poor distribution).

CrUX vs Lighthouse vs RUM

SourceTypeSampleBest for
Lighthouse / PageSpeed labSyntheticSingle test environmentReproducible audits, CI
CrUXField (Chrome users)28-day rolling, real Chrome usersGoogle ranking signal, real-world UX
Self-hosted RUMField (your users)All your traffic + non-Chrome browsersDetailed segmentation, alerts

For complete picture: lab tests in CI + CrUX in Search Console + your own RUM.

Why CrUX matters for SEO

Google uses CrUX data as a Search ranking signal — specifically the Core Web Vitals (LCP, INP, CLS). Pages that fail CWV thresholds may rank lower, especially in competitive queries where multiple results have similar relevance. Failing CrUX has indirect SEO cost: higher bounce rate, fewer clicks, worse user signals.

The CWV thresholds are evaluated at p75. So "your average user is fine" isn't enough — the slowest 25% must also pass.

Common CrUX gotchas

  • No data for low-traffic pages. CrUX requires sufficient traffic to publish per-URL data. Small sites get only origin-level data.
  • 28-day rolling window. Fixes you ship today take ~4 weeks to fully reflect in CrUX.
  • Chrome-only. Doesn't cover Safari, Firefox, mobile webviews. Self-hosted RUM is needed for full-browser picture.
  • Aggregated. Can't drill into specific users or sessions; only distributions.
  • Origin vs URL. Origin metrics are page-weighted average; URL metrics are per-URL.
  • FID is being phased out. Replaced by INP in March 2024. Update audits to reference INP.

Improving your CrUX scores

For LCP

  • Optimize hero image (compression, modern format, preload)
  • Server response time (TTFB) — caching, CDN
  • Eliminate render-blocking resources

For INP

  • Reduce long tasks (>50ms)
  • Defer non-critical JavaScript
  • Use requestIdleCallback for low-priority work
  • Avoid heavy hydration on user interaction

For CLS

  • Always specify width/height on images and videos
  • Reserve space for ads and embeds
  • Avoid inserting content above existing content
  • Use font-display: optional for fonts

FAQ: Chrome UX Report

Is CrUX free?

Yes for PageSpeed, Search Console, Dashboard, and API (with API key). BigQuery has per-query costs.

How long until my fixes show up in CrUX?

CrUX uses a 28-day rolling window, so improvements are gradual. Substantial fix shows partial impact in 1 week, full impact in 4+.

Why doesn't my site appear in CrUX?

Insufficient traffic, blocked by login wall, or not on a public URL. Sites with low traffic get origin-level only.

What's the difference between CrUX and Lighthouse?

CrUX = field data (real users). Lighthouse = lab data (synthetic single test). They often disagree because real users have varied devices/networks.

Is CrUX a Google ranking signal?

Yes — Core Web Vitals (LCP, INP, CLS from CrUX) are part of Google's page experience ranking signal.

Can I see CrUX for competitors?

Yes — origin-level data is public via API or PageSpeed Insights for any sufficiently-trafficked site.

What replaced FID?

INP (Interaction to Next Paint) replaced FID as a Core Web Vital in March 2024. INP captures responsiveness across the entire page lifecycle, not just first interaction.

Verify CrUX-grade performance with LoadFocus

LoadFocus runs Lighthouse audits from 25+ regions and tracks Core Web Vitals over time, helping you ship improvements that show up in CrUX. Sign up free at loadfocus.com/signup.

How fast is your website?

Elevate its speed and SEO seamlessly with our Free Speed Test.

Free Website Speed Test

Analyze your website's load speed and improve its performance with our free page speed checker.

×