Core Web Vitals in the red: what to do, metric by metric.

Search Console flags poor Core Web Vitals? How to read the report, find the failing metric, fix what you can yourself, and know when to call a developer.

On this page · 11 sections

Your developer talks about LCP, CLS, INP. Your SEO agency says “the Core Web Vitals are in the red”. Google Search Console shows orange alerts. And you just want to know whether your site is healthy — and what to do if it is not.

This guide is written for you. Not for developers.

Reading the Search Console report#

If you are here, Search Console has probably sent you an alert. The Core Web Vitals report sorts your pages into three statuses: Good, Needs improvement and Poor. Three things to know before touching anything, all from Search Console’s official help.

Pages are grouped. Google bundles URLs that offer a similar experience, often pages built on the same template. A group of 300 pages in the red is often one page template to fix, not 300 problems.

The data is real, and it covers 28 days. The report relies on measurements from real Chrome visitors (the CrUX report), aggregated over the last 28 days. It is what Google uses, and it is why a fix takes about a month to show.

A missing page is not a healthy page. A URL without enough visits has no data of its own: it is grouped with the rest of the site, or does not appear. For it, only a test such as PageSpeed Insights tells you anything.

You do not need to open a terminal. Three free tools are enough:

  1. Search Console

    Open the Core Web Vitals report. It groups your pages by good / needs improvement / poor, based on real data.

  2. PageSpeed Insights

    Test a specific URL. The top section, the Core Web Vitals assessment, shows your real visitors. The score out of 100, further down, comes from a lab test.

  3. Lighthouse (Chrome)

    F12 → Lighthouse tab → Generate report. Instant result, but it is a lab test — not real-world data.

Fig. 1 — The 3 steps to diagnose your Core Web Vitals.

The difference between lab data and field data matters. A Lighthouse test simulates a page load. Field data (in Search Console and PageSpeed Insights) measures what your real visitors experience. Google uses field data for ranking — not the Lighthouse score.

If your Lighthouse is 95 but your field data is “poor”, the field data is what counts.

Three scores, not thirty#

Google measures hundreds of signals to rank your site. But for user experience, it has stuck to three precise metrics since 2020. Three. That is manageable.

These three metrics are called Core Web Vitals. Each one measures a different aspect of what a person feels when visiting your site:

  • LCP — Does the page load fast?
  • INP — Does the page respond when you click?
  • CLS — Does the page shift during loading?

Each metric has a threshold. Below it, Google considers the experience “good”. Above it, the experience is “needs improvement” or “poor”. There is no grey area.

LCP: time before seeing something useful#

Largest Contentful Paint. The time it takes for the largest element on your page to appear. Usually, that is the hero image, the banner, or the first large block of text.

ThresholdScore
GoodUnder 2.5 seconds
Needs improvementBetween 2.5 and 4 seconds
PoorOver 4 seconds

What this means for you: if your page takes more than 2.5 seconds to display something, your visitors see a white screen. And 32% of them leave if loading exceeds 3 seconds.

Most common causes: unoptimised images (too heavy, wrong format), slow server, too much CSS and JavaScript to load before displaying anything.

INP: time before the page responds#

Interaction to Next Paint. This is the newest metric — it replaced FID (First Input Delay) on March 12, 2024. The difference: FID only measured the first click. INP measures every interaction.

You click an “Add to Cart” button. INP measures the time between your click and the moment something changes on screen.

ThresholdScore
GoodUnder 200 milliseconds
Needs improvementBetween 200 and 500 ms
PoorOver 500 ms

What this means for you: if your site takes more than 200 ms to respond to a click, your visitors feel a lag. On mobile, this is even more noticeable — and 23% of mobile sites fail this threshold. When all three metrics are combined, only 48% of mobile sites pass the full Core Web Vitals assessment.

Most common causes: too much JavaScript blocking the browser, poorly coded WordPress plugins, third-party scripts (chatbots, analytics, social widgets).

CLS: elements that move on their own#

Cumulative Layout Shift. You are reading text, and suddenly the content jumps down because an advert loaded above it. Or you are about to click a link, and an image loads just before — you click the wrong thing.

CLS measures the amount of involuntary movement on your page.

ThresholdScore
GoodUnder 0.1
Needs improvementBetween 0.1 and 0.25
PoorOver 0.25

What this means for you: a CLS score of 0 means nothing moves on your page during loading. A score above 0.1 means something shifts visibly and annoyingly.

Most common causes: images without declared dimensions (width × height), web fonts replacing system fonts late, adverts and embeds inserted dynamically.

What you can fix yourself, and what needs a developer#

First spot the failing metric in the report, then read the row that covers it. The middle column is done from your admin panel; the last one means opening the code.

