The three Core Web Vitals that affect rankings
Google's Page Experience ranking signal is built around three Core Web Vitals metrics. Understanding what each measures — and what causes failures — is the prerequisite for effective optimisation.
LCP — Largest Contentful Paint
How long it takes for the largest visible element (usually a hero image or H1) to render
Common causes: Unoptimised hero images, render-blocking CSS/JS, slow server response times, no CDN
INP — Interaction to Next Paint
How quickly the page responds to user interactions (replaced FID in March 2024)
Common causes: Heavy JavaScript execution, long tasks blocking the main thread, excessive DOM size
CLS — Cumulative Layout Shift
How much the page layout shifts unexpectedly during loading
Common causes: Images without dimensions, dynamically injected content, web fonts causing FOUT
The highest-impact speed optimisations
Most speed optimisation guides list 20 or 30 potential improvements. In practice, three categories account for the majority of real-world gains for most sites:
1. Image optimisation
Impact: Very high — often the single largest LCP improvement
- →Convert images to WebP or AVIF format (30–50% smaller than JPEG at equivalent quality)
- →Set explicit width and height attributes on all images to prevent CLS
- →Use responsive images with srcset to serve appropriately sized images to each device
- →Add loading='lazy' to below-fold images; add fetchpriority='high' to the LCP image
- →Compress images before upload — tools like Squoosh or Sharp can reduce file size by 60–80%
2. Eliminating render-blocking resources
Impact: High — directly reduces LCP and Time to First Byte
- →Move non-critical CSS to async loading or inline critical CSS in the <head>
- →Defer non-critical JavaScript with defer or async attributes
- →Remove unused CSS — tools like PurgeCSS can eliminate 80%+ of unused styles in utility-first frameworks
- →Preload critical fonts with <link rel='preload'> to prevent FOUT-related CLS
3. Server and CDN configuration
Impact: High — reduces Time to First Byte (TTFB) globally
- →Implement a CDN (Cloudflare, Fastly, or similar) to serve assets from edge nodes near users
- →Enable HTTP/2 or HTTP/3 for multiplexed request handling
- →Set appropriate cache-control headers for static assets (1 year for versioned files)
- →Enable Brotli compression (better than gzip for most text assets)
From our work
A consistent pattern in technical audits: sites with poor Core Web Vitals scores almost always have the same root cause — unoptimised hero images served without WebP conversion, no explicit dimensions, and no fetchpriority attribute on the LCP element. Fixing these three issues alone typically moves LCP from 4–6 seconds to under 2.5 seconds. The PageSpeed Insights score improves dramatically, but more importantly, the field data (real user measurements) in Google Search Console begins improving within 28 days as the CrUX dataset updates.
How to measure page speed correctly
PageSpeed Insights runs a lab test — a single measurement in controlled conditions. It is useful for diagnosing issues but does not reflect real user experience. Google's ranking algorithm uses field data — real measurements from Chrome users — collected in the Chrome User Experience Report (CrUX).
The most important place to check your Core Web Vitals is Google Search Console → Core Web Vitals report. This shows field data for your site, segmented by mobile and desktop, with a breakdown of which URLs are failing and why. This is the data Google uses for ranking — not your PageSpeed Insights score.
CrUX data updates monthly and requires a minimum number of real user visits to populate. New sites or low-traffic pages may not have field data — in which case, lab data from PageSpeed Insights is the best available proxy.
Frequently asked questions
Does page speed directly affect Google rankings?
Yes. Google uses Core Web Vitals — LCP, INP, and CLS — as ranking signals through the Page Experience update. Pages that fail Core Web Vitals thresholds can be disadvantaged in rankings, particularly in competitive SERPs where other quality signals are similar.
What is a good LCP score for SEO?
Google's threshold for a 'good' LCP is under 2.5 seconds. Between 2.5 and 4 seconds is 'needs improvement'. Above 4 seconds is 'poor'. For SEO purposes, aim for under 2.5 seconds on mobile, as Google uses mobile-first indexing.
What is the fastest way to improve page speed?
The highest-impact improvements are typically: optimising and properly sizing images (often the single largest gain), eliminating render-blocking resources, and implementing a CDN. These three changes alone can move a site from 'poor' to 'good' on LCP in most cases.
Freelance SEO & AI Consultant — London
Technical SEO Specialist · Core Web Vitals · Koray Framework Practitioner
I audit Core Web Vitals and implement page speed improvements for London businesses — from image optimisation and render-blocking fixes to CDN configuration. About me →
Related guides
Failing Core Web Vitals? Let's fix it.
Technical SEO audits covering Core Web Vitals, image optimisation, and render-blocking diagnostics — direct-to-consultant.
View Technical SEO Audit