Core Web Vitals are LCP, INP and CLS: loading, interaction responsiveness and visual stability, assessed at the 75th percentile of field data when available.
Measure the right evidence
CrUX field data represents eligible real Chrome visits, while a site’s own RUM can cover a different audience. The Core Web Vitals assessment uses the 75th percentile: LCP at most 2.5 seconds, INP at most 200 milliseconds and CLS at most 0.1 are the published good thresholds.
How to inspect it
Start with field data by device and URL group. Record the period, coverage and whether data is absent, then use a reproducible lab trace to investigate the affected template. For each metric, identify the responsible layer: server response and critical content for LCP, long tasks and event handlers for INP, or missing layout reservations for CLS.
How to implement or improve it
Change one bounded cause at a time and re-test the same route and device profile. Preserve a before-and-after trace, check that the visual result and essential interaction still work, and wait for new field data before describing a broad improvement. I label incomplete field data as incomplete rather than treating it as a pass.
Limits and common mistakes
The recurring failure is chasing a score with blanket minification or deferral. A technically smaller bundle can still delay a needed interaction or create a layout shift. Separate diagnostic evidence from a ranking promise.
Use field and lab evidence for different jobs. Field data is an aggregated report of real visits and its reported assessment is based on the 75th-percentile experience for the relevant population; it can be absent for low-traffic pages. Lab data is a controlled trace that helps reproduce and diagnose a likely cause. Record the device class, URL group, collection period and whether the field sample is available. For example, a lab LCP trace may show an unoptimised hero image, while field data identifies that the issue affects mobile visitors. Fix the image, server response or render path in a small release, then confirm the rendered page and wait for the next field-data window rather than claiming an immediate population change.