Metric in the redWhat you can do yourselfWhat needs a developer
LCP, the page loads slowlyCompress the main image (WebP, under 200 KB), remove the home page slider, turn on a cache and a CDN such as CloudflarePrioritise loading of the main image, trim the CSS that blocks rendering, change hosting
INP, the page responds badlyDisable non-essential JavaScript plugins (sliders, pop-ups, chat), remove unneeded third-party scriptsDefer or split the remaining JavaScript, replace a theme or page builder that is too heavy
CLS, the page movesSet the width and height of images, reserve space for adverts and embedded videosPreload web fonts, reserve space in the template for banners (cookies, promotions)

If your site runs on WordPress, the causes of its slowness are covered one by one, with what you can do without migrating.

After the fix: why it is still red#

You fixed it, tested on PageSpeed Insights, everything is green. And Search Console still says Poor. That is normal: the report aggregates 28 days of real visits, so the measurements from before your fix keep weighing for several weeks.

To follow the resolution, open the issue in the report and click Start tracking. Google opens a 28-day monitoring session: if the issue does not reappear on any URL during that period, it is considered fixed. Allow a month between the fix and the green status, and do not redo everything in the meantime.

Why Google cares (and so should you)#

Google does not penalise you for fun. It wants its users to find results that load fast, respond to clicks, and stay still. If your site does all of that, Google favours it. If two sites have similar content quality, the one with better Core Web Vitals ranks higher.

The numbers are concrete:

IndicatorMeasured impactSource
Abandonment rate+8% in sales after a 31% LCP improvementGoogle (2024)
Bounce rate+32% when loading exceeds 3 secondsGoogle / Akamai
Conversion rate-40 to -50% when LCP goes from 2s to 4-5sBlue Triangle
Load abandonment-76% after LCP optimisation (Agrofy)web.dev
Overall bounce rate-43% after LCP + CLS optimisation (Economic Times)web.dev

In short: poor Core Web Vitals do not just lower your Google position. They drive away the visitors who arrive anyway.

Vodafone improved its LCP by 31% and sold 8% more. This is not an SEO advantage — it is a business advantage.

Google data, confirmed by web.dev case studies.

Why Astro sites pass all three thresholds by default#

This is not magic. It is architecture.

An Astro site generates static HTML at build time. When a visitor arrives, the server sends a ready-made HTML page — not a JavaScript framework that has to rebuild the page inside the browser.

In practice:

  • LCP → The page is pure HTML. No JavaScript to execute before displaying content. On the sites we deliver, median LCP is under 1.2 seconds.
  • INP → Zero JavaScript shipped by default. No script blocking the browser. On pages without interactivity, measured INP is 0 ms.
  • CLS → Astro optimises images at build time (declared dimensions, WebP formats, responsive). Nothing shifts during loading. Measured CLS at 0 across our deployments.

The Astro sites we deliver at Astro4B score 95 to 100 on Lighthouse Performance. That is not a goal — it is a consequence of the architecture. The full comparison with WordPress breaks the gap down line by line.

What Core Web Vitals do not measure#

Let’s keep perspective. Core Web Vitals do not measure:

  • Content quality (which remains the most important ranking factor)
  • Keyword relevance
  • Backlink quality
  • Search intent

A site with mediocre content and perfect Core Web Vitals will not rank. But a site with excellent content and poor Core Web Vitals leaves money on the table — in SEO and in conversions.

Frequently asked questions#

Are Core Web Vitals a ranking factor?

Yes, among the page experience signals Google takes into account. But content weighs more: according to Google's documentation, good Core Web Vitals do not guarantee good rankings. Their effect shows mostly between pages of comparable quality.

Why is PageSpeed green when Search Console says Poor?

PageSpeed Insights' score out of 100 comes from a lab test, on one simulated visit. Search Console measures your real visitors over 28 days, on their phones and connections: that is the measurement Google uses. In PageSpeed, the top section, the Core Web Vitals assessment, is the one that should match Search Console.

Why do some pages not appear in the report?

Because they do not have enough visits to have data of their own. Google then groups them with the whole site, or leaves them out. For those pages, a PageSpeed Insights test is the only measurement available.

I fixed it: how long before it turns green?

About a month. The report aggregates 28 days of real visits, and the tracking started with Start tracking also lasts 28 days.

Mobile or desktop: which should I check first?

Mobile. Search Console measures both separately, and mobile is almost always worse: less powerful phones, slower connections. A site that is green on mobile is usually green on desktop too.

Should I aim for 100 on PageSpeed?

No. The goal is for your pages to pass all three thresholds in real-user data. A lab score above 90 gives you headroom; chasing 100 often takes a lot of work for a gain your visitors will not notice.


Paste your URL into PageSpeed Insights — the diagnosis takes 30 seconds. If your Core Web Vitals are in the red and optimisation has reached its limits, build your project in the configurator: you will see what a 95+ Lighthouse site would cost, same features.

Reading is good. Building is better.