Core Web Vitals: the three numbers worth fixing first
Core Web Vitals measure how a page feels: how fast the main content appears (LCP), how quickly the page responds when you tap something (INP), and whether things jump around while you read (CLS). Google folds them into ranking, but honestly, the bigger reason to care is simpler: slow, janky pages lose visitors before the marketing ever gets a chance.
The problem with most CWV advice is that it's a checklist of forty things. On real client sites, three fixes do most of the work. In order:
1. Fix the LCP image (biggest win, least effort)
On most pages the Largest Contentful Paint element is the hero image, and it's slow for boring reasons: it's a 2MB photo, it's lazy-loaded (so the browser politely waits before fetching the most important thing on the page), or it's discovered late because it's set as a CSS background.
- Serve it in a modern format (WebP/AVIF) at the size it's actually displayed.
- Never lazy-load the hero. Add
fetchpriority="high"to it instead. - Keep it in the HTML as a real
<img>so the browser finds it immediately.
I've seen this alone take LCP from over four seconds to under two on practice websites running heavy page builders.
2. Hunt the INP offenders (the quiet killer)
Interaction to Next Paint measures the lag between a tap and the page visibly responding. It's the vital most site owners have never heard of and the one most likely to be failing — because it's caused by things you can't see: third-party scripts.
The usual suspects on small-business sites: chat widgets, booking embeds, tag managers stuffed with old pixels, and page-builder JavaScript all competing for the main thread. Every one of them was added for a good reason and then forgotten.
- Open the site, count the third-party scripts, and ask of each: is this still earning its place?
- Load what remains after the page is interactive, not before.
- If a widget is heavy, use a facade: show a static button that only loads the real widget on click.
3. Pin down layout shift (the trust killer)
Cumulative Layout Shift is when the page jumps as things load and you tap the wrong button. Two fixes cover most of it:
- Give every image and embed explicit
widthandheightattributes so the browser reserves the space. - Reserve space for anything injected late — cookie bars, banners, ads — instead of letting it shove the content down.
Measure like you mean it
One distinction saves a lot of confusion: lab data (Lighthouse, PageSpeed Insights' top score) is a simulation; field data (the "real user" section, from actual Chrome visitors) is what Google uses. A page can score 95 in the lab and still fail in the field. Judge yourself on field data, watch it in Search Console's Core Web Vitals report, and give any fix a few weeks to show up — the field numbers are a 28-day rolling window.