Shopify LCP element types and the Core Web Vitals

An <img> tag (77.0%), a CSS background-image (9.6%), a text block (8.7%), or a <video> poster (4.6%): which element triggers Largest Contentful Paint across the web and how each element type performs.

Field data PhoneDesktopAll Scope All sites October 2026 edition · Phone field outcomes · Shopify sites only
Shopify Scoped to 8,248 sites out of 203,892 analyzed (cms) Compare with all sites →

8.7% of Shopify sites use a text block as the LCP element, and 97% of those sites have a good LCP, against 95% of all Shopify sites.

The State of Web Vitals · October 2026 · Shopify: 8,246 crawled sites · 5,825 with phone field data · 7,873 sites with as the LCP elementBy Arjen Karel · corewebvitals.io/state-of-cwv
1

LCP pass rate

Sites with a text block as the LCP element have a good LCP most often: 97%, against 95% of all Shopify sites. Sites with a CSS background-image as the LCP element have it least often, at 92%.

SitesGood, needs improvement, poor LCPMedian
All Shopify sites5,82595%1.4s
Text heading or paragraph 8.7%49797%1.2s
<video> element 4.6%26795%1.5s
<img> element 77.0%4,27995%1.3s
CSS background-image 9.6%51892%1.5s
GoodNeeds improvementPoorSites: with Chrome field data
The State of Web Vitals · October 2026 · Shopify: 8,246 crawled sites · 5,825 with phone field data · 7,873 sites with as the LCP elementBy Arjen Karel · corewebvitals.io/state-of-cwv
2

As the LCP element usage

An <img> tag is the most used: 77.0% of Shopify sites. A text block is 8.7% of Shopify sites.

<img> element 77.0%
<img> element 77.0% CSS background-image 9.6% Text heading or paragraph 8.7% <video> element 4.6%
The State of Web Vitals · October 2026 · Shopify: 8,246 crawled sites · 5,825 with phone field data · 7,873 sites with as the LCP elementBy Arjen Karel · corewebvitals.io/state-of-cwv
3

Where each LCP element type spends time: the four LCP phases

Across the four LCP sub-parts in Chrome's field data, the largest gap between a text block and a CSS background-image sits in resource load delay: 585 ms median for a text block against 806 ms for a CSS background-image. Overall median field LCP is 1.4s for a text block (TTFB 410 ms, load delay 585 ms, load duration 176 ms, render delay 295 ms) versus 1.6s for a CSS background-image.

Median LCP phase breakdown (Chrome field p75) Load delay Median LCP
Shopify sites with as the LCP element 4,808401 ms591 ms206 ms306 ms591 mslab 596 ms1.4s
<video> element 234405 ms569 ms364 ms569 mslab 570 ms1.5s
<img> element 3,799400 ms578 ms209 ms301 ms578 mslab 582 ms1.3s
Text heading or paragraph 327410 ms585 ms295 ms585 mslab 596 ms1.4s
CSS background-image 448404 ms806 ms209 ms348 ms806 mslab 826 ms1.6s
TTFB Resource load delay Resource load time Element render delay
The State of Web Vitals · October 2026 · Shopify: 8,246 crawled sites · 5,825 with phone field data · 7,873 sites with as the LCP elementBy Arjen Karel · corewebvitals.io/state-of-cwv
4

As the LCP element per framework

On jQuery, 69% of sites use an <img> tag as the LCP element, and 93% of jQuery sites have a good LCP, against 95% of all sites. On Vue, 77% of sites use an <img> tag, and 94% of Vue sites have a good LCP.

FrameworkAs the LCP element on its sitesGood LCP
Shopify sites with as the LCP element 7,873 sites<img> element 77%95%
Vue 892 sites<img> element 77%94%
jQuery 3,031 sites<img> element 69%CSS background-image 19%93%
<img> element CSS background-image Text heading or paragraph <video> element
The State of Web Vitals · October 2026 · Shopify: 8,246 crawled sites · 5,825 with phone field data · 7,873 sites with as the LCP elementBy Arjen Karel · corewebvitals.io/state-of-cwv
5

LCP element type or the framework

Does the framework explain the as the LCP element difference?

On jQuery, 95% of sites with a text block as the LCP element have a good LCP, against 93% of jQuery sites with an <img> tag. Within jQuery, sites with a text block and an <img> tag have a good LCP about equally often. On Vue, 98% of sites with a text block as the LCP element have a good LCP, against 94% of Vue sites with an <img> tag. Within Vue, sites with a text block and an <img> tag have a good LCP about equally often.

Why <img> and text blocks beat CSS background-image heroes

An <img> element in the HTML markup is visible to Chrome's preload scanner immediately and supports fetchpriority="high", srcset, and modern formats, reaching 95% good LCP (1.3s median). A text LCP element needs no image download at all and paints as soon as render-blocking CSS and web fonts resolve (97% good LCP, 1.2s median). A CSS background-image hides the image URL from the preload scanner until stylesheets are parsed and matched against the DOM, dropping good LCP to 92% (1.5s median).

The State of Web Vitals · October 2026 · Shopify: 8,246 crawled sites · 5,825 with phone field data · 7,873 sites with as the LCP elementBy Arjen Karel · corewebvitals.io/state-of-cwv
6

Understanding LCP element types

Keep your Shopify storefront hero as a semantic <img> element. Across Shopify stores, 77.0% use an <img> element (95% good LCP, 1.3s median) and 8.7% have a text LCP (97% good LCP), while the 9.6% using a CSS background-image drop to 92% good LCP (1.5s median).

The State of Web Vitals · October 2026 · Shopify: 8,246 crawled sites · 5,825 with phone field data · 7,873 sites with as the LCP elementBy Arjen Karel · corewebvitals.io/state-of-cwv
Related signals LCP loading attribute → LCP image format → LCP origin → LCP priority hint → By Arjen Karel · 8,246 crawled Shopify sites (5,825 with phone Chrome field data, 7,873 sites with as the LCP element, October 2026) · How we measured