Core Web Vitals: How to Pass Google's Page Experience Signals in 2026
Core Web Vitals are Google's measure of real-world user experience — and they're a confirmed ranking factor. Here's exactly how to diagnose and fix LCP, INP, and CLS issues on your WordPress site.
What Are Core Web Vitals and Why Do They Matter?
Core Web Vitals are a set of specific metrics that Google uses to measure real-world user experience on web pages. They became an official Google ranking factor in 2021 and have grown in importance every year since.
The three Core Web Vitals are:
- Largest Contentful Paint (LCP) — Measures loading performance. How long does it take for the largest visible element to load?
- Interaction to Next Paint (INP) — Measures interactivity. How quickly does the page respond to user interactions?
- Cumulative Layout Shift (CLS) — Measures visual stability. How much does the page layout shift unexpectedly as it loads?
Google's thresholds:
- LCP: Good = under 2.5s, Needs Improvement = 2.5-4s, Poor = over 4s
- INP: Good = under 200ms, Needs Improvement = 200-500ms, Poor = over 500ms
- CLS: Good = under 0.1, Needs Improvement = 0.1-0.25, Poor = over 0.25
Pages that pass all three metrics get a "good page experience" signal, which can provide a ranking boost in competitive search results.
How to Measure Your Core Web Vitals
Before fixing anything, measure where you stand. Use these tools:
- Google Search Console — The Core Web Vitals report shows real-world data (field data) from actual Chrome users visiting your site. This is the most important data source because it reflects real user experience.
- PageSpeed Insights (pagespeed.web.dev) — Shows both lab data (simulated) and field data for individual URLs. Provides specific recommendations for improvement.
- Chrome DevTools — The Performance tab and Lighthouse audit provide detailed lab data for diagnosing specific issues.
- Web Vitals Chrome Extension — Shows real-time Core Web Vitals data as you browse your site.
Important: Lab data (simulated) and field data (real users) can differ significantly. Google uses field data for ranking. Focus on improving your field data scores in Search Console.
Fixing Largest Contentful Paint (LCP)
LCP measures how long it takes for the largest visible element — usually a hero image, featured image, or large heading — to load. The most common LCP elements on WordPress sites are hero images and featured images.
Identify Your LCP Element
Open Chrome DevTools → Performance tab → Record a page load. The LCP element will be highlighted. Alternatively, use PageSpeed Insights — it shows you exactly which element is your LCP.
Optimise Your LCP Image
If your LCP element is an image (it usually is), these optimisations will have the biggest impact:
- Use WebP format — WebP images are 25-35% smaller than JPEG/PNG with the same quality. Use a plugin like Imagify, ShortPixel, or WebP Converter to automatically convert images.
- Compress aggressively — Aim for under 100KB for most images, under 200KB for hero images. Use TinyPNG or your image optimisation plugin.
- Serve the right size — Don't serve a 2000px wide image in a 400px container. Use WordPress's responsive images feature (srcset) to serve appropriately sized images.
- Preload the LCP image — Add a preload hint for your LCP image so the browser starts downloading it as early as possible:
<link rel="preload" as="image" href="hero.webp">. WP Rocket has a setting for this. - Use fetchpriority="high" — Add this attribute to your LCP image element to tell the browser to prioritise it.
Improve Server Response Time (TTFB)
Time to First Byte (TTFB) — how long it takes your server to start responding — directly impacts LCP. Improve it by:
- Upgrading to faster hosting (managed WordPress hosting like Kinsta, WP Engine, or Cloudways)
- Implementing server-side caching (WP Rocket, W3 Total Cache, LiteSpeed Cache)
- Using a CDN (Cloudflare, BunnyCDN, KeyCDN) to serve your site from servers close to your visitors
- Enabling GZIP or Brotli compression on your server
Eliminate Render-Blocking Resources
CSS and JavaScript files that load before your page content can delay LCP. Fix this by:
- Deferring non-critical JavaScript (add
deferorasyncattributes) - Inlining critical CSS (the CSS needed to render above-the-fold content)
- Removing unused CSS and JavaScript
- Using WP Rocket's "Delay JavaScript Execution" feature
Fixing Interaction to Next Paint (INP)
INP measures how quickly your page responds to user interactions — clicks, taps, keyboard inputs. A high INP score means your page feels sluggish and unresponsive.
Common INP Problems on WordPress Sites
- Heavy JavaScript from page builders — Elementor, Divi, and other page builders load significant JavaScript that can block the main thread and cause high INP scores. Consider switching to a lighter theme or using the block editor.
- Too many third-party scripts — Analytics, chat widgets, ad scripts, social sharing buttons — each one adds JavaScript that competes for the main thread. Audit and remove unnecessary scripts.
- Unoptimised event listeners — Poorly written JavaScript that runs expensive operations on every user interaction.
- Large DOM size — Pages with thousands of DOM elements take longer to process interactions. Simplify your page structure.
Fixing INP Issues
- Use Chrome DevTools' Performance Insights panel to identify which interactions are slow and what's causing the delay
- Defer or lazy-load third-party scripts using a plugin like WP Rocket or Asset CleanUp
- Disable page builder scripts on pages where they're not needed
- Use the WordPress block editor instead of heavy page builders where possible
- Implement code splitting to load JavaScript only when needed
Fixing Cumulative Layout Shift (CLS)
CLS measures how much your page layout shifts unexpectedly as it loads. A high CLS score means elements are jumping around as the page loads — a frustrating user experience.
Common CLS Causes on WordPress Sites
- Images without dimensions — When an image loads without defined width and height attributes, the browser doesn't know how much space to reserve for it. The page reflows when the image loads, causing layout shift. Fix: always add width and height attributes to your images. WordPress does this automatically for images added through the media library.
- Ads — Ad slots that load dynamically and push content down are a major CLS cause. Reserve space for ads with a fixed-size container.
- Web fonts — When a web font loads and replaces the fallback font, text can reflow if the fonts have different metrics. Fix with
font-display: swapand by preloading your web fonts. - Dynamically injected content — Cookie banners, newsletter popups, and other content injected above existing content cause layout shift. Use fixed positioning or reserve space for these elements.
- Embeds without dimensions — YouTube embeds, Twitter embeds, and other iframes without defined dimensions cause layout shift when they load.
Fixing CLS Issues
- Add explicit width and height to all images in your WordPress content
- Use the
aspect-ratioCSS property to reserve space for embeds - Preload critical fonts and use
font-display: swap - Use CSS transforms for animations instead of properties that trigger layout (top, left, margin, padding)
- Test with Chrome DevTools — the Layout Shift Regions feature highlights elements causing CLS
WordPress Plugins for Core Web Vitals
These plugins can significantly improve your Core Web Vitals scores:
- WP Rocket ($59/year) — The gold standard for WordPress performance. Handles caching, image optimisation, JavaScript deferral, and more. The single most impactful plugin for Core Web Vitals.
- Imagify / ShortPixel / Smush — Image optimisation and WebP conversion. Essential for LCP improvement.
- Cloudflare (free tier available) — CDN, caching, and performance optimisation. Dramatically improves TTFB for international visitors.
- Asset CleanUp — Disable unnecessary CSS and JavaScript on a per-page basis. Reduces page weight and improves INP.
- Perfmatters ($25/year) — Lightweight performance plugin that disables WordPress bloat (emojis, embeds, query strings) and manages scripts.
Core Web Vitals Action Plan
- Check your current scores in Google Search Console (Core Web Vitals report)
- Identify which pages are failing and which metrics are the problem
- Use PageSpeed Insights to get specific recommendations for your worst-performing pages
- Install WP Rocket (or your preferred caching plugin) and configure it properly
- Optimise all images — convert to WebP, compress, add dimensions
- Audit and remove unnecessary third-party scripts
- Fix any CLS issues identified in Chrome DevTools
- Re-test after changes and monitor Search Console for improvements
Core Web Vitals improvement is an ongoing process, not a one-time fix. Monitor your scores monthly and address new issues as they arise. The sites that consistently deliver fast, stable, responsive experiences are the ones that earn and maintain top rankings.
Explore Topics
Written by
WP SEO Beast
Content creator and writer sharing insights and stories.