Core Web Vitals: What Actually Matters in 2025
Every year, someone claims Core Web Vitals is dead, or that a new metric replaced them. It's not true. Google still uses three core metrics as part of its page experience signal — and if your site fails them, you're leaving traffic on the table. Here's what actually matters in 2025.
The Three Core Metrics (And What They Mean)
Google's Core Web Vitals come down to three numbers. Everything else is secondary:
1. LCP — Largest Contentful Paint
What it measures: How long it takes for the largest visible element (usually a hero image or headline) to render on screen.
Target: Under 2.5 seconds.
This is the most important metric on the list. It directly reflects how quickly users see something meaningful. Fail LCP, and users assume your site is broken before they even scroll.
2. INP — Interaction to Next Paint
What it measures: How quickly your site responds after a user clicks, taps, or presses a key. INP replaced First Input Delay (FID) as the official metric in March 2024.
Target: Under 200 milliseconds.
This metric punishes bloated JavaScript. If your site loads 400KB of JS just to render a simple button, INP will catch it.
3. CLS — Cumulative Layout Shift
What it measures: How much your page jumps around as it loads — images popping in, text shifting, buttons moving.
Target: Under 0.1.
CLS is the most user-visible problem. Nothing frustrates people more than clicking a button that moves 300ms later and lands them on the wrong page.
What Doesn't Matter (Despite What You've Read)
There's a lot of bad advice floating around. Let me clear up three common myths:
- "Perfect 100 Lighthouse score" — Lighthouse is a lab tool, not a field metric. Google ranks on real-user data (CrUX), not lab scores.
- "Page weight under 1MB" — Not a Google metric. Small pages help, but they're not the ranking signal.
- "Time to First Byte (TTFB)" — Important for LCP, but not a Core Web Vital itself.
How to Actually Fix Them
Fixing LCP
-
Preload the hero image —
add
<link rel="preload">in the head - Use WebP or AVIF images — smaller files, same visual quality
- Serve from a CDN — Cloudflare, Vercel Edge, or Bunny CDN
Fixing INP
- Reduce JavaScript — audit with Webpack Bundle Analyzer
-
Break long tasks — use
requestIdleCallbackfor non-critical work - Defer third-party scripts — analytics, chat widgets, heatmaps
Fixing CLS
-
Set image dimensions —
always add
widthandheight - Reserve ad space — add min-height to any element that loads late
- Preload custom fonts — use font-display: swap and preload critical fonts
How to Measure (For Real)
Don't trust Lighthouse for ranking decisions. Use real field data from:
- Google Search Console — Core Web Vitals report under "Experience"
- PageSpeed Insights — the "Field Data" section at the top
- CrUX Dashboard — Google's public field data for any origin
- web-vitals library — track real-user metrics with your analytics
The Bottom Line
Core Web Vitals matter because user experience matters — and user experience is a ranking signal. The sites that win in 2025 aren't the ones chasing perfect Lighthouse scores. They're the ones that load fast, respond instantly, and don't jump around.
Every WordPress and Shopify site I ship passes Core Web Vitals in the green. Not because I'm lucky — because I test, measure, and optimize. If you want the same, let's talk.
Want a free Core Web Vitals audit? Book a call and I'll send you a Loom with specific fixes in 24h.