Development

Core Web Vitals explained: what LCP, INP and CLS mean for your business

Core Web Vitals are Google's measures of how fast, responsive and stable your pages feel to real visitors. What LCP, INP and CLS mean, how to check them properly, the usual causes of a fail and what fixing them costs.

By the WE-DEV teamUpdated 7 min read
A traffic light glowing red, amber and green against a dark background

Core Web Vitals are three measurements Google uses to judge how a page feels to real visitors. Largest Contentful Paint (LCP) is how quickly the main content appears; Interaction to Next Paint (INP) is how quickly the page reacts when someone taps or clicks; Cumulative Layout Shift (CLS) is how much the layout jumps while loading. The “good” targets are LCP of 2.5 seconds or less, INP of 200 milliseconds or less and CLS of 0.1 or less, met by at least 75 % of real visits. They are a modest ranking signal, but a big customer signal: slow, laggy, jumpy pages lose enquiries and sales long before Google notices.

This guide explains each metric without jargon, how to check yours properly, what usually causes a fail, what fixing it costs, and when it is cheaper to rebuild.

The three metrics at a glance

MetricWhat it measuresGoodNeeds improvementPoor
Largest Contentful Paint (LCP)Loading: when the biggest visible element, usually the hero image or headline, has rendered2.5 s or less2.5–4 sOver 4 s
Interaction to Next Paint (INP)Responsiveness: the delay between a tap, click or key press and the screen visibly reacting200 ms or less200–500 msOver 500 ms
Cumulative Layout Shift (CLS)Visual stability: how much content moves unexpectedly0.1 or less0.1–0.25Over 0.25

The thresholds are published by Google on web.dev. A page passes when the 75th percentile of visits meets the “good” threshold for all three, with mobile and desktop assessed separately. Put simply, three out of four visitors must get a good experience, including people on older phones and patchy signal.

Largest Contentful Paint: has it loaded?

LCP records when the largest image or text block in the visible area finishes rendering. On most business sites that is the hero photo, or the main headline on a text-led page. Google breaks LCP into four parts, which is useful when diagnosing it:

  • Time to first byte: how long the server takes to start responding. Slow hosting and no caching show up here.
  • Resource load delay: how long before the browser even starts fetching the hero image. Lazy-loading the hero, or setting it as a CSS background, makes this worse.
  • Resource load duration: how long the image takes to download. A 3 MB JPEG straight from a camera is the usual culprit.
  • Render delay: time spent waiting for CSS, fonts and JavaScript before the element can be painted.

Interaction to Next Paint: does it respond?

INP replaced First Input Delay as a Core Web Vital in March 2024. It looks at every tap, click and key press during a visit and reports one of the slowest. A poor INP is the menu that takes a beat to open, or the “Add to basket” button that seems to ignore you, so people tap it twice. The delay is almost always JavaScript: the browser is too busy running scripts to respond.

Cumulative Layout Shift: does it stay still?

CLS measures unexpected movement. You have felt it when you go to tap a link and an image or banner loads above it, pushing everything down so you tap the wrong thing. It is a score rather than a time, and lower is better. Movement caused directly by the user, such as opening an accordion, does not count.

Why they matter to a business

Search

Core Web Vitals are part of Google’s page experience signals. Google is clear that relevant, helpful content matters more and that great vitals will not lift a weak page. In practice they act as a tie-breaker where competing pages are similarly relevant, which is common in crowded local and service searches: emergency plumbers in Manchester, accountants in Leeds, dentists in Bristol.

Customers

The bigger effect is on people. Ofcom’s research has shown for years that smartphones are the device UK adults use most to go online, and a lot of that browsing happens in poor conditions: on a train between Birmingham and London, in a shop with one bar of signal, on a three-year-old Android. Core Web Vitals field data is collected from exactly those visits, which is why a site that feels quick on your office broadband can still fail.

How to check your Core Web Vitals properly

PageSpeed Insights

Paste a page address into Google’s PageSpeed Insights. The top section is field data: real Chrome users over the previous 28 days, from the Chrome UX Report, shown for that URL if it has enough traffic and for the whole origin (your domain) otherwise. Below it is a Lighthouse lab test on a simulated mid-range phone, with a score out of 100 and a list of diagnostics.

Google Search Console

The Core Web Vitals report groups your URLs into good, needs improvement and poor, using field data. It is the best way to see patterns across a site, for example every product page failing CLS because of one template.

Field data versus lab data

ItemField dataLab data (Lighthouse)
SourceReal Chrome users, rolling 28 daysOne simulated load on a throttled device
Used by Google for Core Web VitalsYesNo
Measures INPYesNo (uses Total Blocking Time as a proxy)
Updates after a fixGradually, over up to 28 daysImmediately
Available for small sitesOften not, if traffic is lowAlways

Two practical points follow. A Lighthouse score of 95 does not guarantee passing field data, though it makes it much more likely. And after you fix something, the field numbers take up to four weeks to reflect it, so don’t panic when Search Console still shows red the next day.

A typical audit, worked through

Here is the pattern we see most often on a five-year-old WordPress brochure site built with a page builder. The figures are representative of what we find, not a specific client.

Metric (mobile, field)BeforeMain causesAfter fixes
LCP4.2 s2.8 MB hero image, lazy-loaded; no page caching; 600 KB of builder CSSAround 2.0–2.3 s
INP340 msSlider script, chat widget and six marketing tags on every pageAround 150–180 ms
CLS0.21Cookie banner inserting above the header; images without dimensions; web font swapUnder 0.05

