Begrippenlijst · Techniek & snelheid

LCP (Largest Contentful Paint)

Ook wel: Largest Contentful Paint

Definitie

LCP meet hoe lang het duurt tot het grootste zichtbare beeld- of tekstblok op het scherm staat. Goed is 2,5 seconde of sneller, op het 75e percentiel.

Wat is LCP?

Largest Contentful Paint is de tijd vanaf het starten van de navigatie tot het grootste element in het zichtbare deel van het scherm getekend is. Dat is meestal een afbeelding, een videoposter, een achtergrondafbeelding via CSS of een groot tekstblok.

Het is een van de drie Core Web Vitals. Goed is 2,5 seconde of minder, slecht is meer dan 4 seconden. Google kijkt naar het 75e percentiel van echte bezoeken.

Wat het LCP-element is op een webshop

Op de homepage is het meestal de hero-banner. Op een productpagina de hoofdfoto. Op een categoriepagina vaak de eerste productafbeelding, of de H1 met introtekst als de foto's lazy laden. Op mobiel kan het element anders zijn dan op desktop.

Google splitst LCP op in vier delen: TTFB (tot de eerste byte HTML binnen is), resource load delay (hoe laat de browser de afbeelding ontdekt), resource load duration (hoe lang het downloaden duurt) en element render delay (hoe lang het nog duurt tot het getekend wordt). In de praktijk zit de winst vaak in de tweede stap: de browser vindt de afbeelding te laat.

Daarom is LCP op een webshop vooral een kwestie van prioriteit. De browser ontdekt bestanden in de volgorde waarin ze in de HTML staan. Staan er tien scripts, drie fonts en een tracking-pixel vóór de hoofdfoto, dan wacht die foto in de rij. Alles wat de LCP-afbeelding eerder in beeld brengt, verkort de wachttijd voor elke bezoeker.

Zo verbeter je LCP in Magento en Shopify

Zet de LCP-afbeelding direct in de HTML met een normale src, geef hem fetchpriority="high" en zet er nooit loading="lazy" op. Lever het formaat dat het scherm nodig heeft via srcset, in WebP of AVIF.

In Magento Luma bouwt de Fotorama-galerij de productfoto op met JavaScript. De browser kan de echte foto daardoor pas laat tonen. Hyvä rendert de hoofdfoto gewoon in de HTML, wat direct scheelt. Daarnaast hangt LCP in Magento sterk aan TTFB: zonder full page cache-hit in Varnish verlies je de eerste halve seconde al aan PHP.

In Shopify zit de serverkant meestal goed. Let op slider-sections in de hero die eerst JavaScript nodig hebben, op afbeeldingen zonder juiste breedte in image_url, en op apps die render-blocking CSS of scripts in de head zetten.

Veelgemaakte fouten

Een carrousel als hero, waarbij de eerste slide pas verschijnt als het script klaar is. Een 'lazy loading'-plugin die ook de bovenste afbeelding uitstelt. Een hero van 3000 pixels breed voor een telefoonscherm. En een cookiebanner met een grote tekst, die zelf het LCP-element wordt en pas na een consent-script verschijnt.

Meet per paginatype. Een snelle homepage zegt niets over je productpagina's, en daar zit meestal het meeste organische verkeer.

Kijk ook naar wat er na een release verandert. Een nieuwe hero-banner van 2 MB die marketing via het CMS uploadt, kan een goede LCP in één middag onderuit halen. Een maximale bestandsgrootte of automatische conversie naar WebP in de mediapipeline voorkomt dat.

LCP-afbeelding met voorrang

<img src="/media/catalog/product/sneaker-800.webp"
     srcset="/media/catalog/product/sneaker-400.webp 400w,
             /media/catalog/product/sneaker-800.webp 800w"
     sizes="(max-width: 768px) 100vw, 50vw"
     width="800" height="800"
     fetchpriority="high"
     alt="Witte leren sneaker, zijaanzicht">

Verder lezen

Veelgestelde vragen

Hoe weet ik welk element mijn LCP is?+

In Chrome DevTools (tabblad Performance) en in PageSpeed Insights zie je het LCP-element per test. RUM-tools tonen het per paginatype bij echte bezoekers.

Helpt preloaden altijd?+

Alleen als de browser de afbeelding anders te laat vindt. Preload je te veel, dan concurreren bestanden met elkaar en wordt het juist trager.

Meer begrippen over techniek & snelheid

Liever dat iemand het voor je uitzoekt?

Wij controleren je webshop op deze punten en voeren de fixes zelf door in Magento, Shopify of Laravel. Je praat direct met het team dat het bouwt.