What Core Web Vitals are
Core Web Vitals are a set of three metrics Google uses to measure the quality of the user experience on a page: how quickly the main content appears, how quickly the page responds to actions and whether the layout "jumps" while loading. They are among the signals Google takes into account when rating pages.
The key point: Google rates them on data from real users (the Chrome UX Report), not just a test from one computer. What counts is the result for 75% of visits – including people on weaker phones and slower connections.
The three metrics and their thresholds
| Metric | What it measures | Good | Poor |
|---|---|---|---|
| LCP – Largest Contentful Paint | when the largest content element appears | up to 2.5 s | over 4 s |
| INP – Interaction to Next Paint | how quickly the page responds to clicks and taps | up to 200 ms | over 500 ms |
| CLS – Cumulative Layout Shift | layout shifts during loading | up to 0.1 | over 0.25 |
In 2024 INP replaced the earlier FID metric. It's more demanding, because it measures all interactions on the page, not just the first one.
How to check your site's scores
- PageSpeed Insights – enter the address and you get both data from real users (if the site has enough traffic) and a lab test with a list of issues,
- Google Search Console – the "Core Web Vitals" report shows which groups of pages have problems,
- Lighthouse in Chrome's developer tools – for quick tests while working on the site.
A lab score (e.g. 95/100 in Lighthouse) is a hint, not Google's rating. Data from users is what counts – so always check the site on an average phone too.
How to improve LCP
LCP is most often a large image in the header or the page's main heading.
- Compress images and use modern formats (WebP, AVIF) sized to fit the screen.
- Don't lazy-load the main image – it should download straight away; lazy-load only what's further down.
- Preload fonts and key resources, and display fonts with
font-display: swap. - Cut render-blocking scripts and styles – unnecessary libraries, plugins and third-party scripts loaded in the header.
- Shorten server response time – caching, compression, good hosting, and full-page caching for CMS-based sites.
How to improve INP
A poor INP means the browser is busy running JavaScript when the user tries to click something.
- Remove unnecessary JavaScript – unused plugins, widgets, heavy libraries for simple effects.
- Limit third-party scripts – chats, ad pixels, maps; load them only when they're needed.
- Split long tasks – break heavy computations into smaller pieces so the browser can respond in between.
- Simplify animations and avoid re-rendering a large part of the page after every click.
How to improve CLS
- Set the dimensions of images and videos (width and height) so the browser reserves space for them.
- Reserve space for banners, ads and embedded elements that appear later.
- Don't insert content above what the user already sees – for example notices that push the text down.
- Choose fallback fonts with similar proportions so swapping the font doesn't reflow paragraphs.
Speed isn't just SEO
A fast website means, above all, more enquiries and sales: users who don't have to wait read the offer and click "contact" more often. Especially on phones, where most visits happen.
That's why performance is worth planning from the start of a project rather than "bolting on" afterwards – by then it usually means a rebuild. That's how we approach every website we build. If you're wondering what such a website costs, read this guide.
Related services: websites.