Largest Contentful Paint (LCP)
How long until the largest content element in the viewport finishes rendering — the moment a page visually looks loaded to a visitor.
Vanity Risk
A "good" lab LCP measured on a fast connection is not a result — it is a hypothesis. Only the 75th-percentile field value across real visits tells you whether users actually experienced a fast page. Optimizing the lab number while the field number stays poor is motion without progress.
What it measures
Perceived load speed. LCP marks when the biggest above-the-fold element — a hero image, a headline, a video poster — becomes visible. It is one of the three official Core Web Vitals and the one users feel most directly: a page can have started painting, but if the main content isn’t there yet, it doesn’t feel loaded. Google evaluates it at the 75th percentile of field sessions, so "good" means three of every four real visits were fast — not the average, which hides the slow tail.
Benchmarks
- Good: ≤ 2.5s at P75
- Needs improvement: 2.5s–4.0s at P75
- Poor: > 4.0s at P75
- Thresholds: Google web.dev Core Web Vitals (field data, 75th percentile)
Figures reviewed June 2026. Benchmarks vary by source and drift over time — treat as directional and verify against your own data.
What to watch
- Above 2.5s at P75: Visitors are waiting to see your main content. The usual culprits, in order of frequency: an unoptimized hero image, render-blocking CSS/JS, slow server response (check TTFB first — LCP can never beat it), and client-side rendering that defers the largest element behind a hydration step.
- Good lab score, poor field score: Your test machine is fast and your users’ phones are not. LCP is a field metric; trust the P75 of real visits over a Lighthouse run on a wired connection.
- Regressed after a deploy: A new hero asset, a font swap, or a third-party script frequently moves LCP. Correlate the regression window with the release that preceded it.
In practice
A marketing site had LCP at 4.3s at P75 and a bounce rate climbing on mobile. The largest element was an uncompressed 1.8MB hero PNG served at full resolution to every device. Converting it to a responsive WebP set and preloading the chosen source dropped LCP to 2.1s at P75 within a day of deploy. Mobile bounce rate fell six points over the following two weeks — the page hadn’t changed, only how fast it appeared.
Illustrative scenario — a representative composite, not a specific company.
Related: Time to First Byte — LCP is bounded below by TTFB; a slow server caps how fast the largest paint can ever be.; First Contentful Paint — FCP is the first pixel, LCP is the meaningful one; a large FCP→LCP gap points at a heavy primary asset.; Bounce Rate — slow LCP is one of the most reliable predictors of visitors leaving before they engage.