Prooflytics
SEO9 min read

Core Web Vitals Thresholds 2026: LCP, INP, and CLS Benchmarks for Marketers

Google updated its Core Web Vitals in 2024 with INP replacing FID as the interactivity metric. In 2026, these three thresholds determine whether a page earns Google's "Good" CWV label and passes the page experience ranking signal. Here is what each metric measures, the exact thresholds, and how to prioritize fixes.

Web performance metrics and code representing Core Web Vitals measurement

Core Web Vitals Thresholds 2026: LCP, INP, and CLS Benchmarks for Marketers

Core Web Vitals are the three metrics Google uses to measure user experience as a ranking signal. In March 2024, Google replaced FID (First Input Delay) with INP (Interaction to Next Paint) -- the previous FID benchmarks are deprecated and tools still reporting them are showing stale data. The 2026 thresholds for LCP, INP, and CLS are unchanged from the INP launch. What changed is the challenge: INP is much harder to achieve than FID, and many sites that passed CWV under FID now fail under INP.

Key takeaways

  1. The three 2026 Core Web Vitals thresholds: LCP Good = under 2.5 seconds; INP Good = under 200 ms; CLS Good = under 0.1.
  2. INP replaced FID in March 2024 -- any SEO tool or report still showing FID data is using deprecated metrics that no longer affect Google's ranking signals.
  3. Thresholds apply to the 75th percentile of real user sessions from CrUX (Chrome User Experience Report), not lab measurements from Lighthouse or PageSpeed Insights.
  4. INP is the hardest metric to pass: it measures the delay between any user interaction and the next visual response -- heavy JavaScript dashboards, chat widgets, and single-page applications commonly fail.
  5. CLS failures most often come from images without explicit dimensions, fonts loading with layout shift, and dynamically injected content above the fold after initial render.

The three Core Web Vitals and their 2026 thresholds

Core Web Vitals: three standardized metrics defined by Google that measure real-user experience on web pages. They serve as a ranking signal (the page experience signal) and are measured from field data -- real Chrome browser sessions -- not synthetic lab tests.

LCP: Largest Contentful Paint

What it measures: how long it takes for the largest visible content element (image, video poster, text block) to become visible to the user after page navigation begins.

ThresholdValue
GoodUnder 2.5 seconds
Needs improvement2.5 to 4.0 seconds
PoorOver 4.0 seconds

LCP is typically the first Core Web Vital that site owners focus on because it is the most directly tied to perceived load speed. A slow LCP means the user stares at an empty or incomplete page for too long.

Common LCP causes:

  • Hero images not preloaded (browser discovers them late in the resource loading chain)
  • Slow server response time (TTFB over 600 ms)
  • Images served at full resolution without responsive sizing or modern formats (WebP, AVIF)
  • Render-blocking JavaScript or CSS delaying the first meaningful paint
  • No CDN: assets served from a single origin server with high latency for international traffic

INP: Interaction to Next Paint (replaced FID March 2024)

What it measures: the delay between any user interaction (click, tap, keyboard input) and the next visual update the browser produces in response. INP measures responsiveness across the entire page session, not just the first interaction.

ThresholdValue
GoodUnder 200 ms
Needs improvement200 to 500 ms
PoorOver 500 ms

Why INP is harder than FID: FID measured only the delay before the browser could begin processing the first interaction. It was easy to pass because the browser is usually unblocked right after the page loads. INP measures every interaction throughout the session: clicking buttons, opening dropdowns, submitting forms, interacting with widgets. Any interaction delayed by a long JavaScript task (over 50 ms) contributes to a worse INP score.

Common INP causes:

  • Long JavaScript tasks blocking the main thread during or after user interactions
  • Heavy click handlers that trigger synchronous DOM operations
  • Unoptimized third-party scripts (chat widgets, analytics tags, survey tools) executing expensive callbacks
  • Single-page application routing that triggers large React re-renders on user actions
  • Animations and transition effects computed on the main thread rather than the GPU

CLS: Cumulative Layout Shift

What it measures: how much visible page elements unexpectedly move after initial render. A high CLS score means content jumps around while the user is reading or interacting with the page.

ThresholdValue
GoodUnder 0.1
Needs improvement0.1 to 0.25
PoorOver 0.25

Common CLS causes:

  • Images without explicit width and height attributes: the browser does not reserve space before the image loads, so surrounding content shifts when the image appears
  • Web fonts loading with FOUT (Flash of Unstyled Text) or FOIT (Flash of Invisible Text) that changes layout when the custom font loads
  • Dynamically injected content above the fold: consent banners, chat widgets, cookie notices inserted after initial render push page content down
  • Late-loading ads that expand the layout after the user has started reading
