If you’ve looked at Google Search Console or run a PageSpeed Insights report, you’ve probably seen three letters staring back at you in red, yellow, or green: LCP, INP, and CLS. These are Google’s Core Web Vitals — a set of metrics designed to measure how a real person actually experiences a page, not just how fast it technically loads.
Here’s what each one means, why it exists, and what usually causes it to go wrong.
LCP — Largest Contentful Paint
What it measures: How long it takes for the largest visible piece of content on the screen to load and render. That’s usually a hero image, a banner, a video thumbnail, or a large block of text.
Why it matters: LCP is a proxy for “when does this page feel like it’s actually here?” A blank white screen for three seconds feels broken, even if the page is technically loading in the background.
Good score: Under 2.5 seconds.
What usually causes a poor LCP:
- Large, unoptimized images (especially hero images) that take too long to download
- Slow server response times
- Render-blocking CSS and JavaScript that delay the browser from displaying anything
- Fonts that load late and cause the main content to wait
Common fixes: Compressing and properly sizing images, serving images in modern formats like WebP or AVIF, using a content delivery network (CDN), and making sure the server responds quickly before any of this matters.
INP — Interaction to Next Paint
What it measures: How quickly a page responds when someone interacts with it — clicking a button, tapping a menu, typing into a field. INP measures the delay between that action and the moment the page visibly responds.
Why it matters: This is the metric that captures “why does this site feel sluggish even though it loaded fine?” A page can finish loading quickly and still feel unresponsive if every click triggers a noticeable lag before anything happens.
Good score: Under 200 milliseconds.
INP replaced an older metric called First Input Delay (FID) in 2024, because FID only measured the first interaction on a page, while INP looks at responsiveness across the entire visit.
What usually causes a poor INP:
- Heavy JavaScript that locks up the browser’s main thread
- Large third-party scripts (chat widgets, analytics, ad tags) competing for processing time
- Poorly optimized event handlers that do too much work on every click or tap
Common fixes: Breaking up long-running JavaScript tasks, deferring or lazy-loading non-essential scripts, and auditing third-party plugins and tags for ones that aren’t pulling their weight.
CLS — Cumulative Layout Shift
What it measures: How much the page’s visual layout shifts around after it starts rendering. The classic example is trying to tap a button, only for an ad or image to load above it and push it down — so you tap the wrong thing.
Why it matters: Unexpected layout shifts are disorienting and can cause real usability problems, from misclicks to people losing their place while reading.
Good score: A CLS value under 0.1 (this is a unitless score representing how much content moved and how far).
What usually causes a poor CLS:
- Images or video embeds without dimensions specified, so the browser doesn’t reserve space for them
- Ads or embeds that load late and push content down
- Web fonts that swap in and change text size or spacing after the page has rendered
- Content that’s dynamically injected above existing content (banners, cookie notices, promos)
Common fixes: Always specifying width and height (or aspect ratio) for images and embeds, reserving space for ads and dynamic content before they load, and choosing font-loading strategies that minimize visible text reflow.
Why these three, specifically
Together, LCP, INP, and CLS map onto three questions every visitor unconsciously asks within the first few seconds on a page:
- Is this thing loading? → LCP
- Does it respond when I touch it? → INP
- Can I trust where things are? → CLS
Google uses these metrics as part of its search ranking signals, but the more immediate impact is on the visitor in front of the screen. A page that scores well across all three tends to feel fast, stable, and responsive — which is the actual goal. The scores are just a way of measuring it.
Where to check your scores
Three free tools cover most needs:
- PageSpeed Insights — gives both lab data (simulated test) and real-world field data from actual visitors, where available
- Google Search Console — shows Core Web Vitals trends across your whole site, grouped by URL
- Chrome DevTools (Performance and Lighthouse panels) — useful for digging into why a specific page is scoring poorly
Most sites don’t need to chase a perfect score on every metric for every page. The more useful approach is identifying which metric is consistently weak across the site, understanding the one or two root causes behind it, and fixing those — the same handful of issues tend to be dragging down LCP, INP, and CLS across most pages on a given site.