Core Web Vitals and page speed: what's worth fixing, and what's diminishing returns

Dan Walsh
By Dan WalshPublished

Going from good to perfect on an already-passing metric, versus real UX problems that are worth fixing regardless of score.

Core Web Vitals have been part of the SEO conversation for a few years now, and most organisations have absorbed the headline message: page speed matters, Google measures it, fix your score. What’s less well understood is which fixes actually move the needle and which ones are effort spent chasing a number that’s already good enough.

Here’s where the current thresholds sit, and where we’d point your time.

The three metrics, and what “good” means

Google’s Core Web Vitals measure three things, each assessed at the 75th percentile of real visits to your site, tracked separately for mobile and desktop:

Largest Contentful Paint (LCP) measures loading performance — specifically, how long it takes for the largest visible piece of content (usually a hero image or headline) to render. Good: 2.5 seconds or less.

Interaction to Next Paint (INP) measures responsiveness — how long the page takes to visibly respond after a user clicks, taps or types. Good: 200 milliseconds or less. INP replaced an older metric, First Input Delay, because FID only measured the delay before a response started, not how long the response itself took to actually show up on screen.

Cumulative Layout Shift (CLS) measures visual stability — whether content jumps around as a page loads (the classic case: you go to tap a button and an ad loads above it, and you tap the wrong thing). Good: 0.1 or less.

Google has said stable Core Web Vitals metrics won’t change more than once a year, so this isn’t a moving target month to month — but it is worth periodically checking you’re still being measured on the current definitions rather than an old one.

Where the effort is genuinely worth it

Getting LCP under control usually has the biggest real-world payoff, because it’s the metric most directly tied to how fast a page feels, and it’s the one where the easy wins are genuinely easy: compressing and correctly sizing images, using modern formats like WebP or AVIF, preloading the hero image or font instead of letting the browser discover it late, and cutting render-blocking CSS and JavaScript that delays the largest element from appearing. If your LCP is sitting well above 2.5 seconds, this is where to start — it’s usually the highest-leverage fix available.

Fixing genuinely janky interactions matters for INP — a search box that lags before showing results, a menu that takes half a second to open, a checkout step that freezes the page while it validates a field. These aren’t abstract scoring problems; they’re the same thing a frustrated user would complain about if you watched them use the site. Long JavaScript tasks that block the main thread are almost always the cause, and breaking them up (or moving work off the main thread) is worth the engineering time.

CLS problems are usually cheap to fix and worth fixing regardless of the score, because they’re also just bad UX — reserving space for images and ads before they load, and avoiding injecting content above what a user is currently reading, are both small, low-risk changes with an immediate, visible improvement.

Where you’re likely chasing diminishing returns

Going from “good” to “perfect.” If your LCP is already at 1.8 seconds, squeezing it to 1.2 seconds is unlikely to move rankings or conversion meaningfully — you’ve already cleared the threshold Google actually scores against. The gap between “good” and “excellent” on a metric that’s already passing is usually the least valuable hour of optimisation work available to you, and it’s exactly the hour a lot of technical audits recommend first, because it’s the easiest number to keep improving on a report.

Micro-optimising a page that gets almost no traffic. Core Web Vitals are assessed per page (and rolled up for ranking purposes at a broader site or template level), so the return on fixing a rarely-visited page is close to zero. Prioritise your homepage, top landing pages, and your highest-traffic templates — a product page template used across thousands of SKUs is worth far more attention than any single page.

Treating the score as the goal rather than the symptom. A common failure mode is a team spending weeks getting a Lighthouse lab score into the green while real-world visitors — measured by actual field data — are still having a slow, janky experience because the lab test doesn’t reflect real network conditions, real devices, or real third-party scripts (chat widgets, ad tech, analytics) loading on top of the page. Optimise against real user data (Chrome UX Report / your own analytics), not just a synthetic test score.

Assuming Core Web Vitals alone will fix a ranking problem. They’re one of many ranking signals, not a silver bullet. A technically fast site with thin or unhelpful content won’t outrank a slightly slower site with genuinely better answers to what the searcher wants. Speed is a threshold to clear, not a lever to keep pulling past the point it’s already cleared.

A sensible order of operations

  1. Check your real-world (field) data first — Google Search Console’s Core Web Vitals report or Chrome UX Report — not just a single lab test, which can mislead.
  2. Fix any page or template failing LCP, INP or CLS outright before optimising anything already passing.
  3. Prioritise by traffic: your homepage and highest-traffic templates first, low-traffic pages last.
  4. Address genuinely janky interactions (slow search, laggy menus, blocking scripts) even where the INP number is technically fine — a bad interaction is a bad interaction regardless of the millisecond count.
  5. Once everything’s comfortably in the “good” range on real traffic, redirect the budget elsewhere — content, accessibility, conversion work — rather than continuing to shave milliseconds off an already-passing score.

The takeaway

Core Web Vitals are a genuinely useful, evidence-based way to catch real problems — sites that are slow, janky or visually unstable in ways that cost both users and rankings. But “good” is a threshold, not a leaderboard. The value curve is steep at the start and flattens fast once you’re passing; know where you are on that curve before deciding where to spend the next hour of development time.

If you’d like a Core Web Vitals audit of your site — with real field data, not just a lab score — get in touch.

We use cookies to make this website work, to understand how it's used, and to measure our advertising. Find out more about cookies.

Cookie preferences

make an enquiry

Quick form · 3 steps · 1 min

How can we help?

I am looking for

Website

New marketing website, microsite or redesign

E-commerce

Shopify store, new or rebuilt

Web application From £10,000 + VAT

Bespoke software and internal tools

AI implementation From £10,000 + VAT

Practical AI in your existing systems

Data visualisation From £10,000 + VAT

Dashboards and data pipelines

Migrations, hosting & support

Website migrations, web hosting and ongoing support

Something else / not sure yet

Let's talk it through

Prefer to talk?

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Step 1 of 3

We'll be in touch within one business day to discuss your project. In the meantime, feel free to drop us a line at hello@enovate.co.uk if anything else comes up.

book directly

Book a discovery call with Michael

Michael Walsh, Founder & Managing Director. Pick a time that suits you, add your name and email, and the calendar invitation is yours.

Loading available times…

You can still book through the full calendar, or send us a message.

Times shown in . The calendar invitation lands in your inbox the moment you confirm.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply. Booking is handled by Calendly; see our privacy policy.

You're booked in

(). The calendar invitation is on its way to .

RescheduleCancel