Prooflytics

Connect search to the rest of the picture

Every channel in one brief, so search isn't measured in a silo.

14 days free · no credit card

The ICP problem: ranking signal vs measurement gap

The operational problem this creates for marketing and SEO teams: most teams check Core Web Vitals using Lighthouse or PageSpeed Insights (lab tools). Lab scores do not affect Google's ranking signal. CrUX field data does. A page can score 90+ in Lighthouse and fail the "Good" CWV classification in Google Search Console because field data from real Chrome users shows different performance.

The measurement gap exists for two reasons:

  • Lab tools use a simulated throttled connection on a single desktop configuration; real users have diverse devices and connection speeds
  • Lab tools measure a single page load in isolation; CrUX aggregates performance across all sessions over 28 days including background tab loads, navigations from cached pages, and users on slow connections

For practical decision-making: always check Google Search Console CWV report (field data) alongside Lighthouse scores. The GSC report is what Google's ranking signal reflects.

What the data shows about CWV and ranking impact

By the Core Web Vitals Thresholds benchmark documented in the Prooflytics knowledge base (sourcing Google's CrUX threshold specifications and page experience signal documentation), the thresholds apply to the 75th percentile of real-user sessions. This means a page passes "Good" only if 75% of its sessions (not just the median) are within the Good threshold.

The 75th percentile rule is stricter than it appears. If the fastest 50% of sessions have LCP of 1.5 seconds but the slowest 25% have LCP of 3.5 seconds due to mobile connections, the page fails LCP despite having a fast median. Marketing teams that optimize for average performance and ignore the distribution tail often find their CWV status worse than expected.

The direct ranking implication: pages that achieve "Good" across all three metrics earn Google's page experience ranking boost. Pages that fail any one metric lose the boost. The signal is binary per metric, not graded -- a page with Good LCP and INP but Needs Improvement CLS does not get partial credit.

Prooflytics blog articles and marketing pages are built with Next.js App Router on Vercel Edge, which provides sub-100ms TTFB globally and eliminates most LCP bottlenecks. The primary remaining CWV risk on the Prooflytics stack is INP from third-party scripts and CLS from dynamically injected content.

How to measure field data vs lab data

Field data (what matters for ranking):

  • Google Search Console: Core Web Vitals report under Experience section. Shows real-user CrUX data for URLs grouped by status (Good / Needs Improvement / Poor)
  • CrUX API: available free via https://chromeuxreport.googleapis.com/v1/records:queryRecord -- returns p75 values for any URL with sufficient traffic
  • PageSpeed Insights: the top section ("Field Data") shows CrUX data; the bottom section ("Lab Data") shows Lighthouse scores

Lab data (useful for debugging, not for ranking decisions):

  • Lighthouse: run via Chrome DevTools or CLI; fast iteration but does not reflect real user performance
  • WebPageTest: multi-location lab testing with filmstrip view; useful for debugging LCP and CLS root causes

Optimization priority order

Fix in this order based on impact-to-effort ratio for most marketing sites:

1. LCP -- highest ranking impact, fixable with infrastructure changes

  • Add rel="preload" to the LCP element (hero image) in the HTML <head>
  • Migrate images to WebP or AVIF; serve responsively sized images
  • Implement a CDN (Cloudflare, Fastly, Vercel Edge) for static assets
  • Reduce TTFB below 600 ms: check server processing time in GSC page crawl data

2. INP -- hardest to pass, requires JavaScript profiling

  • Use Chrome DevTools Performance panel to record interactions and identify long tasks
  • Defer non-critical third-party scripts (chat, survey tools) until after first user interaction
  • Break up long synchronous JavaScript tasks using setTimeout(0) or requestIdleCallback
  • For React/Next.js: reduce re-render scope on interaction events using useMemo, useCallback, and component splitting

3. CLS -- often fixable with CSS changes

  • Add explicit width and height attributes to all images in HTML
  • Set font-display: swap and use size-adjusted fallback fonts to minimize layout shift on font load
  • Use min-height on containers that receive dynamically injected content (banner ads, consent notices)
  • Move consent banners and cookie notices to positions that do not push page content (fixed overlay vs inline)

Bottom line

  • The 2026 Core Web Vitals thresholds: LCP Good under 2.5 s, INP Good under 200 ms, CLS Good under 0.1 -- applied at the 75th percentile of real Chrome sessions.
  • INP replaced FID in March 2024; any tool still reporting FID is using deprecated data. INP is harder to pass and commonly fails on JavaScript-heavy sites.
  • Always use CrUX field data from Google Search Console for ranking decisions, not Lighthouse lab scores.
  • Fix priority: LCP first (highest ranking impact, infrastructure-fixable), INP second (hardest, requires JavaScript profiling), CLS third (often CSS-fixable).
  • Pages failing any single metric lose the full page experience ranking boost -- there is no partial credit across the three metrics.
  • You can read independent reviews of Prooflytics on G2 and compare it to alternatives in the marketing analytics category.

Frequently asked questions

What are the Core Web Vitals thresholds for 2026?+

The 2026 thresholds are: LCP Good = under 2.5 seconds (Needs Improvement 2.5-4.0 s, Poor over 4.0 s); INP Good = under 200 ms (Needs Improvement 200-500 ms, Poor over 500 ms); CLS Good = under 0.1 (Needs Improvement 0.1-0.25, Poor over 0.25). These thresholds have been stable since INP replaced FID in March 2024 and are applied to the 75th percentile of real Chrome user sessions.

What replaced FID in Core Web Vitals?+

INP (Interaction to Next Paint) replaced FID (First Input Delay) as Google's interactivity metric in March 2024. FID measured only the delay before the browser started processing the first interaction. INP measures the delay between any user interaction and the browser's next visual response, across the entire page session. INP is a harder metric to pass because it captures all interactions, not just the first one. FID data is now deprecated and no longer affects Google rankings.

Does Lighthouse score affect Google ranking?+

No. Google's Core Web Vitals ranking signal is based on CrUX field data -- real Chrome user sessions aggregated over 28 days -- not Lighthouse lab scores. A high Lighthouse score does not guarantee a Good CWV status in Google Search Console. Lab scores are useful for debugging but should not be used as a proxy for ranking signal. Always check the Google Search Console Core Web Vitals report for the field data that actually influences rankings.

Why does my page fail INP despite a high Lighthouse score?+

Lighthouse does not measure INP accurately. Lighthouse runs a simulated page load with a controlled click sequence; INP requires measuring the responsiveness of real interactions in real user sessions. A page can have a very fast initial load (good Lighthouse score) but slow interaction responses caused by JavaScript executing during user interactions (bad INP). Use Chrome DevTools Performance recording of real interactions or the CrUX API to get accurate INP data.

How do I check my Core Web Vitals field data?+

The most accessible way: open Google Search Console, navigate to Experience > Core Web Vitals. This shows your real-user CrUX data grouped by URL status. For individual URLs, use PageSpeed Insights (pagespeed.web.dev) -- the top "Field Data" section shows CrUX data for that specific URL. If a URL shows "No data available" in PageSpeed Insights, the URL does not have enough Chrome traffic in the CrUX dataset; check the origin-level data instead.

Prooflytics

Connect search to the rest of the picture

Every channel in one brief, so search isn't measured in a silo.

14 days free · no credit card

Continue reading

Performance· 9 min read

Page Speed and Conversion Rate: The 3.5% Drop per 100ms Loading Delay

Shopify's analysis of its merchant base found that every 100ms of added page load time causes a 3.5% drop in purchase conversion rate. This benchmark has direct implications for ROAS: if your landing page is slow, your ad spend is partially wasted regardless of targeting quality. Here is how to quantify the cost and where to find the actual bottleneck.

SEO· 9 min read

Mobile-First Indexing: Why Content Hidden on Mobile Is Missing from Google's Index

Since 2023, Google crawls and ranks all sites using the mobile version of the page. Content that exists on desktop but is hidden or absent on mobile is not indexed. If your rankings underperform relative to your content investment, a desktop/mobile content parity gap may be the cause. Here is how to diagnose and fix it.

SEO· 9 min read

JavaScript CSR Pages Are Invisible to AI Search Crawlers: What to Fix

AI answer engines including ChatGPT, Perplexity, and Google AI Overviews use bots that do not execute JavaScript. If your pages use client-side rendering, AI crawlers see an empty shell -- not your content. Here is how to diagnose the problem and what server-side rendering fixes it.

Analytics· 10 min read

Content Performance Measurement: The Right KPIs Beyond Pageviews

Pageviews measure traffic volume, not content performance. A blog post can accumulate 50,000 views while contributing zero pipeline, because it ranks for informational queries that never convert. Measuring content performance requires tracking engagement depth, SEO momentum, assisted conversions, and content ROI -- not just raw traffic numbers.