Skip to content
Performance
7 min readBy Kshitiz Saxena

How to Pass Core Web Vitals on WordPress

Core Web Vitals failures hurt your Google rankings and frustrate visitors. Here’s how to diagnose and fix them on WordPress.

Your Google Search Console is showing red. PageSpeed Insights says your site is failing Core Web Vitals — the set of real-world performance metrics Google uses to measure how fast and stable your pages feel to visitors. A failing score can suppress your search rankings and push people away before they ever read a word. The good news: most WordPress sites fail for the same handful of fixable reasons, and you don't need to be a developer to address them.

What Are Core Web Vitals?

Core Web Vitals are three specific measurements Google collects from real visitors to your site. Understanding what each one measures tells you exactly where to focus.

Metric What It Measures Good Score
LCP (Largest Contentful Paint) How fast the biggest visible element loads Under 2.5 seconds
CLS (Cumulative Layout Shift) How much the page jumps around while loading Under 0.1
INP (Interaction to Next Paint) How quickly the page responds to clicks and taps Under 200 ms

Google measures these from actual Chrome users visiting your site, so lab tools like PageSpeed Insights give you a useful estimate, but the scores in Search Console reflect real-world data. Both matter.

Step 1 — Find Out Where You're Failing

  1. Open Google Search Console and go to Experience > Core Web Vitals. This shows which URLs are failing and which metric is the problem.
  2. Run your homepage through PageSpeed Insights for a detailed breakdown with specific recommendations.
  3. Note which metric is red: LCP, CLS, or INP. Each has a different fix.

Step 2, Fix a Slow LCP (Largest Contentful Paint)

LCP is almost always caused by a slow-loading hero image, an unoptimised web font, or a page that takes too long to start sending content. These are the most impactful fixes.

  • Compress and convert your hero image. Upload images as WebP format and keep your hero image under 150 KB. Plugins like Imagify or ShortPixel handle this automatically.
  • Add `fetchpriority="high"` to your hero image. This tells the browser to load it first. Most page builders and themes let you set this in the image block settings; look for a 'High Priority' or 'Preload' toggle.
  • Enable a caching plugin. Caching stores a ready-made copy of each page so WordPress doesn't rebuild it from scratch for every visitor. LiteSpeed Cache and WP Super Cache are both free and reliable.
  • Use a CDN (Content Delivery Network). A CDN serves your images and files from a server close to each visitor. Cloudflare's free plan is a solid starting point.
  • Check your hosting. Slow server response time (TTFB over 600 ms) drags LCP down no matter what else you do. If your host is the bottleneck, upgrading to managed WordPress hosting makes an immediate difference.

Step 3, Fix CLS (Cumulative Layout Shift)

CLS is the score that captures page-jump frustration, buttons moving just as you tap them, text reflowing as a font loads. It's often caused by images without defined dimensions, late-loading ads, or web fonts that swap in after the page renders.

  • Set explicit width and height on every image. In the WordPress block editor, the Image block shows width and height fields in the sidebar. Fill them in. This reserves space before the image loads.
  • Preload your main web font. In your theme's settings or a plugin like Perfmatters, enable font preloading so the correct font appears on the first paint instead of swapping in later.
  • Use `font-display: swap` carefully. This prevents invisible text while fonts load, but can cause layout shift if your fallback font is a very different size. Test after enabling it.
  • Reserve space for ads and embeds. If you run ads or embed third-party widgets, wrap them in a container with a fixed minimum height so the page doesn't reflow when they load.

Step 4, Fix INP (Interaction to Next Paint)

INP replaced the older FID metric in 2024. A high INP score usually means too much JavaScript is running on the main thread, blocking the browser from responding to clicks. This is the trickiest metric to fix without developer help.

  • Audit your plugins. Deactivate plugins one at a time and retest in PageSpeed Insights. A single poorly coded plugin can add hundreds of milliseconds to your INP.
  • Defer non-critical JavaScript. Caching plugins like LiteSpeed Cache have a 'Defer JS' option under their JS settings. Enable it and test thoroughly, some scripts break when deferred.
  • Remove unused page builder scripts. If your theme or page builder loads its full JavaScript library on every page, look for a 'load assets only when needed' option in its settings.
  • Reduce third-party scripts. Chat widgets, marketing pixels, and social share buttons all add JavaScript. Remove any you don't actively use.

Step 5, Confirm Your Fixes Are Working

After making changes, retest in PageSpeed Insights immediately. Search Console data takes 28 days to update because it reflects real-user data collected over time, so don't panic if the dashboard still shows red. Use PageSpeed Insights as your day-to-day feedback tool and watch Search Console for the trend over the following month.

Passing Core Web Vitals on WordPress comes down to four things: fast images, a reliable cache, stable layouts, and lean JavaScript. Most sites can move from failing to passing by compressing images, enabling a caching plugin, and setting image dimensions, no code required. If your scores are still stuck after working through these steps, the issue is usually hosting speed or a specific plugin conflict that takes deeper investigation. Our speed optimization service handles the full audit and implementation for you, with measurable results.

How long does it take for Core Web Vitals to improve in Google Search Console?

Search Console uses a 28-day rolling window of real-user data, so improvements you make today won't be fully reflected for about four weeks. Use PageSpeed Insights to verify your fixes are working right away, and monitor Search Console for the trend over the following month.

Which plugin is best for improving Core Web Vitals on WordPress?

There's no single plugin that fixes everything, but LiteSpeed Cache is one of the most comprehensive free options, it handles page caching, image lazy loading, CSS/JS optimisation, and more. If your host doesn't support LiteSpeed, WP Rocket (paid) is a reliable alternative. Always test after enabling any optimisation plugin.

Can a slow web host cause Core Web Vitals failures?

Yes. TTFB (Time to First Byte), how long the server takes to start sending your page, directly affects LCP. If your server responds slowly, no amount of image compression or caching will fully compensate. Switching to quality managed WordPress hosting is often the single biggest improvement you can make.

My CLS score is failing but I can't see anything shifting on screen. Why?

Layout shifts often happen in the first few hundred milliseconds of loading, before you can see them. Use the Performance tab in Chrome DevTools to record a page load and look for Layout Shift events in the timeline, it will highlight the exact element causing the shift. Common culprits are images without set dimensions and late-loading fonts.

Do Core Web Vitals affect my Google search rankings?

Yes, Google confirmed that Core Web Vitals are a ranking signal as part of its Page Experience update. Failing scores won't tank a high-authority site overnight, but they can be the deciding factor between two pages competing for the same keyword. Passing them removes a known ranking disadvantage.

Is it safe to defer JavaScript to improve INP?

It can be, but it carries risk. Deferring the wrong script can break contact forms, WooCommerce checkout, sliders, or login functionality. Always back up your site first, make the change on a staging environment if possible, and test every interactive element on the page before pushing it live.

Hand your WordPress site to people who'll keep it running

Move to fully managed hosting and we'll handle speed, security, backups, and updates for you, with free migration and no lock-in. A faster, safer site, and a real person a click away.

We reply to every enquiry within one business day.