Do Core Web Vitals Affect Rankings? What the Evidence Says

Do Core Web Vitals affect Google rankings? What Google's own documentation says, what our lab study of 219 sites shows, and how much to prioritise CWV fixes.

· BugViso Team

10 min read

Quick answer: Yes, but modestly. Google states that "Core Web Vitals are used by our ranking systems", and also that it "always seeks to show the most relevant content, even if the page experience is sub-par." Core Web Vitals work like a tiebreaker among similarly relevant pages, not a way to outrank better content. Their bigger payoff is usually conversions and engagement, which is reason enough to fix them.

There's no shortage of confident claims about how many positions a good LCP is "worth". Most of them can't be checked. This post sticks to what can be: Google's own documentation, the field data Google publishes through the Chrome UX Report, and our own lab measurements of 219 websites.


What Google Says, Verbatim

These quotes are from Google Search Central, retrieved 8 October 2026:

QuestionGoogle's answerSource
Are Core Web Vitals a ranking factor?"Core Web Vitals are used by our ranking systems."Understanding page experience
Do they beat relevance?"Google Search always seeks to show the most relevant content, even if the page experience is sub-par."Same page
Is there one page experience score?"There is no single signal. Our core ranking systems look at a variety of signals that align with overall page experience."Same page
Do good scores guarantee top rankings?"Getting good results in reports like Search Console's Core Web Vitals report or third-party tools doesn't guarantee that your pages will rank at the top of Google Search results."Same page
Should I still fix them?"We highly recommend site owners achieve good Core Web Vitals for success with Search and to ensure a great user experience generally."Core Web Vitals

Read together, the position is consistent: Core Web Vitals count, relevance counts more, and passing doesn't promise anything on its own.


The Thresholds Google Uses

Google assesses each metric at the 75th percentile of real page loads, separately for mobile and desktop:

MetricGoodNeeds improvementPoor
LCP (loading)≤ 2.5 s≤ 4 s> 4 s
INP (responsiveness)≤ 200 ms≤ 500 ms> 500 ms
CLS (visual stability)≤ 0.1≤ 0.25> 0.25

The data comes from real Chrome users (the Chrome UX Report), not from lab tools. A lab score in PageSpeed Insights or any audit tool helps you find problems, but it isn't what Search uses.


How Many Sites Actually Pass? Data

If Core Web Vitals act as a tiebreaker, what matters is how you compare with the pages you compete against. Two data sources:

Field data (real users). The HTTP Archive's 2024 Web Almanac, based on CrUX, found 43% of websites passed all three Core Web Vitals on mobile and 54% on desktop.

Lab data (our study). We loaded 219 randomly sampled homepages under Lighthouse-style mobile throttling. Full results are in our Core Web Vitals data study:

Lab result, throttled mobileShare of 201 measured homepages
Good LCP (≤ 2.5 s)25.4%
Good CLS (≤ 0.1)80.6%
Good LCP and CLS23.4%
Total Blocking Time under 200 ms14.9%

Both sources point the same way: more than half of sites don't pass on mobile, and LCP is the usual failure. In a competitive results page, passing is still a differentiator.


Why "Tiebreaker" Is the Right Mental Model

Google ranks pages on many signals, most of which are about relevance and quality. A page experience signal can only matter when those are close. In practice:

SituationWill fixing CWV move rankings?
Your page is clearly less relevant than competitors'Unlikely. Improve the content first.
Pages are similarly relevant and others pass CWVPossibly. This is where page experience can separate you.
You already pass and competitors don'tSmall further gains; focus elsewhere.
Your pages fail badly (LCP 6 s+, unusable on mobile)Users bounce regardless of ranking. Fix for conversions.

That's also why studies that correlate rankings with speed are hard to read: fast sites tend to be well-resourced sites with strong content and links, so speed and rank move together without one simply causing the other.


The Business Case Doesn't Depend on Rankings

Even where the ranking effect is small, slow pages lose visitors who already found you. Google's own guidance recommends good Core Web Vitals "to ensure a great user experience generally", and a page that takes nine seconds to show its main content on a mid-range phone (our lab 75th percentile for LCP was 9.38 s) loses people before they read a word. Treat Core Web Vitals as a conversion and retention project that has a ranking side effect.


Check Your Own Field Data

