Skip to content
What To Fix First

Core Web Vitals assessment: failed

Search Console says Core Web Vitals assessment: failed. What it means, which metric caused it, and how to find the one fix — free, no signup.

Three horizontal tracks for LCP, CLS and INP, each with a Good threshold line; the 75th-percentile marker for LCP and CLS sits inside Good, the INP marker sits past the line, and the verdict reads failed — all three must pass.LCPgoodCLSgoodINPover the lineGood threshold · 75th percentile of real visitstwo of three pass —assessment: failedfield data (CrUX) only · mobile and desktop judged separately
This diagram is free to reuse with credit — all nineteen, as SVG or PNG.

What “failed” literally means

The Core Web Vitals assessment is pass/fail, and it is judged on field data only: measurements collected from real Chrome users and published as the Chrome UX Report (CrUX). The lab score — the 0–100 number from Lighthouse — plays no part in it. To pass, the 75th percentile of real visits over the last 28 days must be in the “Good” range for all three metrics at once:

  • LCP (Largest Contentful Paint) — main content visible within 2.5 s
  • INP (Interaction to Next Paint) — taps respond within 200 ms
  • CLS (Cumulative Layout Shift) — the page moves less than 0.1

Two good and one “needs improvement” is a fail. The 75th percentile means the slowest quarter of visits decides; your median visitor can be fine and the assessment still fails. And mobile and desktop are assessed separately— the Search Console report has a row for each, and a site routinely passes desktop while failing mobile, which is why this checker tests mobile.

It is judged per URL group, not per page

Search Console does not assess every URL individually. It clusters pages it considers similar — usually the same template: all product pages, all blog posts, all category pages — into a URL group, and the group shares one verdict drawn from the combined visits. This is why a page you personally fixed can still sit inside a failing group: the group’s number is dominated by whichever pages in it get the most traffic, and if those are still slow, so is the group.

To find what the group actually is: in the Core Web Vitals report, open the mobile row, click an issue (say, “LCP issue: longer than 2.5s”), and the table lists each group by an example URL with the count of similar URLs beside it. Click the group and Search Console shows a sample of the URLs it contains. Those sample URLs — not the one you were thinking of — are the ones to test.

Why a 90+ lab score and a failed assessment are both true

The lab score is one simulated load: a mid-range phone, a throttled 4G connection, an empty cache, no logged-in state, run once. The assessment is thousands of real loads on whatever your visitors actually own — including the ones on three-year-old Android phones on a weak signal in a car park. The lab cannot see them; the assessment is mostly about them. A site whose lab score reads 95 while its assessment fails is not a contradiction, it is the normal gap between a good device and a bad one, and why sites that fly on desktop crawl on phones is the same story. The lab score also moves between runs; the field number, being an aggregate of a month, barely does.

Which metric caused it — and what to do for each

In the report, the failing URLs are grouped by issue, and the issue names the metric. That gives you a short decision path:

  • LCP issue — the main content arrives late. It is a server, image or render-blocking problem, and which of the three depends on where the time sits. The LCP guide walks the phases; the checker’s timeline shows which phase is yours.
  • CLS issue — things move while loading: images without dimensions, late-loading fonts, banners and ads inserted above content. The CLS guide covers each cause and the space-reserving fix.
  • INP issue — taps and clicks respond slowly, almost always because JavaScript is busy on the main thread. The INP guide explains how to find the long tasks.

INP replaced First Input Delay as the responsiveness metric in March 2024, and it is much stricter: FID measured only the delay before the first tap was handled, INP measures every interaction through to the next frame. That change is now the single most common reason a site that passed for years flipped to failed with no code change — the same JavaScript, judged by a harder rule.

Why the verdict can change when you changed nothing

Because the input is your visitors, not your code. Three things move it on their own:

  • Traffic mix. A campaign, a viral post or a new market brings a different audience — a higher share of low-end devices or slow networks pushes the 75th percentile past the line with the same pages.
  • Device share. Seasonal and regional shifts in who visits change the slow quarter. Sites that sell into emerging markets see this constantly.
  • A new URL group crossing the reporting threshold. CrUX only publishes a group once it has enough visits. A section of the site that was too quiet to be measured starts being measured, arrives failing, and the site-level verdict follows.

The 28-day window, and what “Validate fix” does

Every number in the report is a rolling 28-day aggregate. Ship a fix today and tomorrow’s report still contains 27 days of pre-fix visits; the verdict moves as the old days age out, and flips only when the whole window is clean. Clicking Validate fix does not re-test anything — it tells Search Console to watch that issue for 28 days and email you whether the group’s field number reached Good by the end. It is a timer with a notification, not a measurement. The reporting-lag guide covers how to confirm a fix today rather than in a month.

When the report says failed but the pages say “no data”

This happens on smaller sites: the site-level or group-level verdict is failed, yet inspecting an individual URL shows no field data. The group has enough visits to be assessed in aggregate; no single URL in it has enough to be reported alone. Nothing is broken. Test the group’s example URLs with the checker — the lab result plus the origin-level field data is the best view you can get — and read what “no field data” means for the rest of that situation.

Next step

Take one URL from the failing group in your report — an example URL from the issue table, not your favourite page — and run it through the checker. You get the field values for that page against the thresholds, and the one lab fix that would recover the most time, with the phase it acts on. Free, no signup; the result is kept for 30 days under a random link so you can send it to whoever has to do the work.

Common questions

PageSpeed Insights gives my page 95. How can the assessment be failed?
The 95 is a lab score: one simulated load on one simulated phone. The assessment is field data: the slowest quarter of your real visitors over 28 days, on their own devices and networks. A page can render beautifully in the lab and still leave a quarter of real visitors waiting past 2.5 seconds or tapping buttons that respond after 200 ms. Both numbers are correct; they measure different things.
Which metric made it fail?
Open the Core Web Vitals report in Search Console, click the mobile or desktop row, and the Poor URLs are grouped by issue — 'LCP issue: longer than 2.5s', 'INP issue: longer than 200ms', 'CLS issue: more than 0.1'. Each group names the metric. If you would rather see it per URL, the field data section of the checker shows the 75th-percentile value for each of the three, with the threshold band underneath.
I fixed the page. Why does it still say failed?
Three usual reasons. The 28-day window still contains visits from before the fix, so the number moves slowly for a month. The verdict is per URL group, so other pages in the same group may still be slow. Or the fix helped the lab load but not the metric that failed — deferring scripts does nothing for a CLS failure.
Does a failed assessment hurt rankings?
Core Web Vitals are a ranking signal, but a modest one, and it is a tiebreaker among pages with comparable relevance rather than a penalty. The bigger cost is the one the assessment is measuring: a quarter of your visitors are getting a slow or janky page, and that shows up in bounce and conversion long before it shows up in rankings.
Does this checker connect to my Search Console?
No. It does not connect to anyone's Search Console and has no accounts. It reads the same public field data (CrUX) and runs a Lighthouse test for the URL you paste, on mobile. Take a URL from the failing group in your report, paste it, and you get the field values for that page plus the one lab fix that would move the most.

Check a page against this

Free, no signup, no ads. We keep nothing except the shareable result, for 30 days.

Enter any public URL. You’ll get the one change that recovers the most load time, what it’s worth, and the measurements underneath.

Other guides