State of Largest Contentful Paint

Most sites pass LCP. When they fail, look at the server and late discovery before you touch the image format.

81.7% of sites pass LCP
1.6s Typical site
3.1s Worst 10% of sites

81.7% of sites pass LCP. The typical site sits at 1.6s. The worst 10% are above 3.1s.

Field data PhoneDesktopAll October 2026 edition · Phone field outcomes

Field LCP from Chrome, joined to a technique crawl of the same origins. Every rate and ranking below is computed from this edition. Nothing here is a controlled experiment.

Cohorts, not A/B tests. Sites that adopt a technique are not randomly assigned. Read the gaps as associations, then verify on your own traffic.

1
The state

LCP distribution and percentiles

How CrUX LCP is spread across mobile sites, from the fastest to the slowest.

Most mobile sites pass LCP. 81.7% sit at or under 2.5s. The typical site is at 1.6s, and 75% of sites stay under 2.2s. Only 18.3% fail LCP. The slowest 10% are above 3.1s, and the slowest 1% are above 5.7s.

Mobile sites by CrUX LCP

0 4,275 8,549 12,824 17,098
0–250ms12 sites<0.1% of all sites
250–500ms1,008 sites0.9% of all sites
500–750ms5,965 sites5.2% of all sites
750–1000ms13,401 sites11.7% of all sites
1000–1250ms17,098 sites14.9% of all sites
1250–1500ms16,129 sites14.1% of all sites
1500–1750ms13,964 sites12.2% of all sites
1750–2000ms10,959 sites9.6% of all sites
2000–2250ms8,712 sites7.6% of all sites
2250–2500ms6,464 sites5.6% of all sites
2500–2750ms4,735 sites4.1% of all sites
2750–3000ms3,640 sites3.2% of all sites
3000–3250ms2,850 sites2.5% of all sites
3250–3500ms2,164 sites1.9% of all sites
3500–3750ms1,627 sites1.4% of all sites
3750–4000ms1,228 sites1.1% of all sites
4000ms and up4,787 sites4.2% of all sites
p50 = 1.6s
p75 = 2.2s
p90 = 3.1s
p99 = 5.7s
0–250 250–500 500–750 750–1000 1000–1250 1250–1500 1500–1750 1750–2000 2000–2250 2250–2500 2500–2750 2750–3000 3000–3250 3250–3500 3500–3750 3750–4000 4000+
Good (≤2.5s) Needs improvement Poor (>4s) Percentile markers Total: 114,743 sites
2
The break

Explore the sub-phases of LCP

LCP is four sub-phases: TTFB, load delay, load time, and render delay.

LCP breaks into four sub-phases. On the typical site they add up to 1.3s, still under the 2.5s good bar.

TTFB is the longest at 647ms. That is almost half the path (48.6%). Load delay is second at 318ms (discovery of the hero). Render delay is 224ms. Download (load time) is the short one at 142ms.

TTFB is also the most interesting. It tracks CrUX LCP hardest (corr +0.69). When the server stretches, pass rate falls. The 50% cliff sits near 1.8s of TTFB. Load delay is next (+0.45). That is late discovery, not a heavy image file. Across sites, the image download is rarely the whole problem.

LCP sub-phases on the typical site

TTFB 647ms
Load delay 318ms
Load time 142ms
Render delay 224ms
2.5s good
TTFBLoad delayLoad timeRender delay

Sub-phase times and share

Lab medians on the LCP path. Corr. vs CrUX LCP. Open a phase for the pass-rate cliff.

Phase Median Share P90 Corr. vs LCP Cliff
TTFB (server) 647ms 48.6% 2.0s +0.69
Load delay (discovery) 318ms 23.9% 928ms +0.45
Load time (download) 142ms 10.7% 358ms +0.26
Render delay 224ms 16.8% 569ms +0.26

CrUX LCP pass rate vs TTFB

50% @ 1.8s

CrUX LCP pass rate vs TTFB

0% 25% 50% 75% 100% 96.0% 95.2% 92.2% 66.6% 1.6% 50% @ 1.8s 100ms 200ms 300ms 500ms 800ms 1s 1.5s 2s 3s 4.5s Field TTFB (phone, log scale, ms) Field LCP pass rate
Observed bins Logistic fit 50% at 1.8s