This script asks the PageSpeed Insights API for the real-user (CrUX) values Google has for a URL:

python
"""Does this page pass Core Web Vitals for real users? (CrUX via the PageSpeed Insights API)

Usage: python3 crux_check.py https://example.com/ [mobile|desktop] [API_KEY]
Prints the 75th-percentile field values Google has for the URL (or, if the URL
lacks enough traffic, for the whole origin) and whether each metric is good.
An API key is optional for occasional use; add one for repeated runs.
"""
import json, sys, urllib.error, urllib.parse, urllib.request

METRICS = {
    "LARGEST_CONTENTFUL_PAINT_MS": ("LCP", 2500, "ms"),
    "INTERACTION_TO_NEXT_PAINT": ("INP", 200, "ms"),
    "CUMULATIVE_LAYOUT_SHIFT_SCORE": ("CLS", 10, "x100"),
}


def main(url, strategy="mobile", key=None):
    q = {"url": url, "strategy": strategy, "category": "performance"}
    if key:
        q["key"] = key
    api = "https://www.googleapis.com/pagespeedonline/v5/runPagespeed?" + urllib.parse.urlencode(q)
    try:
        data = json.load(urllib.request.urlopen(api, timeout=120))
    except urllib.error.HTTPError as e:
        if e.code == 429:
            sys.exit("Quota exceeded (HTTP 429). Create a free API key in Google Cloud and pass it as the third argument.")
        raise
    for scope in ("loadingExperience", "originLoadingExperience"):
        field = data.get(scope, {})
        if field.get("metrics"):
            break
    else:
        print("No CrUX field data for this URL or origin (not enough Chrome traffic).")
        return
    label = "the whole origin" if scope != "loadingExperience" or field.get("origin_fallback") else "this URL"
    print(f"Field data ({strategy}, 28 days, {label}): overall {field.get('overall_category', 'n/a')}")
    for key_name, (name, good, unit) in METRICS.items():
        m = field["metrics"].get(key_name)
        if not m:
            print(f"  {name}: no data")
            continue
        p75 = m["percentile"]
        shown = f"{p75 / 100:.2f}" if unit == "x100" else f"{p75} ms"
        print(f"  {name}: p75 {shown:>8}  {m['category']}")


if __name__ == "__main__":
    main(sys.argv[1], *(sys.argv[2:4]))
text
Field data (mobile, 28 days, this URL): overall FAST
  LCP: p75  2100 ms  FAST
  INP: p75   180 ms  FAST
  CLS: p75     0.05  FAST

Run it for your page and for the pages ranking above you. If they pass and you don't, Core Web Vitals are worth prioritising for that query. If nobody passes, relevance and content will decide it.


How BugViso Reports Core Web Vitals

A BugViso audit uses real-user CrUX data when Google has it for your page, falls back to a PageSpeed lab run or its own browser measurement when it doesn't, and labels each number with its source, so you always know whether you're looking at field or lab data. It then shows what's behind a slow result: throttled 3G reloads, unused JavaScript and CSS, and the long tasks blocking the main thread.

For the full list of what BugViso tests here, see the LCP, INP and CLS speed test.


FAQ

Are Core Web Vitals a Google ranking factor in 2026?

Yes. Google's documentation says Core Web Vitals are used by its ranking systems, as part of a broader set of page experience signals.

How much do Core Web Vitals affect rankings?

Google doesn't publish a weight. Its guidance says relevance comes first and good scores don't guarantee top rankings, which is consistent with Core Web Vitals acting as a tiebreaker between similar pages.

Does a good Lighthouse score improve rankings?

Not directly. Search uses field data from real Chrome users, not lab scores. Lab tools help you find and fix the causes.

Which Core Web Vital should I fix first?

Usually LCP: it's the metric most sites fail, in both field data and our lab study.

Do Core Web Vitals matter if I have little traffic?

Pages without enough Chrome traffic have no URL-level field data; Google may use origin-level data instead. The user-experience case for fixing them is the same either way.


The Takeaway

Core Web Vitals are a real but modest ranking signal and a big user-experience one, so fix them where competitors pass and you don't, starting with a BugViso performance audit of your slowest pages.

Found this useful? Share it.

See where your site stands

Run a free BugViso audit for SEO, speed, accessibility and AI search readiness — with fixes you can ship today.