Reference guide · performance · Published 2026-08-14 · 3 min read
Core Web Vitals explained
Reference guide to Core Web Vitals. LCP, INP and CLS thresholds, how they are measured from field data, and what they mean for real user experience.
- ·Thresholds
- ·Field data
- ·Measure
Overview
Core Web Vitals are the three Google-selected metrics that describe how a real user experiences loading, responsiveness, and stability. They are measured from real field data (CrUX) and reported in Google Search Console's Core Web Vitals report, plus lab tools like Lighthouse.
LCP (Largest Contentful Paint)
LCP is when the largest content element above the fold paints. Users experience it as "how long until the page looks done". Good is 2.5 seconds or less; needs improvement up to 4.0 seconds; poor above that. The largest element is usually a hero image, a heading, or a video poster. Fixes concentrate on that one element: preload it, size it with the correct asset, and stop render-blocking CSS from delaying it.
INP (Interaction to Next Paint)
INP measures the longest delay between a user interaction (tap, click, keypress) and the next paint after it. It replaced FID as the responsiveness metric during 2024. Good is 200ms or less; needs improvement up to 500ms; poor above that. Long main-thread work, heavy JavaScript after load, and third-party scripts are the usual causes. Deadline 2024, the field data now fully uses INP, so a site can score on it even when lab tools still report FID.
CLS (Cumulative Layout Shift)
CLS is the sum of unexpected layout shifts, measured as the product of distance and impact. Good is 0.1 or less; needs improvement up to 0.25; poor above that. Common causes: images and embeds without reserved dimensions, injecting fonts that change metrics, late-loading ads or banners that push content, and content in a container with no fixed size. Reserve space for everything that appears later.
How to measure
- Google Search Console, Core Web Vitals report: real field data per page or group, with the breakdown of LCP, INP, and CLS. Use the "open report" links for the exact affected example URLs.
- PageSpeed Insights: a field summary plus a lab Lighthouse run for the same URL, which is the single best free tool for paired data.
- Lighthouse in dev tools: instant, lab-only, not field data. Use it for iteration and Search Console for reality.
- Web Vitals JavaScript library: add to a page to watch the real numbers in the console during development.
- Lab versus field: lab scores are stronger than field for catching regressions before release; field scores are what actually matter to users and rankings. A site can be good in both or poor in lab and field, so check both.
The thresholds in one view
| Metric | Good | Needs improvement | Poor |
|---|---|---|---|
| LCP | up to 2.5s | 2.5 to 4.0s | over 4.0s |
| INP | up to 200ms | 200 to 500ms | over 500ms |
| CLS | up to 0.1 | 0.1 to 0.25 | over 0.25 |