LCP rating by TTFB band

92%
92%
100–121 ms
n 84
85% 10%
85%
121–146 ms
n 174
94%
94%
146–177 ms
n 454
96%
96%
177–214 ms
n 1,234
96%
96%
214–259 ms
n 2,884
96%
96%
259–313 ms
n 5,771
95%
95%
313–379 ms
n 9,398
95%
95%
379–458 ms
n 11,911
94%
94%
458–555 ms
n 11,629
94%
94%
555–671 ms
n 11,382
92%
92%
671–811 ms
n 10,392
92%
92%
811–982 ms
n 9,322
87% 11%
87%
982ms–1.2s
n 8,510
80% 18%
80%
1.2–1.4 s
n 7,102
66% 31%
66%
1.4–1.7 s
n 5,965
38% 57%
38%
1.7–2.1 s
n 4,767
79% 11%
10%
2.1–2.5 s
n 3,524
75% 22%
3%
2.5–3.1 s
n 2,329
43% 55%
2%
3.1–3.7 s
n 1,334
10% 89%
1%
3.7–4.5 s
n 772
Good LCP Needs improvement Poor Field TTFB (log-spaced bands, ms)
3
The mechanism

How the browser finds the hero

Late discovery shows up as load delay. Background images and script-injected heroes are the common paths.

Discovery path

Variant Sites Share Pass LCP p75
Link header 379 0.2% 96% 1.0s
HTML 124,236 69.2% 84% 1.5s
Preload 4,099 2.3% 80% 1.7s
CSS 49,461 27.5% 77% 1.7s
JavaScript 1,386 0.8% 69% 2.0s

LCP element type

Variant Sites Share Pass LCP p75
Image 75,791 42.2% 84% 1.5s
Text 47,198 26.3% 82% 1.5s
Video 4,353 2.4% 79% 1.7s
Background image 52,239 29.1% 77% 1.7s

Discovery path: Link header at 96%, JavaScript at 69% (26 points). LCP element type: Image at 84%, Background image at 77% (7 points).

4
The stack

CMS: pass rate and phase anatomy

A high pass rate can hide a different budget. Some platforms pay the server. Others pay discovery after a fast first byte.

CMS field LCP and phase medians

CMS Sites Pass p75 TTFB Load delay Load time Render delay Total
Shopify 7,758 95% 1.7s 389ms 591ms 208ms 298ms 1.5s
Wix 5,297 94% 1.6s 424ms 452ms 136ms 151ms 1.2s
Drupal 3,092 90% 1.9s 567ms 294ms 131ms 210ms 1.2s
Joomla 2,367 88% 2.0s 728ms 315ms 112ms 221ms 1.4s
Squarespace 2,065 86% 2.2s 422ms 436ms 188ms 285ms 1.3s
Adobe Commerce 1,010 77% 2.4s 1.0s 234ms 84ms 209ms 1.6s
WordPress 59,983 70% 2.7s 1.1s 341ms 166ms 235ms 1.9s

Same stacks as bars

Fleet TTFB Load delay Render delay 1.3s
Wix5,297 TTFB Load delay 1.2s
Drupal3,092 TTFB Load delay 1.2s
Squarespace2,065 TTFB Load delay Render delay 1.3s
Joomla2,367 TTFB Load delay Render delay 1.4s
Shopify7,758 TTFB Load delay Render delay 1.5s
Adobe Commerce/Magento1,010 TTFB Load delay 1.6s
WordPress59,983 TTFB Load delay Render delay 1.9s
TTFB (server)Load delay (discovery)Load time (download)Render delay

Shopify leads at 95% good LCP. WordPress sits at 70%. Server share of the phase budget runs from 26% on Shopify to 66% on Adobe Commerce/Magento. Same metric, different anatomy.

5
What moves LCP (and what does not)

Which techniques actually separate pass from fail

Every row is the same fleet, split by a technique signal. Gap is best minus worst variant with at least 300 sites. Five points or more is a separator this edition. Under five points, the signal is real in labs and still weak as a fleet-level LCP story.

