Core Web Vitals Optimization Guide: How to Improve LCP, INP, and CLS

Google uses three Core Web Vitals metrics — LCP, INP, and CLS — to evaluate how fast and smooth your website feels to real users. These metrics directly influence search rankings, and poor scores can push your pages below competitors with similar content but better performance. This guide explains each metric, what causes poor scores, and the specific optimizations that yield the biggest improvements.

February 23, 2026 15 min read SEO

The Three Core Web Vitals

MetricMeasuresGoodNeeds ImprovementPoor
LCPLoading speed≤ 2.5s2.5s – 4.0s> 4.0s
INPInteractivity≤ 200ms200ms – 500ms> 500ms
CLSVisual stability≤ 0.10.1 – 0.25> 0.25

Optimizing LCP (Largest Contentful Paint)

LCP measures how long it takes for the largest visible element to render — usually a hero image, heading, or video poster.

Top LCP Improvements

  1. Optimize the LCP image: Use WebP/AVIF formats, proper sizing, and fetchpriority="high"
  2. Preload critical resources: Add <link rel="preload"> for LCP image and fonts
  3. Eliminate render-blocking CSS/JS: Inline critical CSS, defer non-essential scripts
  4. Use CDN: Serve content from edge servers close to users
  5. Server response time: Target TTFB under 600ms with caching and server optimization
  6. Avoid lazy-loading above-the-fold: The LCP element should never be lazy-loaded

Optimizing INP (Interaction to Next Paint)

INP measures responsiveness — how quickly the page responds to user clicks, taps, and key presses throughout the session.

Top INP Improvements

  1. Break up long tasks: Split JavaScript tasks longer than 50ms using requestIdleCallback or scheduler.yield()
  2. Reduce JavaScript payload: Remove unused code, tree-shake dependencies
  3. Defer non-critical scripts: Use defer and async attributes
  4. Avoid layout thrashing: Batch DOM reads and writes
  5. Use web workers: Move heavy computations off the main thread
  6. Optimize event handlers: Debounce scroll/resize handlers, use passive event listeners

Optimizing CLS (Cumulative Layout Shift)

CLS measures visual stability — unexpected layout shifts that happen when content loads or changes position.

Top CLS Improvements

  1. Set image dimensions: Always include width and height attributes or use CSS aspect-ratio
  2. Reserve ad space: Use min-height to prevent content jumps when ads load
  3. Preload fonts: Use font-display: swap with preloaded web fonts
  4. Avoid inserting content above existing content: New elements should appear below the fold
  5. Use CSS contain: Isolate dynamic content areas to prevent layout recalculations
  6. Animation with transform: Use transform instead of top/left/width for animations

Performance Testing Tools

Free Performance Tools:

Frequently Asked Questions

Three Google metrics: LCP (loading ≤ 2.5s), INP (interactivity ≤ 200ms), CLS (stability ≤ 0.1). They measure real-world user experience and affect search rankings.

Yes. Core Web Vitals are a confirmed ranking signal since June 2021. Content quality is primary, but page experience is a tiebreaker.

INP (Interaction to Next Paint) replaced FID in March 2024. INP measures ALL interactions throughout a page session, not just the first.

Add width/height to images, reserve space for ads, preload fonts with font-display:swap, avoid inserting content above existing text, use transform for animations.
Performance
Related Guides
  • Domain Authority
  • Image Compression
  • Build Backlinks