Core Web Vitals

Google's three real-user UX metrics — LCP, INP, and CLS — their "good" thresholds, field vs lab data, how much they matter for ranking, and the tools that measure them.

First published: Jun 26, 2026 · Last updated: Jul 17, 2026 · Advanced
demand #1 in Web Vitals#6 in Web Performance#41 in Technical SEO#54 on the site
1 evidence signal on this page

Core Web Vitals are Google's three real-user UX metrics: LCP (loading, ≤2.5s good), INP (responsiveness, ≤200ms good), and CLS (visual stability, ≤0.1 good), each judged at the 75th percentile of field data over a 28-day window — Google expects all three to be good, not just one. INP replaced FID on March 12, 2024. Google says its ranking systems use Core Web Vitals, but there's no official weight or 'tiebreaker' percentage attached, and a good score doesn't guarantee better rankings — relevance can still win. Lab scores from Lighthouse/PSI are for debugging, not ranking. This hub explains all three, the field-vs-lab split, and points you to the deep dives.

TL;DR — Core Web Vitals are three field-measured UX metrics: LCP (loading, “good” ≤ 2.5 s), INP (responsiveness, ≤ 200 ms), and CLS (visual stability, ≤ 0.1), each judged at the 75th percentile of real Chrome users (CrUX) over a rolling 28-day window. Thresholds are the same for mobile and desktop, but Google assesses each separately, and expects all three metrics to be good — not just one. INP replaced FID on March 12, 2024. Google says its ranking systems use Core Web Vitals, but there’s no official weight or “tiebreaker” percentage attached — a good score doesn’t guarantee better rankings, and relevance can still win. Lab scores (Lighthouse/PSI) are diagnostic measurements and often don’t match field data. TTFB and FCP are diagnostic “other Web Vitals”; TBT and Speed Index are lab proxies.

What counts as a Core Web Vital

Core Web Vitals sit between what real users experience and a confirmed ranking signal Google doesn't quantify. Source: /technical-seo/web-performance/web-vitals/core-web-vitals/

© Patrick Stox LLC · CC BY 4.0 ·

Google defines Core Web Vitals as “the subset of Web Vitals that apply to all web pages, should be measured by all site owners, and will be surfaced across all Google tools.” There are exactly three, each measuring a different dimension of how a page feels:

Core Web Vitals thresholds at the 75th percentile
RatingLCPINPCLS
Good ≤ 2.5 s≤ 200 ms≤ 0.1
Needs improvement 2.5–4.0 s200–500 ms0.1–0.25
Poor > 4.0 s> 500 ms> 0.25

Source: Google Web Vitals · Updated: 2026-07-12

Google evaluates the three “good” thresholds at the 75th percentile: LCP at 2.5 seconds, INP at 200 milliseconds, and CLS at 0.1. A page is only judged “good” overall once all three clear their bar at p75 — not just one or two. The thresholds themselves are the same for mobile and desktop, though Google assesses and reports each device class separately. Evidence for this claim Core Web Vitals are assessed at the 75th percentile, with good thresholds of 2.5 seconds for LCP, 200 milliseconds for INP, and 0.1 for CLS. Scope: Current stable Core Web Vitals definitions from the Chrome team. Confidence: high · Verified: web.dev: Web Vitals

Everything else you’ve heard of — TTFB, FCP, TBT, Speed Index — is not a Core Web Vital. More on those below.

LCP — loading

LCP “reports the render time of the largest image, text block, or video visible in the viewport, relative to when the user first navigated to the page.” In practice the LCP element is usually a hero image, a big background image, or your headline block. Note it’s the largest visible element — different viewport sizes can have different LCP elements, which is one reason field and lab numbers diverge.

INP — responsiveness

INP “assesses a page’s overall responsiveness to user interactions by observing the latency of all click, tap, and keyboard interactions that occur throughout the lifespan of a user’s visit to a page.” It measures the full interaction: input delay → event-handler processing → the time to paint the next frame.

This is the big improvement over the metric it replaced. INP improves on FID by observing all interactions, not just the first one — FID only timed the input delay of the very first interaction. INP became a Core Web Vital on March 12, 2024, replacing First Input Delay (FID). Evidence for this claim INP became a Core Web Vital and replaced FID on March 12, 2024. Scope: Chrome and Google tooling transition from FID to INP. Confidence: high · Verified: web.dev: INP launch FID was removed from Search Console that day. It is fully retired — don’t optimize for it.

