Core Web Vitals are Google’s three metrics for measuring the real-world experience of loading and interacting with a page: how fast the main content appears, how quickly the page responds to input, and how visually stable it is while loading. They’re part of Google’s page experience signals, and just as importantly, they correlate strongly with bounce rate and conversion. Here’s what each one means and how to actually improve it.
The three metrics explained
- Largest Contentful Paint (LCP) — how long until the largest visible element (usually the hero image or heading block) renders. Target: under 2.5 seconds. This is your loading-speed metric.
- Interaction to Next Paint (INP) — how quickly the page responds to user interactions like taps and clicks, across the whole visit. INP replaced First Input Delay in March 2024. Target: under 200 milliseconds. This is your responsiveness metric.
- Cumulative Layout Shift (CLS) — how much the page jumps around as it loads. Target: under 0.1. This is your visual-stability metric.
Google judges a page “good” only when all three pass at the 75th percentile of real users.
Field data vs lab data — measure the right thing
This trips up a lot of people. Lab data (the score in Lighthouse or the lab section of PageSpeed Insights) is a simulated test of one load. Field data (from the Chrome User Experience Report, CrUX) is what real visitors actually experienced. Google ranks on field data. So a perfect Lighthouse score with poor field data still fails. Always check the Core Web Vitals report in Search Console — it shows field data grouped by URL pattern, which is the truest picture.
How to improve LCP
LCP is usually about the hero content and server speed:
- Optimise the largest image — compress it, serve WebP/AVIF, and size it correctly for the viewport.
- Preload the LCP image so the browser fetches it early.
- Improve server response time (TTFB) — better hosting, caching, and a CDN, which matters for Singapore sites hosted overseas.
- Remove render-blocking CSS and JavaScript that delay the main content.
How to improve INP
INP is about JavaScript and main-thread work:
- Reduce and split heavy JavaScript so the browser isn’t blocked when a user interacts.
- Defer or lazy-load non-critical scripts (chat widgets, analytics, third-party tags).
- Break up long tasks so the page can respond between them.
- Audit third-party scripts — marketing tags are a common INP killer; remove what you don’t need.
How to improve CLS
CLS is usually avoidable with a few disciplines:
- Always set explicit
widthandheight(or aspect-ratio) on images and video so space is reserved. - Reserve space for ads, embeds and banners rather than letting them push content down.
- Avoid inserting content above existing content after load.
- Preload web fonts and use
font-displayto prevent text reflow.
How much do Core Web Vitals affect rankings?
Be realistic: Core Web Vitals are a real but relatively lightweight ranking signal. They act as a tiebreaker — relevant, helpful content still wins, but between two comparable pages the faster, more stable one has an edge. The bigger payoff is usually conversion: faster pages keep more visitors and convert better. We treat Core Web Vitals as both an SEO and a revenue lever, which is how we prioritise them in our SEO services — fix the highest-traffic templates first, since one fix improves thousands of URLs.
A practical workflow
- Open the Core Web Vitals report in Search Console and note your “Poor” and “Needs improvement” URL groups (field data).
- Run representative URLs through PageSpeed Insights to diagnose which metric is failing and why.
- Fix by template — homepage, product, category, article — so each fix scales across many pages.
- Re-test after deployment and wait for field data to update (CrUX uses a 28-day rolling window).
- Monitor monthly, since new plugins, scripts and design changes reintroduce problems.
Third-party scripts: the hidden culprit
On a lot of Singapore business sites, the biggest drag on Core Web Vitals isn’t the site itself — it’s the pile of third-party scripts bolted on over the years. Analytics, chat widgets, heatmaps, marketing pixels, social embeds and ad tags all run JavaScript that competes for the main thread and delays interactivity (hurting INP) and loading (hurting LCP). To get this under control:
- Audit every tag — list what’s loading and why. Remove anything you no longer use; old pixels and abandoned tools accumulate silently.
- Load non-critical scripts late — defer or lazy-load chat and tracking so they don’t block the initial experience.
- Consolidate through a tag manager so you can control firing and sequencing in one place.
- Question every new request — each tag a colleague wants to add has a real performance cost.
Trimming third-party bloat is often the single highest-impact Core Web Vitals fix available, and it costs nothing but discipline.
Frequently asked questions
Are Core Web Vitals a major ranking factor?
They’re a genuine but minor factor — best thought of as a tiebreaker between similarly relevant pages. Don’t expect a ranking surge from fixing them alone; do expect better engagement and conversion. The strongest case for improving them is usually commercial, not just SEO.
Why does my Lighthouse score differ from Search Console?
Lighthouse gives lab data — a single simulated test on your device and connection. Search Console shows field data from real Chrome users over 28 days, which is what Google actually uses. Field data is the one to trust; a great lab score doesn’t help if real users are still having a poor experience.
How long after fixing do scores update?
Field data in CrUX uses a 28-day rolling window, so it takes weeks for improvements to fully reflect in Search Console after you deploy a fix and Google recrawls. Lab tools show the change immediately, but the field metrics that affect ranking lag behind. Be patient and keep monitoring.
Want a faster, higher-converting site? We improve Core Web Vitals as part of our performance marketing work. Tell us about your site for a speed review.