Page Speed and Core Web Vitals: What Actually Impacts Rankings
Not every speed metric affects rankings equally. Here's what Google actually measures, what the thresholds are, and which fixes move the needle.
Posted by
Related reading
What Is GEO (Generative Engine Optimization): How to Get Cited by AI
Generative Engine Optimization is how you get your content cited in ChatGPT, Perplexity, Google AI Overviews, and other AI-generated answers. Here's what actually works.
What Is AEO (Answer Engine Optimization) and How to Do It
Answer Engine Optimization is how you get your content into featured snippets, People Also Ask boxes, and voice search results. Here's exactly how to do it.
Google Search Console: The Complete Guide for Site Owners
Google Search Console is the most underused free SEO tool available. Here's exactly what to check, when to check it, and what to do with what you find.
Core Web Vitals: the three metrics Google uses as ranking signals
Google confirmed Core Web Vitals as a ranking factor in 2021. There are three metrics: LCP (Largest Contentful Paint), INP (Interaction to Next Paint, which replaced FID in 2024), and CLS (Cumulative Layout Shift). Each has a specific threshold for "good", "needs improvement", and "poor". Getting all three into the "good" range is the goal - but not all three carry equal weight.
LCP - Largest Contentful Paint
LCP measures how long it takes for the largest visible element on the page to render. This is usually the hero image, the featured image in a blog post, or a large heading block. Thresholds:
- Good: under 2.5 seconds
- Needs improvement: 2.5 – 4.0 seconds
- Poor: over 4.0 seconds
LCP is the most impactful of the three for SEO purposes. The most common causes of slow LCP are unoptimised images (not using WebP or AVIF), no fetchpriority="high" on the hero image, and server response times over 600ms. Fix these first.
INP - Interaction to Next Paint
INP measures how quickly the page responds to user interactions - clicks, taps, and keyboard input. It replaced the old FID metric in March 2024 because FID only measured the first interaction, while INP measures all of them. Thresholds:
- Good: under 200ms
- Needs improvement: 200 – 500ms
- Poor: over 500ms
For most content sites and blogs, INP is rarely the problem - it tends to matter more for web apps with heavy JavaScript. If your site is built on Next.js or Nuxt with minimal client-side JS, you're likely fine here already.
CLS - Cumulative Layout Shift
CLS measures visual stability - specifically, how much page elements move around as the page loads. A score of 0 means nothing shifted. Thresholds:
- Good: under 0.1
- Needs improvement: 0.1 – 0.25
- Poor: over 0.25
The most common cause is images or embeds without explicit width/height attributes, causing the browser to reflow layout when they load. The fix is simple: always set width and height on every <img> tag, and avoid inserting content above the fold after page load (e.g. cookie banners injected late).
Which speed fixes actually move rankings
Based on Google's documentation and real-world SEO case studies, the ranking impact of Core Web Vitals is most pronounced in competitive SERPs where multiple pages are otherwise near-equal in quality. The practical priority order:
- 1. Get LCP under 2.5s - compress and convert images to WebP, use a CDN, add fetchpriority="high" on the hero image
- 2. Eliminate CLS - set explicit dimensions on all images and media
- 3. Fix INP only if it's in "poor" - audit JS execution time with Chrome DevTools Coverage tab
Run your pages through Seops to get a combined technical audit covering page speed alongside all other on-page SEO factors. Also see our full SEO audit checklist.