One nuance worth holding onto: INP is not your worst single interaction, it’s a high percentile of all of them. A single janky click won’t tank an otherwise-good page.

CLS — visual stability

CLS “is a measure of the largest burst of layout shift scores for every unexpected layout shift that occurs during the entire lifecycle of a page.” The “burst” (session window) groups shifts that happen within 1 second of each other, up to a 5-second total window. The usual culprits Google names: “images or videos with unknown dimensions,” “fonts that render larger or smaller than its initial fallback,” and “third-party ads or widgets that dynamically resize themselves.”

Field data vs lab data — measurement and diagnosis

Core Web Vitals reflect real-user field measurements; lab scores help diagnose why those experiences occur. Source: /technical-seo/web-performance/web-vitals/core-web-vitals/

© Patrick Stox LLC · CC BY 4.0 ·

This is the distinction that causes the most confusion, so be precise about it.

  • Field data (CrUX) is “data collected from the real users visiting your site.” It’s reported at the 75th percentile, over a rolling 28-day window, segmented across mobile and desktop. Core Web Vitals represent this kind of real-world experience and are used by Google’s ranking systems. It reflects real devices, networks, cache states, and back/forward cache.
  • Lab data is “data collected in a controlled environment with predefined device and network settings” — a single emulated phone, cold cache, no real user. Lighthouse and the PageSpeed Insights lab section produce this. It’s a diagnostic tool for finding problems rather than a field measurement. Evidence for this claim Core Web Vitals are real-world experience metrics used by Google ranking systems; lab measurements are diagnostic and can differ from field measurements. Scope: Google Search use of Core Web Vitals and Chrome UX Report field data. Confidence: high · Verified: Google: Core Web Vitals and Search web.dev: Lab and field data

Google’s own guidance: “If you have both field data and lab data for a given page, field data is what you should use to prioritize your efforts.” And the Performance Score from Lighthouse “often does not correlate with field Core Web Vitals.” I say the same thing in my Core Web Vitals guide: lab data is more useful for testing and iterating, because the field CWV data is on a 28-day rolling average — you won’t see your fix reflected for weeks.

The p75 rule, and why it matters

A page passes only if 75% of real users hit the “good” threshold. That’s a deliberately forgiving-but-real bar: most of your visitors (3 of 4) had a good experience, while you’re not held hostage to a few outliers on terrible connections. It’s also why your phone showing a 1.8s load means nothing on its own — your p75 across everyone is what counts.

Page-level vs origin-level — don’t get fooled

Origin-level averages flatter you — only 21.2% of individual pages actually pass. Source: Data: Ahrefs

Many tools show you an origin-level (whole-site average) score by default, which can be far rosier than your individual pages. In my CWV data study (CrUX plus 5.2M pages from Ahrefs Site Audit), only 21.2% of individual pages passed all three thresholds, versus 33% at the origin level. Google’s page-experience documentation says its systems generally evaluate pages individually, though it also runs broader site-wide assessments — so an origin that “passes” can still be hiding plenty of failing individual pages. When a tool offers both views, don’t assume the origin-level average tells you what any specific page is doing; check the page-level number too.

A related gotcha: pages without enough traffic have no CrUX field data at all, and CrUX only includes Chrome users who’ve opted into usage stats (no iOS Chrome, no other browsers). That’s a data-eligibility gap, not a fail — missing field data isn’t the same as a poor score. Exactly how a given tool groups similar pages or falls back for low-traffic URLs (PSI, Search Console, the CrUX API) is documented by that specific product, not by one universal rule.

How much do Core Web Vitals actually matter for ranking?

They’re a confirmed ranking signal — Google says its ranking systems use Core Web Vitals. What Google’s current documentation does not do is attach an official weight, percentage, or “tiebreaker” label to that signal, so be careful about repeating those framings as if they were Google’s own words.

On the “it’s real” side: Google’s docs say Core Web Vitals “along with other page experience aspects, aligns with what our core ranking systems seek to reward,” and John Mueller went on record that it’s “more than a tie-breaker, but it also doesn’t replace relevance.”

