What Is LCP (Largest Contentful Paint)?
Updated 5 October 2026
Jump to section
Largest Contentful Paint (LCP) measures how long the largest content element in the viewport takes to render, usually the hero image or a big heading. It is one of the three Core Web Vitals. Google rates an LCP of 2.5 seconds or less as good, and anything over 4 seconds as poor, measured at the 75th percentile of real visits.
What does LCP actually measure?
LCP measures the render time of the single largest element a visitor can see without scrolling. The clock starts when the page begins loading and stops when that element paints.
The candidate elements are the obvious big ones. An <img>, the poster frame of
a <video>, a background image, or a large block of text can all be the LCP
element.
On most sites it is an image. The HTTP Archive found an image was the LCP element on 85.3% of desktop pages and 76% of mobile pages (Web Almanac 2025, published January 2026). For a typical Malaysian business site, that means the hero photo at the top of the homepage.
What counts as a good LCP score?
A good LCP is 2.5 seconds or less, and Google treats anything over 4 seconds as poor. The band in between needs improvement. All three are read at the 75th percentile, so three quarters of your visits must hit the mark, not just your own fast test.
| Rating | LCP (75th percentile) |
|---|---|
| Good | 2.5 seconds or less |
| Needs improvement | 2.5 to 4.0 seconds |
| Poor | Over 4.0 seconds |
Source: web.dev, Largest Contentful Paint (Google, 2026).
The percentile matters because it reflects real users on real devices. Your laptop on office fibre is not the test. A shopper on a mid-range phone and a patchy 4G signal is closer to what Google measures. You can compare lab and field readings in PageSpeed Insights.
Why is my LCP slow?
A slow LCP usually traces to one of four causes, and the largest element is where you look first. Each has a direct fix.
- A slow server response. If the first byte takes too long, everything after it is late. Faster hosting or caching helps here.
- Render-blocking CSS and JavaScript. The browser waits for these before it paints. Trimming and deferring them lets the main content appear sooner.
- A heavy hero image. A large, uncompressed photo takes seconds just to download. Compressing and sizing it often gives the biggest single win.
- Lazy-loading the wrong image. web.dev is blunt: use lazy loading "only for images outside the initial viewport".
That last one catches people out. Lazy loading is good for images far down the page, but applying it to the hero image delays the very element LCP measures.
In our experience maintaining Malaysian SME websites, LCP degrades quietly. It creeps up as owners add larger images and more plugins over the years, long after a fast launch. The first thing we check before recommending a redesign or a rebuild is speed, because a slow hero image is rarely fixed by new colors.
How does LCP relate to the other Core Web Vitals?
LCP is the loading metric of the three, and each of the others measures a different part of the experience. They are scored separately, so a page can pass one and fail another.
| Metric | What it measures |
|---|---|
| LCP | Loading: when the main content appears |
| INP | Interactivity: response to taps and clicks |
| CLS | Visual stability: unexpected layout shifts |
A page that loads its hero fast but jumps around as it settles still frustrates the visitor. That is why Google reports all three together.
Frequently asked questions
Is LCP a Google ranking factor?
Yes. Google says Core Web Vitals are used by its ranking systems, but it still shows the most relevant content first, even when page experience is weak. A good LCP helps most when many pages answer the query equally well. It is not a substitute for useful, relevant content, and a fast LCP will not rescue a page that answers the wrong question.
Where do I measure my LCP?
You measure LCP in PageSpeed Insights, the Core Web Vitals report in Search Console, or Chrome's built-in tools. PageSpeed Insights shows both a lab score and, where enough real traffic exists, field data from actual Chrome users. The field data reflects real visitors, so trust it over the lab number when they disagree.
What is a good LCP score?
A good LCP is 2.5 seconds or less at the 75th percentile of visits. Between 2.5 and 4 seconds needs improvement, and over 4 seconds is poor. Aim comfortably under 2.5 seconds so normal variation between visits does not push you into the next band.
Why is my LCP different in the lab and in the field?
Lab tests run once, on one simulated device and connection, so they give a clean but artificial number. Field data averages real visits across many devices, networks, and locations. A page can look fast in the lab and still record a poor field LCP if real users are on slower phones or connections than the test assumes.
Does LCP only measure images?
No. LCP measures whichever element is largest in the viewport. That is often an image, but it can be a video poster, a background image, or a large heading or block of text. On a text-heavy page with no big image, a paragraph of text can be the LCP element.
Is LCP the same as page load time?
No. Old "page load time" measured when the whole page finished, including things below the fold and background scripts. LCP measures only when the largest visible element paints, which is closer to when the page feels ready to the visitor.
Where LCP fits your site
Storming Solutions builds and maintains websites for Malaysian businesses from Kuala Lumpur, and speed is one of the first things we audit on a site that is not converting. LCP is usually the honest place to start, because the hero image most visitors see first is also the element Google times.
Want to know your current LCP and what is slowing it? Ask us on WhatsApp and we will run the check as part of a free website review, then tell you the one fix that moves it most.