HTML document compression on React sites

Brotli (br), Gzip, Zstandard (zstd), or uncompressed HTML: how document compression affects Time to First Byte (477 ms on Brotli vs 1016 ms on Gzip) and Largest Contentful Paint.

Field data PhoneDesktopAll Scope All sites October 2026 edition · Desktop field outcomes · React sites only
React Scoped to 9,570 sites out of 210,902 analyzed (frameworks) Compare with all sites →

One in ten React sites, 9.1%, have no HTML compression. Of the 90.9% that do, 78% use Brotli, and 86% of those sites have a good LCP, against 79% of all React sites.

The State of Web Vitals · October 2026 · React: 9,570 crawled sites · 1,979 with desktop field dataBy Arjen Karel · corewebvitals.io/state-of-cwv
1

LCP pass rate

Sites with Brotli HTML compression have a good LCP most often: 86%, against 79% of all React sites. Sites with Gzip HTML compression have it least often, at 70%.

SitesGood, needs improvement, poor LCPMedian
All React sites1,97979%1.5s
Brotli (br) 70.7%1,08886%1.4s
Uncompressed (none) 9.1%20072%1.7s
Zstandard (zstd) 2.3%9872%1.9s
Gzip 17.9%59370%1.8s
GoodNeeds improvementPoorSites: with Chrome field data
The State of Web Vitals · October 2026 · React: 9,570 crawled sites · 1,979 with desktop field dataBy Arjen Karel · corewebvitals.io/state-of-cwv
2

HTML compression usage

Nine in ten React sites uses HTML compression, and four in five of those use Brotli.

All React sites 9,570 sites
HTML compression 90.9%
Sites with HTML compression 8,702 sites
Brotli (br) 77.7% Gzip 19.7%
Brotli (br) 77.7% Gzip 19.7% Zstandard (zstd) 2.6%
The State of Web Vitals · October 2026 · React: 9,570 crawled sites · 1,979 with desktop field dataBy Arjen Karel · corewebvitals.io/state-of-cwv
3

Where HTML compression shows up in the four LCP phases

Across the four LCP sub-parts in Chrome's field data, the largest gap between Brotli and no sits in time to first byte (TTFB): 477 ms median for Brotli against 620 ms for no. Overall median field LCP is 1.4s for Brotli (TTFB 477 ms, load delay 469 ms, load duration 199 ms, render delay 162 ms) versus 1.7s for no.

Median LCP phase breakdown (Chrome field p75) Load delay Median LCP
All React sites 1,324703 ms413 ms413 mslab 429 ms1.6s
Gzip 4571016 ms332 ms231 ms332 mslab 376 ms1.9s
Uncompressed (none) 139620 ms399 ms399 mslab 445 ms1.7s
Zstandard (zstd) 761125 ms414 ms265 ms414 mslab 353 ms2.0s
Brotli (br) 652477 ms469 ms469 mslab 458 ms1.4s
TTFB Resource load delay Resource load time Element render delay
The State of Web Vitals · October 2026 · React: 9,570 crawled sites · 1,979 with desktop field dataBy Arjen Karel · corewebvitals.io/state-of-cwv
4

HTML compression per platform

Wix sets the HTML compression to Brotli on 97% of its sites, and 92% of Wix sites have a good LCP, against 79% of all sites.

PlatformHTML compression on its sitesGood LCP
All React sites 9,570 sitesBrotli (br) 71%Gzip 18%79%
Wix 5,824 sitesBrotli (br) 97%92%
WordPress 2,342 sitesGzip 48%Brotli (br) 36%66%
Brotli (br) Gzip Uncompressed (none) Zstandard (zstd)
The State of Web Vitals · October 2026 · React: 9,570 crawled sites · 1,979 with desktop field dataBy Arjen Karel · corewebvitals.io/state-of-cwv
5

HTML compression or the platform

Does the platform explain the HTML compression difference?

On WordPress, 67% of sites with Brotli HTML compression have a good LCP, against 59% of WordPress sites with no. Within WordPress, sites with Brotli and no have a good LCP about equally often.

Why Brotli HTML compression speeds up resource discovery

Brotli uses a built-in dictionary of common HTML, CSS, and JavaScript tokens, shrinking HTML documents 15 to 20 percent more than Gzip at comparable CPU cost. Because the browser's preload scanner parses the HTML stream chunk by chunk as it arrives, a smaller compressed document delivers the <head> and hero <img> markup in fewer TCP or QUIC packets. Sites serving Brotli HTML record a 477 ms median TTFB and 1.4s median LCP, compared with 1016 ms TTFB and 1.8s LCP on Gzip.

The State of Web Vitals · October 2026 · React: 9,570 crawled sites · 1,979 with desktop field dataBy Arjen Karel · corewebvitals.io/state-of-cwv
6

Understanding HTML document compression

Enable Brotli (br) compression on your HTML responses and keep Gzip as a fallback. Across all audited sites, 70.7% serve Brotli-compressed HTML and reach 86% good LCP (1.4s median), beating Gzip (17.9% of sites, 70% good LCP) and uncompressed HTML (9.1% of sites, 72% good LCP). For dynamic HTML generated on the fly, Brotli quality level 4 or 5 compresses faster AND smaller than Gzip level 6 without adding server CPU delay.

The State of Web Vitals · October 2026 · React: 9,570 crawled sites · 1,979 with desktop field dataBy Arjen Karel · corewebvitals.io/state-of-cwv
Related signals HTTP protocol mix → Connection hints → Cache strategy mix → Uncompressed text responses → By Arjen Karel · 9,570 crawled React sites (1,979 with desktop Chrome field data, October 2026) · How we measured