In May 2021, Google did something unprecedented: it explicitly made the user experience of a website a ranking factor.
Core Web Vitals (CWV) are now part of Google's Page Experience signal, directly influencing where your pages rank in search results. This means that a slower, more frustrating website doesn't just lose users — it loses the search traffic that would have brought them in the first place.
This article explains each metric in plain English, tells you where the problems typically come from, and shows you how to fix them — including the role your marketing tools play.
The Three Signals That Matter
Largest Contentful Paint (LCP) — Perceived Load Speed
What it measures: How long it takes for the largest visible element on the page (usually a hero image or a large headline) to fully render.
The target: Under 2.5 seconds = Good. 2.5–4.0s = Needs Improvement. 4.0s+ = Poor.
Why it matters: LCP is a proxy for how fast a page feels to a user. Waits of more than 2.5 seconds trigger impatience. Over 4 seconds, 40% of visitors have already left.
The most common causes of a bad LCP:
- Uncompressed, oversized hero images (JPEG files > 500KB)
- Render-blocking JavaScript loading before page content
- Slow server response time (TTFB > 800ms)
- Third-party scripts (popups, analytics, chat) loading before page content
How to fix it:
- Convert all images to WebP or AVIF format
- Use a CDN (Cloudflare is free for most use cases)
- Ensure your largest above-fold image is served with priority loading (
loading="eager"+fetchpriority="high") - Defer all third-party scripts to after page load
Interaction to Next Paint (INP) — Interactivity
What it measures: The time between a user interaction (click, tap, keyboard input) and the moment the page visually responds. This replaced FID (First Input Delay) as Google's interactivity metric.
The target: Under 200ms = Good. 200–500ms = Needs Improvement. 500ms+ = Poor.
Why it matters: When buttons feel "laggy" — when you click and nothing seems to happen — the subjective experience is that the site is broken. Even a 300ms delay registers consciously as friction.
The most common causes of high INP:
- Heavy JavaScript executing on the main thread
- Third-party scripts (especially large popup and chat tools) hogging the event loop
- Long tasks (any JS task over 50ms) blocking user interactions
How to fix it:
- Audit your third-party scripts — remove anything that doesn't directly contribute to revenue
- Use
requestIdleCallbackorsetTimeoutfor low-priority tasks - Prefer lightweight tools: HeyCustomer's script defers execution and has no impact on INP, unlike most popup solutions
Cumulative Layout Shift (CLS) — Visual Stability
What it measures: How much the page content "jumps around" as elements load. If you've ever been about to click a link and an image loaded above it, pushing the link down, causing you to click something else — that's a CLS event.
The target: Under 0.1 = Good. 0.1–0.25 = Needs Improvement. 0.25+ = Poor.
Why it matters: CLS creates frustration and errors. On mobile, a layout shift at the moment of tap can cause accidental clicks on ads, navigation links, or forms — directly degrading the user experience.
The most common causes of high CLS:
- Images without explicit
widthandheightattributes - Ads or embeds that load without reserved space
- Web fonts causing a "Flash of Unstyled Text" (FOUT)
- Popups or notification banners that push page content down
How to fix it:
- Always specify
widthandheighton alltags - Reserve space for ads and embeds with CSS
aspect-ratio - Use
font-display: swapfor web fonts - Ensure your notification tool renders above the layout stack (z-index based), not inside the document flow
HeyCustomer's notifications are positioned fixed to the viewport and never shift document layout — this is an explicit architectural decision to maintain zero CLS impact.
Measuring Your Current CWV
Tools to use:
- Google PageSpeed Insights — the most accessible starting point. Provides both lab data and real-world field data from Chrome UX Report.
- Google Search Console > Core Web Vitals report — shows CWV performance segmented by device and page group at a domain level.
- Chrome DevTools Performance tab — for deep diagnosis of what's causing each issue.
Run your homepage, pricing page, and any high-traffic landing pages through PageSpeed Insights first. Fix the worst scores, then move down.
The Business Case: Why This Is Worth Your Time
A 1-second improvement in LCP:
- Increases mobile conversion rates by up to 8% (Deloitte Digital research)
- Reduces bounce rate by up to 24% (Google internal data)
- Improves SEO ranking position for affected pages
For a site converting €10,000/month, an 8% conversion lift represents €800/month — €9,600/year — from a technical optimization that required no new content, no new ads.
That's the business case for Core Web Vitals.
FAQ
Q: How do I measure my Core Web Vitals without being a developer? A: Go to pagespeed.web.dev, paste your URL, and run the test. The report explains each score in plain language and provides prioritized recommendations. For site-wide data, Google Search Console's Core Web Vitals report shows which pages need attention most urgently.
Q: Does adding a popup or notification tool hurt my CWV scores? A: It can, significantly. Tools that load large JavaScript bundles synchronously, insert DOM elements that shift existing content, or block the main thread on load are common CWV offenders. HeyCustomer is engineered to avoid all of these: the script is asynchronous, deferred, and uses absolute positioning to avoid layout shifts.
Q: My site scores green on PageSpeed but I still have a high bounce rate. Why? A: PageSpeed Insights shows lab data (simulated) in addition to field data (real users). Lab scores can be green while real-user experience is poor, due to server response time variability, geographic latency, or device performance below the simulated baseline. Always check the "Field Data" section at the top of the PageSpeed report.