August 4, 2026 · 9 min read
Core Web Vitals in plain English: what LCP, INP and CLS really mean
Google's Core Web Vitals sound intimidating, but the underlying ideas are simple. Here's what LCP, INP and CLS actually measure, and how to move each of them in the right direction.
Core Web Vitals are Google's attempt to quantify how a real page feels to a real user. Instead of measuring abstract things like total bytes shipped or the number of server round-trips, they measure moments — the moment the main content shows up, the moment a tap turns into a response, and the moment the layout stops jumping around. Three numbers, three moments, one job: describe whether your page respects the person sitting on the other side of it.
Largest Contentful Paint, or LCP, is the timestamp when the biggest visible element on the screen finishes rendering. On a marketing page that is usually the hero image or the hero heading. On an article it is often the featured image. The green threshold is 2.5 seconds, measured at the 75th percentile of real visits. Anything above four seconds is considered poor. LCP is dominated by three factors: how fast the HTML arrives, how quickly the browser discovers the hero asset, and how long that asset itself takes to download.
The single biggest LCP win for most sites is inlining a small critical CSS block and preloading the hero image. If the browser has to wait for a stylesheet before it knows the hero image exists, then wait for the image to download, LCP suffers twice. A preload hint in the document head lets the browser start fetching the image in parallel with the CSS, and the numbers usually drop by hundreds of milliseconds.
Interaction to Next Paint, or INP, replaced First Input Delay in early 2024. Where FID only looked at the very first tap, INP looks at every interaction and reports the worst one. The green threshold is 200 milliseconds. INP is a rough proxy for how much heavy JavaScript is blocking the main thread when the user actually tries to do something.
Bringing INP down is mostly about doing less work on the main thread. Break long tasks into smaller ones, defer non-essential scripts until after the page is interactive, and be honest about which of your third-party embeds actually earn their weight. Analytics, chat widgets, and A/B testing scripts are famously expensive; every one you can remove usually shows up as a lower INP.
Cumulative Layout Shift, or CLS, measures how much the layout jumps around during page load. Every time an element already on screen moves because a late-loading image, ad, or web font arrives, CLS goes up. The green threshold is 0.1. High CLS is more than a metric — it is genuinely infuriating for users, because a mis-tap on a shifting page can send you to an ad by mistake.
Killing CLS is boring, mechanical work. Set explicit width and height (or an aspect-ratio) on every image and video, so the browser can reserve the right amount of space before the file arrives. Reserve space for ads with fixed containers. Use font-display: optional or a small size-adjust so custom fonts do not push text down when they finally load. Every one of these fixes takes minutes and pays off forever.
The Vitals are measured on real users, not in a lab. That is important: your development machine on gigabit ethernet is not what Google is scoring. Install a lightweight real-user monitoring script — or use Search Console's Core Web Vitals report — to see what actual visitors experience. The gap between lab scores and field scores is often huge, especially for sites with a lot of mobile traffic.
It is also important to prioritize. Do not try to optimize every metric on every template at once. Pull up the Search Console report, sort by pages that fail, and pick the template with the highest impressions. Fix that first. A five-point improvement on your top landing page is worth more than a perfect score on a page nobody visits.
Do not confuse Core Web Vitals with Lighthouse scores. Lighthouse is a lab test that gives you a single number out of 100. It is useful for spotting regressions during development, but the Vitals score that actually affects ranking is the field data from real users. A Lighthouse score of 95 with poor field CLS will still hurt.
Finally, remember why any of this matters. Fast, stable, responsive pages are not a Google box-tick exercise. They are how your site tells visitors that you respect their time. Every ten percent of visitors you lose to a slow load is ten percent of the audience your content never reaches. Improving your Vitals is one of the highest-leverage forms of marketing there is, precisely because it is invisible when it works.