The fixes: resize the hero to around 1,600 px wide and serve it as WebP or AVIF, stop lazy-loading it and preload it; switch on page caching and put the site behind Cloudflare; remove the slider; delay the chat widget until the visitor interacts; move tags behind consent; overlay the cookie banner; set width and height on every image; preload the main font. That is roughly 8 to 12 hours of work on a site like this. Results vary, and some sites need deeper work, but this is the common case.

What usually causes a fail, and the fix

SymptomUsual causeFixTypical effort
Poor LCPOversized hero imageResize, compress, modern format, preload1–2 h
Poor LCPSlow server responsePage caching, better hosting, CDN1–4 h plus hosting change
Poor LCPRender-blocking CSS and JSRemove unused CSS, defer scripts, inline critical CSS3–8 h
Poor INPThird-party scripts (chat, heatmaps, tags)Remove, delay or load on interaction1–4 h
Poor INPHeavy theme or page builder JavaScriptTrim features, or rebuild templates8–40 h
Poor CLSImages and embeds without dimensionsSet width and height, reserve space1–3 h
Poor CLSBanners and notices inserted above contentUse overlays1–2 h
Poor CLSWeb font swappingPreload fonts, matched fallback metrics1–2 h

For WordPress specifically, our guide to speeding up WordPress walks through twelve fixes in detail. Cookie banners are a frequent CLS and INP offender; see our UK cookie banner guide for how to get one that is compliant and light.

Why some sites never pass

The underlying problem is usually weight. Page-builder themes load large amounts of CSS and JavaScript on every page whether it is used or not, and each plugin adds its own scripts on top. You can optimise around that for a while, but at some point you are spending more on workarounds than a lean rebuild would cost.

That is why we hand-build classic WordPress themes without page builders and target Lighthouse 95+ and WCAG 2.2 AA on every template. Speed designed in from the start is cheaper than speed rescued later. Core Web Vitals sit alongside accessibility, structured data and content quality in our list of what a business website needs in 2026.

What it costs to fix

SituationTypical workCost at £50/h + VAT
Images, caching and a couple of heavy plugins3–6 hours£150–£300 + VAT
Builder overhead, many third-party scripts, font and banner issues10–20 hours10 h: £475 + VAT (£570); 20 h: £850 + VAT (£1,020)
Heavy theme on slow shared hostingOften cheaper to rebuildFixed-price packages from £350 + VAT

The bank prices include our volume discounts: 10 hours is £500 − 5 % = £475, 20 hours is £1,000 − 15 % = £850, both before 20 % VAT, and hours never expire. You can book hours online. If a rebuild makes more sense, compare our fixed-price packages: the Pro Website at £750 + VAT covers ten pages with a CMS, which is often less than chasing a heavy theme for 20 hours. Hosting, caching and CDN set-up fall under our DevOps services, and new builds under web development.

Your Core Web Vitals checklist

  • Check field data for your key templates (home, service, product, contact) in PageSpeed Insights, on mobile first.
  • Open the Core Web Vitals report in Search Console and look for templates that fail together.
  • Resize and preload the hero image; never lazy-load it.
  • Set width and height on all images, videos and embeds.
  • List every third-party script and remove or delay anything not earning its place.
  • Overlay cookie banners and notices rather than pushing content down.
  • Turn on page caching and a CDN.
  • Re-test in the lab straight away, then check field data again after 28 days.

Our team is based in St Albans and works with businesses across the UK. If your scores are in the red, send us the address and we will tell you honestly whether it is a few hours of fixes or time for a leaner site.

Frequently asked questions

What are good Core Web Vitals scores?

Google's 'good' thresholds are Largest Contentful Paint of 2.5 seconds or less, Interaction to Next Paint of 200 milliseconds or less and Cumulative Layout Shift of 0.1 or less, measured at the 75th percentile of real visits, separately for mobile and desktop.

Do Core Web Vitals affect Google rankings?

They are part of Google's page experience signals, but relevance and content quality matter more. They tend to act as a tie-breaker between similarly relevant pages. The bigger effect is on visitors, who abandon slow and jumpy pages.

Why is my PageSpeed score good but Search Console says my pages fail?

The PageSpeed score is a single lab test on a simulated phone. Search Console uses field data from real Chrome users over 28 days, including slower devices and networks, and it measures INP, which the lab test cannot. Fix the field data issues first.

How long until fixes show up in Search Console?

Field data is a rolling 28-day window, so improvements appear gradually over about four weeks. Lab tests in PageSpeed Insights reflect changes immediately, which is useful for checking the fix worked.

My site has no field data. What should I do?

Low-traffic sites often have no Chrome UX Report data. Aim for strong Lighthouse results on a mobile test (90+), follow the usual good practice on images, scripts and layout, and the field data will usually be good once it appears.

How much does it cost to fix Core Web Vitals?

Simple image and caching fixes typically take three to six hours; a site weighed down by a page builder and third-party scripts may need 10 to 20. Our WordPress rate is £50/h + VAT, with 10 hours at £475 + VAT after the volume discount.

WE-DEVUK software and web development agency. We build websites, custom software, mobile apps and online shops, and write these guides from the projects we run every week.

Photo: Drew Beamer via Unsplash

Read next

Tell us what the business needs.

A developer replies within one working day. Fixed price or hourly, your choice — and the code is yours.