← Back to the blogSEO

Improving Core Web Vitals: the 5 most common bottlenecks

25 June 2026
Improving Core Web Vitals: the 5 most common bottlenecks

Three metrics, five causes, one priority order by impact. That's how you find the bottleneck instead of turning every knob at once.

Core Web Vitals are three metrics Google uses to assess the user experience: load time, response time, visual stability. Google sets clear thresholds. A page counts as good when 75 percent of real visits stay under them (web.dev, 2026). The values are public and retrievable for every URL. That makes them both a ranking signal and a conversion lever.

The three metrics, in numbers

Each metric measures a different part of the page experience. The thresholds come straight from Google.

  • LCP (Largest Contentful Paint): when the largest visible element is rendered. Good: under 2.5 seconds.
  • INP (Interaction to Next Paint): how fast the page responds to a click or tap. Good: under 200 milliseconds.
  • CLS (Cumulative Layout Shift): how much the layout shifts while loading. Good: under 0.1.

INP is the youngest of the three. Since March 2024 it replaces the old FID metric (web.dev, 2024). It's measured at the 75th percentile of all visits, split by mobile and desktop (web.dev, 2026). So a good lab score isn't enough. The majority of your real visitors has to hold the threshold.

A ranking factor? Yes, but not a master switch

Precision pays off here. Core Web Vitals feed into Google's ranking, but they're not a dominant factor. Google itself puts it cautiously:

There is no single signal. Our core ranking systems look at a variety of signals that align with overall page experience. (Google Search Central, 2026)

Relevance beats speed. A slow page with the best content still ranks. But for queries with many equally good results, page experience tips the race. And the second lever works right away: speed sells. Vodafone improved LCP by 31 percent and recorded 8 percent more sales (web.dev Case Study, 2026). Ranking is one half. Bounce rate is the other.

The five usual suspects

Most bad scores have the same causes. Five keep showing up.

  • Heavy images without a modern format. An uncompressed hero image pushes LCP past 2.5 seconds. Fix: WebP or AVIF, fixed width and height. (LCP)
  • Render-blocking CSS and JavaScript. The browser waits before it paints the page. Fix: inline the critical CSS, defer the rest. (LCP)
  • Slow server response. No caching, an overloaded CMS, sluggish hosting. Fix: turn on page caching, cut response time noticeably. (LCP)
  • Third-party scripts. Chat widget, cookie banner, and tracking tags block the main thread. Fix: audit every script, drop what's unnecessary, defer the rest. (INP)
  • Late-loading elements without reserved space. Banners, web fonts, and images without a size attribute push the layout around. Fix: set fixed dimensions, reserve the space up front. (CLS)

Map every finding to a metric. Then you know which number a fix moves.

Measuring: lab versus field

There are two kinds of data, and they often contradict each other. Lighthouse delivers lab data. A test run under fixed conditions, good for debugging, reproducible. Field data like the Chrome UX Report measures real visitors on real devices. Google grades by field data, not by lab.

The difference is practical. Lighthouse shows 95 on your laptop while users on 4G fail at INP. web.dev is unambiguous: when both data sources are available, you prioritize by field (web.dev, 2026). Two tools show both. PageSpeed Insights puts lab and field data side by side. The Search Console's Core Web Vitals report groups the field data by URL type.

Prioritize by impact

Anyone out to optimize PageSpeed likes to chase every red value. That's the wrong reflex. Three questions sort the list.

Which metric breaks the threshold at the 75th percentile? Only that one counts. How many users does it hit, mobile or desktop? And how expensive is the fix? Compressing an image takes minutes. Removing a third-party script takes an approval. Pull the cheapest fix with the biggest field impact to the front. The rest waits.

An example. On mobile, CLS breaks the threshold, caused by a banner without a fixed height. One attribute in the template, five minutes of work, a visible effect at the 75th percentile. That comes first. The poor desktop LCP from a second-tier script waits until that's done.

What an agent takes off your plate

The workflow is always the same: measure, map, prioritize, fix. That's exactly what you can hand off to an AI agent. Through an MCP connector the agent accesses your real marketing accounts. Model-agnostic, on the Bring Your Own Agent principle.

Concretely: the agent pulls the Lighthouse score via DataForSEO. It reconciles it against the field data from Search Console and Microsoft Clarity. Then it hands you a quick-win list, sorted by impact. Fixes to the CMS, like image sizes in WordPress or Strapi, it only writes after your approval. Every write action lands in the audit log, traceable down to the line. That's how the ongoing check replaces manual tool-hopping, without anyone touching the live site unasked.

A green number in the lab proves nothing. Only the field decides.

Want the Lighthouse check and the quick-win list automatically? The seo-audit skill in the Honeyfield Marketing MCP pulls the data itself and proposes the fixes. Try it at marketing-mcp.honeyfield.at.

Improving Core Web Vitals: the 5 most common bottlenecks — Honeyfield