Performance
Core Web Vitals
Also called CWV.
Core Web Vitals is Google's set of field metrics for loading, interactivity, and visual stability: LCP, INP, and CLS. A page passes when its 75th percentile for each metric is in the good range.
How it is measured
Good thresholds are LCP at or under 2,500 ms, INP at or under 200 ms, and CLS at or under 0.1, each at the 75th percentile of real visits, split by mobile and desktop. A page needs all three to pass.
The data comes from CrUX or your own real-user monitoring, not from a single lab run. Lighthouse can estimate LCP and CLS and approximate INP behavior, but it is a diagnosis tool, not the verdict.
Worked example
A WordPress blog reports LCP 3,400 ms, INP 140 ms, and CLS 0.04 on mobile. Two of three pass, so the page fails Core Web Vitals. Resizing the hero and preloading it brings LCP to 2,300 ms, and the assessment turns green about four weeks later.
A second template has LCP 1,800 ms and INP 310 ms. A chat widget's main-thread work is the cause, and removing it on first load brings INP to 170 ms.
How it differs
Core Web Vitals is the set of three. Largest Contentful Paint is the loading metric, Interaction to Next Paint the responsiveness metric, and Cumulative Layout Shift the stability metric. Page speed as a general idea is wider and includes things like TTFB and total load time, which are not Core Web Vitals.
Common errors
Treating a green Lighthouse score as a pass. Averaging instead of using p75. Ignoring mobile because desktop is green. Optimizing one metric while another worsens. Expecting the assessment to change the day after a fix. Still tracking First Input Delay, which has been replaced by INP.
In practice
Open the Core Web Vitals report for your origin and find the failing metric on mobile. Fix the largest cause on the top template, redeploy, and wait out the 28-day window. Add RUM so you can see progress before CrUX catches up.
See also
Largest Contentful Paint, Interaction to Next Paint, Cumulative Layout Shift