How to check your website's Core Web Vitals
Core Web Vitals are the three metrics Google uses to judge how a page actually feels to use, not just how fast it loads on paper. Checking them takes two minutes and needs no account.
What the three metrics actually measure
Largest Contentful Paint (LCP) times how long the single biggest visible element on the page takes to render fully on screen - in practice this is usually a hero image, a large heading, or a background graphic sitting above the fold. It matters because it is the closest proxy Google has found for what a visitor experiences as "the page has loaded": not when every last background request finishes, but when the content someone actually came for is visibly there and readable. Interaction to Next Paint (INP) measures something different: the gap between a person clicking a button, opening a menu, or typing into a field, and the browser visibly responding. A slow INP is what makes a site feel broken even though it technically loaded fine - the tap registers, but nothing happens for half a second, so the visitor taps again or gives up. Cumulative Layout Shift (CLS) scores how much content jumps around unexpectedly as the page renders, the classic case being a button that shifts position just as a thumb goes to tap it, landing the tap on an ad instead.
Where to check them for free
PageSpeed Insights (pagespeed.web.dev) is the simplest starting point: paste in a URL and it returns two different reports on one page. The first is a lab test, run instantly on Google's own servers under a simulated connection. The second, shown only for sites with enough traffic, is real field data pulled from the Chrome User Experience Report (CrUX), the anonymised dataset Google builds from actual Chrome users who opted in to sharing performance data. Search Console's Core Web Vitals report works at a different scale: instead of testing one URL, it groups every page Google has field data for into pass or fail buckets by template. That matters more than any single-page score, because it shows the pattern across your whole site rather than one symptom of it.
Field data and lab data measure different things
Lab data is a single simulated test run on Google's servers under controlled conditions - useful for debugging because it is repeatable and instant, but easy to make look better than reality, since it usually runs over a fast, uncongested connection with nothing else competing for bandwidth. Field data is the opposite: the real, messy experience of your actual visitors, on whatever device and network they happen to be using, averaged over a rolling 28-day window and typically assessed at the 75th percentile, meaning three out of four real visits need to meet a threshold before a page counts as good. Google's ranking systems use field data, not lab data, for exactly this reason - it reflects what real people encounter, not what a developer sees on office fibre. If your lab score looks excellent but the field data for the same page is poor, trust the field data; the gap usually means real visitors are on slower connections or older phones your test never simulated.
What counts as good
Google's published thresholds are: LCP under 2.5 seconds is good, up to 4 seconds needs improvement, and beyond that is poor. INP under 200 milliseconds is good, up to 500 milliseconds needs improvement, and beyond that is poor. CLS under 0.1 is good, up to 0.25 needs improvement, and beyond that is poor. The part people miss is that a page needs all three metrics in the good range at once to pass the overall assessment - there is no averaging and no partial credit. A page with an excellent 1.8 second LCP and a near-perfect CLS of 0.05 still fails overall if its INP sits at 350 milliseconds, because one metric in the needs-improvement or poor range drags the whole page down regardless of how strong the other two are. That all-or-nothing structure is deliberate: a page that loads fast but responds slowly to clicks is still a bad experience.
The fixes that move the needle most
For LCP, the two most common culprits are an oversized, uncompressed hero image and render-blocking scripts that delay the browser from starting to paint the page at all - compressing that image and making sure nothing critical sits behind a script that has to load and execute first typically produces the biggest single improvement. For INP, the usual offenders are third-party scripts that attach listeners across the whole page and then run expensive code on the main thread every time someone clicks anything: chat widgets, heatmap trackers, and analytics tags are frequent culprits, and removing or deferring the ones you don't strictly need often fixes INP faster than any code optimisation. For CLS, the fix is usually mechanical: set explicit width and height on every image and ad slot so the browser reserves the space before the file loads, instead of the layout jumping once it arrives.
Checking it across your whole site, not one page
A single-page test only tells you about the one URL you pasted in, and most real sites don't fail Core Web Vitals uniformly - they fail on specific templates. A common pattern is a homepage that scores well because someone optimised it once, sitting alongside product pages loaded with third-party embeds, or a blog template full of unoptimised images uploaded straight from a phone, each dragging down a different metric for a different reason. Testing only the homepage and assuming the rest of the site follows is one of the most common ways a genuine vitals problem goes unnoticed for months. AuditHQ's Technical suite pulls real Core Web Vitals field data as part of the free scan and breaks it down by page and by metric, so instead of a single pass or fail verdict you see exactly which template is failing and which of the three metrics is responsible.
Frequently asked questions
Are Core Web Vitals a confirmed Google ranking factor?
Yes, Core Web Vitals are part of Google's page experience signals, confirmed by Google itself, though in practice content relevance and topical authority outweigh them by a wide margin - a page with poor vitals but genuinely the best answer to a query will usually still outrank a faster page that answers it worse. Vitals rarely explain a ranking gap entirely on their own; they act more as a tiebreaker between otherwise similar pages, and as a hard ceiling in edge cases where a page is so slow or unstable that Google treats it as a poor experience regardless of content quality. Separately from any ranking effect, poor vitals reliably correlate with lower conversion rates, since visitors abandon slow or janky pages before they ever convert.
Why do my scores differ between PageSpeed Insights and other tools?
Different testing tools run from different server locations, simulate different connection speeds, and use different device profiles, so a lab score from one tool can genuinely differ from another even when testing the identical URL at the identical moment - neither is wrong, they're measuring under different simulated conditions. Lab scores also vary run to run on the same tool, by nature of being a single test rather than an average. Field data, the real 28-day rolling average of your actual visitors, is far more stable across tools because it's pulled from the same underlying CrUX dataset regardless of which tool displays it, and it's what Google actually uses to rank pages - treat lab scores as a debugging aid, not the final verdict.
How often should I re-check Core Web Vitals?
Monthly is a reasonable baseline for most sites, but the more useful trigger is event-based: check immediately after adding a new plugin, embed, widget, or completing a redesign, since these are by far the most common causes of a sudden regression and are far easier to diagnose right after the change than weeks later with several possible culprits to untangle. Search Console's report updates on a rolling basis, so a quick glance there between full checks catches drift early. Sites that change frequently, like ecommerce stores adding new apps regularly, benefit from checking closer to weekly rather than monthly.