Google updated Core Web Vitals again. INP officially replaced FID in March 2024, and the thresholds have tightened since. If you're working off a 2022 SEO checklist, you're working off the wrong checklist.
This is the current state of Core Web Vitals — what's measured, what the targets are, what tends to fail in 2026, and what to do about it.
The three metrics that count
LCP — Largest Contentful Paint
How long it takes for the biggest visible element on the page to render. Usually a hero image, headline, or video poster.
Target: under 2.5 seconds. Anything over 4 seconds is "Poor" and Google flags it explicitly.
INP — Interaction to Next Paint
This is the new one. INP measures the latency of every interaction on a page (clicks, taps, key presses) and reports the worst one. Replaced FID, which only measured the first interaction.
Target: under 200ms. Over 500ms is "Poor."
CLS — Cumulative Layout Shift
How much things move around on the page after initial load. The classic offender: an ad loading in and pushing the article down so you click the wrong thing.
Target: under 0.1. Over 0.25 is "Poor."
The thing nobody tells you: it is a 75th percentile metric
Google doesn't measure your average page load. It measures the 75th percentile across real user sessions. Meaning: if 25% of your visitors have a bad experience, you fail — even if everyone else is fine.
This is why your localhost benchmarks always look great and your Search Console reports always look terrible. Real users have older phones, worse networks, and different browsers than you do.
Common 2026 failure patterns
LCP killer: oversized hero images
The single most common LCP problem is a 4 MB hero image being served at full resolution to a phone screen. Fix:
- Use modern formats — WebP or AVIF. They are 30-60% smaller than JPEG at equivalent quality.
- Serve responsive sizes via
srcset. A phone doesn't need a 2400px-wide image. - Add
fetchpriority="high"to your LCP image so the browser prioritizes it. - Inline the critical CSS for above-the-fold content.
INP killer: heavy JavaScript on click
Click a button, run a 400ms event handler, INP fails. Common culprits:
- Third-party tag managers running synchronous scripts on click.
- Framework re-renders that touch the entire page tree on a single state change.
- Heavy validation logic on form fields (checking 50 things on every keystroke).
- Analytics events that block before sending.
Fix: move expensive work to requestIdleCallback or web workers. Debounce input handlers. Audit your tag manager.
CLS killer: web fonts and ads
Page renders with system font, web font loads, page reflows, CLS spikes. Fix:
font-display: optionalorswapwith carefully matched fallback fonts.- Preload your critical fonts.
- Reserve space for ads with explicit
min-heighton their containers. - Reserve space for dynamic content that loads after page render.
The hosting connection
You can do every front-end optimization in the book and still fail Core Web Vitals if your hosting is slow. Server response time shows up directly in LCP. If your TTFB (Time to First Byte) is 800ms, you have already burned a third of your LCP budget before the browser has even started rendering.
Quick TTFB check: run curl -o /dev/null -w "%{time_starttransfer}s\n" https://yoursite.com from a few different locations. If you're consistently over 600ms, your hosting is the bottleneck.
of websites we audit fail Core Web Vitals primarily due to hosting performance — even though their developers blame the front-end code.
The diagnostic flow that actually works
Here's the order to debug Core Web Vitals issues, in 2026:
- Check your TTFB. If it is bad, fix hosting first. Nothing else will help.
- Look at PageSpeed Insights' Field Data (real user data), not Lab Data (synthetic).
- Identify which specific metric is failing — LCP, INP, or CLS.
- Use Chrome DevTools' Performance panel with CPU throttling at 4x to simulate slower devices.
- For LCP, use the "LCP" element view in Lighthouse to see exactly which element is the largest.
- For INP, use Chrome DevTools' Interactions track to find the slowest interaction.
- Fix the worst offender, deploy, wait 28 days for CrUX data to update, then re-measure.
What is NOT a Core Web Vital (anymore)
For clarity — these used to matter or were rumored to, but are not part of CWV in 2026:
- FID — replaced by INP. Stop measuring it.
- FCP — still useful but not part of CWV.
- TTI — same. Useful for diagnostics, not a ranking signal.
- "Performance score" — the 0-100 number from Lighthouse. Useful, but Google ranks on the individual metrics, not the composite score.
Want a real Core Web Vitals audit?
Our SEO team runs a 50-point technical audit including CWV, server config, and image optimization. Free for first-time clients.
Request a CWV auditThe takeaway
Core Web Vitals aren't going away. Google has been measuring them since 2020 and the thresholds have only tightened. The good news is that fixing them isn't mysterious — there's a finite list of things that go wrong, and they're all fixable.
The most important shift for 2026: INP punishes laggy interactions everywhere on the page, not just the first click. If your site has heavy JavaScript that runs on user input, you're now being measured on it across the entire session.
Audit your real-user data, not your local machine. Fix one metric at a time. Wait for the 28-day window before declaring victory.