Table of Contents
LCP < 2.5s, INP < 200ms, CLS < 0.1. Those are the 2026 Core Web Vitals thresholds. Google uses them as ranking signals. INP replaced FID in March 2024. Measure with PageSpeed Insights (lab) and Chrome UX Report / CrUX (field). Fix LCP with a fast host and optimized hero image, INP with less JavaScript, CLS with explicit image dimensions.
Key Takeaways
- LCP, INP, and CLS are the three Core Web Vitals that feed Google's ranking algorithm.
- INP (Interaction to Next Paint) replaced FID in March 2024.
- Field data (CrUX) is what counts for ranking — not lab data (PageSpeed).
- Most LCP failures are caused by slow hosting or unoptimized hero images.
- Most INP failures are caused by heavy third-party JavaScript.
- Most CLS failures are caused by images without width/height attributes.
1. What Core Web Vitals Actually Measure
- LCP — Largest Contentful Paint
- Time from navigation start until the largest visible element (usually a hero image or heading) is painted. Tracks loading performance. Reference: web.dev on LCP.
- INP — Interaction to Next Paint
- The longest delay between a user interaction (click, tap, keystroke) and the next visible frame. Tracks responsiveness. Replaced FID in March 2024. Reference: web.dev on INP.
- CLS — Cumulative Layout Shift
- How much the page visually shifts during loading. Score: 0.0 = no shift, 1.0 = everything moved a full viewport. Tracks visual stability. Reference: web.dev on CLS.
These three replaced the older PageSpeed scoring as the actual ranking inputs. Google confirmed page experience as a ranking signal in 2021 and has refined the metrics since.
2. The 2026 Thresholds
| Metric | Good | Needs improvement | Poor |
|---|---|---|---|
| LCP | < 2.5s | 2.5s – 4.0s | > 4.0s |
| INP | < 200ms | 200ms – 500ms | > 500ms |
| CLS | < 0.1 | 0.1 – 0.25 | > 0.25 |
To pass Core Web Vitals, 75% of your page views across 28 days must be in the "good" bucket for each metric. Field data from Chrome is what counts — not a single PageSpeed run.
3. How to Measure Your Own
Lab tools (simulated, fast)
- PageSpeed Insights — runs Lighthouse in the cloud. Free.
- WebPageTest — deeper waterfall and filmstrip. Free tier.
- Our PageSpeed tool — same Lighthouse engine, no signup.
Field tools (real users, authoritative)
- Google Search Console — shows your Core Web Vitals grouped by URL pattern. This is what Google uses for ranking.
- Chrome UX Report (CrUX) — public dataset of field metrics from real Chrome users.
- Add the web-vitals JS library to collect your own RUM data.
Field data always trumps lab data. A site can score 100/100 in PageSpeed and still fail Core Web Vitals if real Chrome users experience slow performance on slow networks or old phones.
Tired of slow, overcrowded shared hosting?
LaunchPad Host runs on NVMe SSDs + LiteSpeed with free migration, free SSL, daily backups, and crypto payments. 30-day money-back guarantee.
See Hosting Plans4. How to Fix LCP
LCP is usually one of two things: slow server or slow hero image.
- Fix TTFB first. LCP can never be faster than TTFB + hero image download. Sub-200ms TTFB requires NVMe + LiteSpeed or equivalent.
- Optimize the hero image. Convert to WebP or AVIF, compress aggressively, serve correctly sized via srcset, set
fetchpriority="high"on the hero<img>tag. - Preload the hero.
<link rel="preload" as="image" href="/hero.webp" fetchpriority="high">in the<head>. - Use a CDN with Early Hints. HTTP 103 Early Hints lets the browser start preloading before the server finishes generating the HTML. Cloudflare supports this on all plans.
- Inline critical CSS. The first 14 KB of CSS should contain everything needed to paint above-the-fold. Defer the rest.
5. How to Fix INP (replaces FID)
INP measures responsiveness across all interactions on the page, not just the first. That makes it much harder to game than the old FID metric.
- Kill third-party JavaScript you don't need. Facebook Pixel, Hotjar, Intercom, Drift, five analytics libraries — each adds blocking tasks. Remove everything not directly tied to revenue.
- Defer non-critical JS. Add
deferorasyncto every<script>tag that isn't required for initial render. - Break up long tasks. Any JavaScript task over 50ms blocks the main thread. Use
scheduler.yield()orrequestIdleCallbackto break them up. - Lazy-load heavy components. Maps, chat widgets, comment systems — load them only when the user scrolls near them.
- Measure with the INP devtools pane. Chrome DevTools has a Performance panel that flags the slowest interactions for you.
6. How to Fix CLS
- Set explicit
widthandheighton every image. This reserves space before the image loads, preventing shift. Modernaspect-ratioCSS works too. - Reserve ad slots. If you run display ads, set the container to the exact ad dimensions before the ad loads.
- Avoid inserting content above existing content. Cookie banners that push content down are a big CLS hit.
- Use
font-display: optionalor preload fonts. FOIT/FOUT from web fonts causes layout shift when the font swaps in. Preload the critical font file. - Avoid JavaScript-driven layout changes in the first 5s. CLS is measured until the user interacts. Don't shove new DOM in post-load.
Frequently Asked Questions
Yes. Google confirmed page experience (which includes Core Web Vitals) as a ranking signal in 2021. It's a relatively small signal compared to content relevance and backlinks, but it matters at competitive thresholds.
INP (Interaction to Next Paint) replaced First Input Delay in March 2024. INP measures the delay on all interactions, not just the first — making it a better real-world measure of responsiveness.
Lab data = simulated (PageSpeed Insights, Lighthouse) on a specific device and network. Field data = aggregated real-user data from Chrome (CrUX). Google uses field data for ranking. A site can score 100 in lab tools and still fail in the field.
28 days. Search Console uses a 28-day rolling window. If you fix an issue today, you'll see full improvement in Search Console 28 days from now.
Yes, significantly. TTFB is part of LCP — a 500ms TTFB reduction directly cuts LCP by 500ms. NVMe + LiteSpeed hosting typically delivers sub-200ms TTFB, giving LCP 2.3s of budget for the hero image download and render.
Partially. Cloudflare caches static assets and HTML globally, reducing TTFB and LCP for users far from your origin. Cloudflare APO for WordPress is especially effective. But Cloudflare can't fix heavy JavaScript (INP) or unsized images (CLS) — those require source changes.
INP is stricter than FID was. Sites that passed FID often fail INP, especially heavy JavaScript sites (React/Vue SPAs, WordPress sites with Elementor + 40 plugins). The fix is fewer and smaller scripts, not a different framework.
Under 0.1 is "good" and passes Core Web Vitals. Truly polished sites score under 0.05. Anything over 0.25 is "poor" and a real user-experience problem.
Ready for hosting that just works?
NVMe + LiteSpeed hosting with free migration, crypto payments accepted, and a 30-day money-back guarantee.
See Hosting PlansRelated tools, articles & authoritative sources
Hand-picked internal pages and external references from sources Google itself considers authoritative on this topic.
Related free tools
- PageSpeed & Core Web Vitals Google Lighthouse scores: performance, SEO, accessibility, best practices.
- On-Page SEO Analyzer Full on-page audit: title, meta, headings, schema, OG tags.
- Site Validator (robots, sitemap, SSL, headers) Validate robots.txt, sitemap.xml, SSL certificate, and security headers.
Offshore & privacy hosting
- Offshore Hosting EU jurisdiction, privacy-first, from $3.99/mo
- Offshore WordPress Hosting LiteSpeed + NVMe + EU jurisdiction