Largest Contentful Paint (LCP)
A Core Web Vitals metric measuring the load time of the largest visible element on a page. Directly affects Google rankings.
LCP (Largest Contentful Paint) is the time from page load start until the largest element in the viewport (image, video, or text block) is fully rendered. A lower LCP means users see the main content faster.
What is Largest Contentful Paint
LCP is a key Core Web Vitals metric that Google has used as a ranking signal since 2021. It measures the time from page load start until the largest visible element in the user's viewport is fully rendered.
LCP reflects perceived speed: when the main content appears quickly, users experience the page as fast — even if loading isn't fully complete.
LCP thresholds
| Rating | LCP time | Action |
|---|---|---|
| Good | ≤ 2.5 s | Maintain — avoid regressions on updates |
| Needs Improvement | 2.5–4 s | Prioritise loading of the hero element |
| Poor | > 4 s | Critical: full image, TTFB, and render optimisation needed |
What elements count as LCP
- Images —
<img>and<image>inside SVG - CSS background images — via
background-image: url(...) - Videos — with a
posterattribute; the browser uses the preview frame - Text blocks — if the largest element in the viewport:
<p>,<h1>,<div>with text
How to improve LCP
Use WebP/AVIF, add fetchpriority="high" to the LCP element, remove loading="lazy" from above-the-fold images.
Optimise server response time, enable a CDN, configure caching. A TTFB > 800 ms makes a good LCP nearly impossible.
Move non-critical CSS and JS to the end, or use defer / async. Inline critical CSS directly in <head>.
Add <link rel="preload" as="image"> for an LCP image, or <link rel="preload" as="font"> if LCP is a text element in a custom font.
Common questions
Discuss your project?
Share your goals and website context — I will suggest a practical next step.