Skip to content

DevelopmentLast updated 5 min readBy The PixelCrayons team

Core Web Vitals: what actually moves LCP, INP and CLS, and how to read field data

The short answer

Core Web Vitals move when you fix the broken link in the chain on pages that carry money, measured by real visitors. Here is what usually moves each metric, why lab and field disagree, what a platform move changed for a UK store we migrated, and a dated method for reading field data.

Four cards for LCP, INP, CLS and field data, with field data marked as the one that decides

Core Web Vitals move when you fix the link in the chain that is actually broken, on the pages that carry money, as real visitors experience them. Below: what moves each metric, why lab and field disagree, what changed when we moved a UK store off WooCommerce, and a dated method for reading your own field data.

What the three metrics measure

Each one is a stopwatch on a different moment. LCP stops when the biggest thing in view has painted, and passes under 2.5 seconds. INP times the gap between a visitor’s tap and the screen answering it, and passes under 200 milliseconds. CLS adds up how far content jumps while someone reads, and passes under 0.1.

Two details matter more than the definitions. Google grades the visit at the three-quarter mark of your real traffic, so the slow quarter of phones decides it, not your office laptop. And the field figures are a rolling 28-day window, so a fix shipped today takes about a month to show in full.

What usually moves each metric

Metric Where the delay sits Usual causes Fixes that move it
LCP A chain: server response, discovering the hero resource, downloading it, rendering it Uncached pages; hero images set in CSS, injected by script or lazy-loaded; full-size images on phones; render-blocking CSS and scripts Caching and a CDN; the hero in the HTML with a high fetch priority; right-sized images; less blocking code
INP The main thread, busy when the visitor taps Large bundles hydrating the whole page; third-party tags, chat widgets and recorders; heavy event handlers; very large DOMs Code-splitting; deferring or removing third parties; breaking long tasks up; lighter handlers
CLS Late arrivals pushing content that was already on screen Images without dimensions; late banners and ad slots; web fonts that reflow text Explicit dimensions; fixed containers for late content; metric-matched font fallbacks

LCP’s links compound in order: nothing downstream starts until upstream finishes, which is why a slow server spends the whole budget before an image byte moves. INP failures are rarely one villain; a dozen scripts that each take “only” a hundred milliseconds is the usual finding. CLS is housekeeping, and it regresses the moment nobody owns it.

Four links in LCP, each waiting on the one below
  1. 01Server responseFix: caching and a CDN for uncached pages
  2. 02Discovering the heroFix: the hero in the HTML, high fetch priority
  3. 03Downloading itFix: right-sized images, not full size on phones
  4. 04Rendering itFix: less render-blocking CSS and scripts
LCP under 2.5 secondsBiggest thing in view painted, graded at the three-quarter mark of real traffic

Lab says green, field says red: which to believe

Lab data (Lighthouse, the lower panel of PageSpeed Insights) is one simulated load on one throttled device with nobody using it. Field data is what Chrome collects from real visitors, published in the Chrome UX Report. Search uses the field figures. The lab is a diagnostic instrument, not the exam.

Green lab and red field usually means your real visitors have slower phones than the test, or the problem happens after load. INP is always the second case: a simulated load never taps anything. Red lab and green field is common for desktop-heavy B2B traffic.

Diagnose in the lab, verify in the field, and let the field decide whether there is a problem worth paying for.

What a platform move changed for FleaSolve

Sometimes the platform is the culprit. FleaSolve, a UK maker of vet-grade flea and tick treatment, ran its direct-to-consumer store on WooCommerce. Speed, scalability and upkeep were constrained by the setup and its plugins. We migrated the store to a Shopify 2.0-compatible theme customised for the brand, designed mobile-first rather than adapted from desktop.

The FleaSolve case study records the outcome as improved performance and page-load speed across devices, increased mobile engagement, and less operational overhead from removing WooCommerce plugin dependencies. It records no before-and-after field figures, so we quote none here. Its public field data today is open to anyone, using the method below.

Product page on a phone
FleaSolve's product page on a phone. Captured 8 October 2026. The FleaSolve case study

The lesson for your own store: when the fixes in the table keep being undone by the theme or the plugin stack, patching costs more over a year than performance work on the layer underneath. When to migrate your eCommerce platform covers that decision.

A method for reading your own field data

  1. Put the URL into PageSpeed Insights with the mobile tab selected. Read only the top panel, “Discover what your real users are experiencing”. If it says there is not enough data for the page, read the origin figures instead and note that you did.
  2. Record the date, the URL, mobile or desktop, page or origin, and the 75th-percentile value and rating for LCP, INP and CLS.
  3. Repeat for each template that carries money: home, category, product, checkout entry, and your main paid landing page.
  4. After a fix ships, wait the full 28 days before the comparison reading. Readings inside the window mix old visits with new.
  5. Report the two readings side by side with their dates, and say what else changed between them. A campaign, a sale or a new market changes the visitors, and the visitors change the figures.
Date read URL or origin Device LCP p75 INP p75 CLS p75 What changed since the last reading
Before the fix Mobile
28 days after Mobile

When performance work is not the answer

It pays when a commercial page fails a threshold in the field: product, category, checkout and paid landing pages, where every visitor is bought or close to buying. Moving LCP from four seconds to 2.4 crosses a line; moving it from 1.8 to 1.2 mostly buys bragging rights.

It pays least when the field figures are already green and the real problem is a page nobody wants to read or link to. Speed cannot rescue that. Rank speed against the other gaps before spending on it.

Keep reading

Related
reading.

Rankings on this topic

Scored on public evidence by the PixelCrayons Index. PixelCrayons is scored like every firm: ranked where it has a case study, listed where it has not.

The services behind this piece

Stores and sites built to ship, on Shopify, WooCommerce, Magento or a headless stack.

Questions

Frequently
asked.

Only modestly. They are a ranking signal, and failing them is a tax on every query you compete for, and fixing them removes the tax. It does not buy relevance or authority.

The one failing in the field on your money pages. Where several fail, usually LCP, because its causes sit upstream and fixing them often helps the others. Then INP on interactive flows, then CLS.

Usually not. Most failures fall to targeted fixes. A rebuild becomes the honest answer when the architecture is the cause: a rendering model that ships the whole application before first paint, or a theme whose plugins own the main thread.

Building or migrating
a store?

Send the brief. An itemised, priced proposal comes back from the engineers who would build it.

Reply within four business hours (typical) · Free · No retainer required