Core Web Vitals: How to Pass Them (2026)
Core Web Vitals (LCP, INP, and CLS) are a Google ranking factor. Here's what each one means, the thresholds to hit, and how to pass them.
Core Web Vitals are Google's three metrics for real-world page experience. They're a confirmed — if modest — ranking factor, but the bigger reason to care is that passing them means a faster, smoother, less frustrating site that simply converts better. This guide explains each metric in plain English, the exact thresholds to hit, and the specific fixes that get you there.
The three metrics and their thresholds
- LCP — Largest Contentful Paint: how long until the largest visible element (usually your hero image or headline) has rendered. Good: under 2.5s. Needs improvement: 2.5–4s. Poor: over 4s.
- INP — Interaction to Next Paint: how quickly the page visibly responds after a tap or click, measured across the whole visit. Good: under 200ms. Needs improvement: 200–500ms. Poor: over 500ms. (INP replaced the older FID metric in March 2024 and is stricter.)
- CLS — Cumulative Layout Shift: how much the layout unexpectedly jumps around as the page loads. It's a unitless score. Good: under 0.1. Needs improvement: 0.1–0.25. Poor: over 0.25.
Field data vs. lab data (why your score "changes")
This trips people up constantly. There are two ways to measure Core Web Vitals:
- Field data (also called CrUX) is what real Chrome users experienced on your pages over the last 28 days. This is what Google uses for ranking. You see it in the Core Web Vitals report in Search Console.
- Lab data is a single simulated load in a controlled environment (like Lighthouse or PageSpeed Insights). It's great for debugging because it's repeatable, but a single lab run can differ from what real users actually get.
Optimise using lab data for fast iteration, but judge success by the field data in Search Console — that's the number that affects rankings.
How to pass each one
LCP (loading)
- Compress the hero image and serve WebP/AVIF (see our optimise your images and alt text guide).
preloadthe LCP image so the browser fetches it early — and do not lazy-load it.- Serve from a CDN and cut render-blocking CSS/JS above the fold.
- Improve server response time (time to first byte) — often the hidden floor under LCP.
INP (responsiveness)
- Break up long JavaScript tasks so the main thread isn't blocked when the user taps.
- Defer or remove non-critical scripts, especially heavy third-party widgets (chat, ads, A/B tools).
- Avoid doing expensive work synchronously in event handlers.
CLS (visual stability)
- Always set
widthandheight(or aspect-ratio) on images and video. - Reserve space for ads, embeds, and iframes so nothing pushes down when they load.
- Preload web fonts and use
font-display: optional/swapto avoid big text reflows. - Never insert content above existing content after load unless it's in response to a user action.
The hidden LCP lever: server response time
One factor you can't fix with image compression alone is how long your server takes to send the first byte. Sluggish, overcrowded shared hosting puts a hard floor under your load time. If your time to first byte is consistently slow, a fast budget host like Hostinger is often the cheapest single win available, and it lifts LCP across every page at once.
FAQ
How much do Core Web Vitals affect rankings? They're a real but modest tiebreaker. Content relevance and links matter more — but when two pages are close, page experience can decide it, and the conversion benefit is worth it regardless.
Why does my Lighthouse score jump around? Lab runs vary with network and CPU conditions. Trust the 28-day field data in Search Console for the real verdict.
Do I need to pass all three? A URL is considered to pass only when all three are in the "good" range for enough real users. Fix the worst one first.
Measure first, then fix
Start with a quick check of a single page in the free Audit SEO tool to catch the on-page issues that hurt loading and layout, then watch the Core Web Vitals report in Search Console for the real-user field data that decides rankings. Because these regressions usually creep in through a template change, our improve page speed guide covers how to keep them from coming back site-wide.
Catch template-wide regressions
Vitals usually break template-wide, not page by page. Let Semrush or SE Ranking alert you the moment a shared template starts failing across many URLs — and remember that a faster host like Hostinger often lifts LCP everywhere at once.
Rugged Technologies Services Inc.
AuditSEO is built by Rugged Technologies Services Inc. We build and audit production websites and run the free on-page checker at AuditSEO, writing about the technical and on-page fixes that actually move rankings for small sites — no fluff, no keyword stuffing.