On the “don’t overdo it” side: Mueller also said “Core Web Vitals are not giant factors in ranking, and I doubt you’d see a big drop just because of that,” and at the March 2024 documentation update added via LinkedIn that “it’s not going to make your site’s rankings jump up.” Google’s own page-experience docs are blunt: “Google Search always seeks to show the most relevant content, even if the page experience is sub-par.” The 2024 docs even warn that “trying to get a perfect score just for SEO reasons may not be the best use of your time.” Evidence for this claim Google says Core Web Vitals are used by ranking systems, while page experience does not override more relevant content. Scope: Google Search ranking guidance; no fixed weight or ranking-position effect is promised. Confidence: high · Verified: Google: Core Web Vitals and Search Google: Page experience

My pragmatic read: relevance dominates, Google hasn’t put a number on how much CWV counts, and most sites won’t see a great benefit from working on them for rankings. That said, the underlying UX improvements are worth doing for users and conversions — and platforms (WordPress, Cloudflare, frameworks) keep absorbing a lot of the optimization burden automatically. For small and local businesses especially, this usually shouldn’t be top of the list.

One more clarification from the 2024 update: of the broader page experience signals, only Core Web Vitals are confirmed to directly contribute to ranking. HTTPS, mobile-friendliness, no intrusive interstitials, content clarity — all good practice, but they don’t directly boost ranking the way the docs once implied.

The “other Web Vitals” — diagnostic, not Core

These come up constantly and get miscategorized. None of them are Core Web Vitals:

  • Time to First Byte (TTFB) — how long until the first byte of the response arrives. It “precedes every other meaningful loading performance metric” and feeds into LCP, but Google is explicit: “Because TTFB isn’t a Core Web Vitals metric, it’s not absolutely necessary that sites meet the ‘good’ TTFB threshold.” (Good ≤ 0.8 s.) Diagnostic.
  • First Contentful Paint (FCP) — time until any content paints. A useful loading diagnostic (good ≤ 1.8 s), but not Core.
  • Total Blocking Time (TBT) — a lab proxy for INP. Tools like Lighthouse “cannot measure INP” without a real user, so they report TBT instead. Lab only.
  • Speed Index — a lab proxy for perceived load speed. Lighthouse-only.

Use these to debug. Don’t report them as Core Web Vitals or treat their thresholds as ranking gates.

A myth to retire

You may see “Engagement Reliability” floated as a new Core Web Vital. There is no official Google announcement for any such metric — it’s circulating in third-party content only. The Core Web Vitals are LCP, INP, and CLS. Until Google says otherwise, that’s the list.

How to measure — and which tool for what

Match the tool to the job:

  • Ranking-relevant (field data): PageSpeed Insights (shows CrUX field data at page and origin level), Google Search Console’s Core Web Vitals report (groups similar pages, surfaces site-wide patterns), the CrUX API / BigQuery (custom and country-level analysis), and the web-vitals JS library (collect your own RUM).
  • Debugging (lab data): Lighthouse, the Chrome DevTools Performance panel, and the PSI lab section. These find the cause; they don’t decide your ranking.

The workflow I’d suggest: use GSC to find which page groups are failing in the field, confirm with PageSpeed Insights at the page level, then drop into Lighthouse / DevTools to diagnose and iterate — knowing the field numbers won’t update for up to 28 days.

Where to go next: the web performance cluster

This hub is the map. Each topic below is its own deep dive.

The three Core Web Vitals

  • Largest Contentful Paint — the loading metric: what counts as the LCP element, the ≤2.5 s target, and how to make it paint sooner.
  • Interaction to Next Paint — the responsiveness metric that replaced FID: input delay, event processing, and presentation delay, and how to cut each.
  • Cumulative Layout Shift — the visual-stability metric: session windows, the usual causes (sized media, fonts, injected ads), and how to hit ≤0.1.

Supporting & diagnostic metrics

  • Time to First Byte — server/response latency that feeds LCP; useful to debug, not a Core Web Vital.
  • First Contentful Paint — when the first content paints; a loading diagnostic.
  • Total Blocking Time — the lab proxy Lighthouse uses to approximate INP.
  • Speed Index — the lab proxy for perceived load speed.

How they’re measured

  • PageSpeed Insights — field (CrUX) data plus a Lighthouse lab report in one place.
  • Google Lighthouse — the lab/diagnostic engine behind PSI and DevTools.
  • Chrome UX Report (CrUX) — the real-user dataset Google’s assessment runs on.

For the whole cluster, see the Web Performance hub. Each sibling links here automatically as it ships.

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin an expert quote first.