This edition the separators are Discovery path, Image format, Responsive markup, Element type and Priority hint on the LCP. Ranked by gap: Discovery path (+26 pp), Image format (+11 pp), Responsive markup (+8 pp), Element type (+7 pp) and Priority hint on the LCP (+5 pp).

Under the 5-point line: 1P vs 3P LCP origin and loading attribute on the LCP. Fix them when you see them on a real page. Do not expect them to rewrite the fleet LCP story.

Scoreboard: best vs worst cohort on field LCP

Only variants with at least 300 sites. Gap under 5 points is marked weak for this edition.

Signal Best cohort Worst cohort Gap Role
Discovery path Link header → 96% JavaScript → 69% +26 pp Separator
Image format AVIF → 89% PNG → 78% +11 pp Separator
Responsive markup picture element → 88% No responsive markup → 81% +8 pp Separator
Element type Image → 84% Background image → 77% +7 pp Separator
Priority hint on the LCP preconnect only → 85% Preload → 80% +5 pp Separator
1P vs 3P LCP origin Third party → 83% First party → 81% +2 pp Weak
loading attribute on the LCP eager → 86% auto (default) → 84% +2 pp Weak

Separators this edition

#1

Discovery path +26 pp

Link header passes on 96% of sites (p75 1.0s). JavaScript sits at 69% (p75 2.0s). Gap: 26 points.

Discovery path — every solid cohort

Variant Sites Share of signal Pass LCP p75 LCP
Link header 379 0.2% 96% 1.0s
HTML (parser) 124,236 69.2% 84% 1.5s
Preload 4,099 2.3% 80% 1.7s
CSS 49,461 27.5% 77% 1.7s
JavaScript 1,386 0.8% 69% 2.0s
#2

Image format +11 pp

AVIF passes on 89% of sites (p75 1.4s). PNG sits at 78% (p75 1.6s). Gap: 11 points.

Image format — every solid cohort

Variant Sites Share of signal Pass LCP p75 LCP
AVIF 6,944 6.1% 89% 1.4s
GIF 664 0.6% 85% 1.4s
WebP 30,290 26.6% 84% 1.5s
JPEG 56,333 49.6% 80% 1.6s
SVG 2,529 2.2% 79% 1.6s
PNG 16,791 14.8% 78% 1.6s
#3

Responsive markup +8 pp

picture element passes on 88% of sites (p75 1.5s). No responsive markup sits at 81% (p75 1.6s). Gap: 8 points.

Responsive markup — every solid cohort

Variant Sites Share of signal Pass LCP p75 LCP
picture element 12,476 6.9% 88% 1.5s
srcset only 24,633 13.7% 84% 1.5s
No responsive markup 142,474 79.3% 81% 1.6s
#4

Element type +7 pp

Image passes on 84% of sites (p75 1.5s). Background image sits at 77% (p75 1.7s). Gap: 7 points.

Element type — every solid cohort

Variant Sites Share of signal Pass LCP p75 LCP
Image 75,791 42.2% 84% 1.5s
Text 47,198 26.3% 82% 1.5s
Video 4,353 2.4% 79% 1.7s
Background image 52,239 29.1% 77% 1.7s
#5

Priority hint on the LCP +5 pp

preconnect only passes on 85% of sites (p75 1.4s). Preload sits at 80% (p75 1.7s). Gap: 5 points.

Priority hint on the LCP — every solid cohort

Variant Sites Share of signal Pass LCP p75 LCP
preconnect only 6,656 3.7% 85% 1.4s
fetchpriority=high 14,983 8.3% 83% 1.5s
No priority hint 154,708 86.1% 81% 1.6s
Preload 3,236 1.8% 80% 1.7s

Looks important, barely separates pass from fail

Weak this edition (under 5 points)

Still worth fixing on a single site. As a fleet LCP separator, they do not clear the bar.

Signal Best Pass Worst Pass Gap
1P vs 3P LCP origin Third party 83% First party 81% +2 pp
loading attribute on the LCP eager 86% auto (default) 84% +2 pp
6
Takeaway

One number, then go slice the data

The State of Web Vitals · October 2026 · 193,102 sites · phone field datacorewebvitals.io/state-of-cwv