Guide4 min readTechnology & Intelligence · Marketing Technology
Core Web Vitals for marketing sites: the three thresholds and what moves them
Core Web Vitals decide whether a campaign page feels fast. What LCP, INP and CLS measure, what counts as good and the fixes that last on fast-changing sites.
Xterra EdzeEditorial
Published Reviewed

Marketing sites change more often than most of a digital estate: a new campaign hero, a chat widget, a test variant, a tag added for one quarter and never removed. Each change is small. Together they decide whether a page feels fast or slow. Core Web Vitals are how Google, and increasingly your own dashboards, measure that.1
The three numbers and what good looks like
Each Core Web Vital measures one part of the experience: how quickly the main content appears, how quickly the page responds to input and how still the layout stays. Each has one threshold for “good”.1
- Largest Contentful Paint
- ≤ 2.5 s
- How soon the main image or text block is on screen.
- Interaction to Next Paint
- ≤ 200 ms
- How quickly the page responds to taps, clicks and key presses.
- Cumulative Layout Shift
- ≤ 0.1
- How much the layout moves while people read.
The “good” thresholds, assessed at the 75th percentile of page loads, mobile and desktop separately. Source: web.dev.
A page passes when its 75th-percentile visit meets the threshold, so at least three in four real visits must be good.2 That choice matters for marketing teams. An average hides the slow phone on a congested network, and that is often the visitor a campaign paid most to reach.
- LCP: good up to 2.5 s, needs improvement up to 4 s, poor beyond that.
- INP: good up to 200 ms, needs improvement up to 500 ms, poor beyond that.
- CLS: good up to 0.1, needs improvement up to 0.25, poor beyond that.
INP replaced FID, and that changed what fails
On 12 March 2024, Interaction to Next Paint replaced First Input Delay as the responsiveness vital.3 FID timed only the wait before the browser began handling the first interaction. INP watches every interaction in a visit and reports one of the slowest, from the input until the next frame is painted. Pages that passed FID easily can fail INP, because the work they do after a click now counts: opening a menu, filtering a grid, checking a form.
Field data decides; lab data explains
The score that counts comes from real visits. The Chrome UX Report publishes field data for sites with enough traffic.4 Google’s open-source web-vitals library collects the same three metrics from your own visitors.5 Lab tools such as Lighthouse load a page once on a simulated device. They are good for finding causes but cannot prove that real visitors are fine.
import { onCLS, onINP, onLCP } from 'web-vitals';
function sendToAnalytics(metric) {
const body = JSON.stringify({
name: metric.name, // 'LCP' | 'INP' | 'CLS'
value: metric.value, // milliseconds for LCP and INP; unitless for CLS
rating: metric.rating, // 'good' | 'needs-improvement' | 'poor'
id: metric.id,
page: location.pathname,
});
// sendBeacon survives the tab being closed; fetch with keepalive is the fallback
(navigator.sendBeacon && navigator.sendBeacon('/analytics', body)) ||
fetch('/analytics', { body, method: 'POST', keepalive: true });
}
onCLS(sendToAnalytics);
onINP(sendToAnalytics);
onLCP(sendToAnalytics);What moves each number
Largest Contentful Paint
- Serve the hero image at its display size and in a modern format, and never lazy-load it.
- Put the hero image in the HTML with
fetchpriority="high"rather than injecting it with script. - Trim render-blocking CSS and fonts in the head; inline only what the first screen needs.
- Cache campaign pages at the edge when they do not change per visitor.
Interaction to Next Paint
- Audit the tag manager: delete dead tags and keep the rest off the click path.
- Break long tasks so the browser can paint between them; yield inside big event handlers.
- Defer chat, testing and survey scripts so they do not slow unrelated interactions.
Cumulative Layout Shift
- Give every image, video and embed a width and height, or an aspect ratio.
- Reserve space for banners, consent notices and ad slots before they arrive.
- Load web fonts with matching fallback metrics, so text does not jump when they swap in.

Make the three thresholds a release rule
Sites that stay fast treat the three thresholds as acceptance criteria. Each template carries a performance budget. Every release runs a lab check in the pipeline, and field data is reviewed by template every month. When a campaign needs a heavier hero or a new tag, the person deciding sees the number first and makes the trade-off on purpose.
An average hides the slow phone on a congested network, and that is often the visitor a campaign paid most to reach.
If your marketing site has got slower, start with the three or four templates that carry most of the paid traffic. Measure them in the field and fix the hero image and tags first. Only then move to the long tail. We build and audit sites this way in Websites & Apps.
Key dates this guide tracks.
The changes this guide covers, in date order, each with its source. See every date in the standards timeline
-
INP replaces FID as a Core Web Vital
Responsiveness is judged across every interaction in a visit.
Source 3web.dev (Google)
Sources. Where the facts come from.
Numbered as they are cited in the text. Each link opens the original.
-
Interaction to Next Paint becomes a Core Web Vital on March 12
web.dev (Google) · January 2024
-
web-vitals: a library for measuring the Web Vitals metrics on real users
GoogleChrome on GitHub
Review log
When this guide was checked against its sources, and what changed. Newest first.
Checked the three “good” thresholds, the 75th-percentile rule and the date INP replaced FID against web.dev.





