Subresource compression algorithms and the Core Web Vitals

87.6% of audited sites (180,762) serve Gzip-compressed subresources (81% good LCP), 66.8% serve Brotli (81% good LCP), 48.9% serve Zstandard (80% good LCP), and the 4.0% adopting Dictionary-Compressed Brotli (dcb) reach 95% good LCP (1.3s median).

Field data PhoneDesktopAll Scope All sites October 2026 edition · Phone field outcomes

4.0% of sites use Dictionary-Compressed Brotli (dcb) subresource HTTP compression, and 95% of those sites have a good LCP, against 82% of all sites.

The State of Web Vitals · October 2026 · 210,902 crawled sites · 126,761 with phone field data · 206,252 sites with subresource HTTP compressionBy Arjen Karel · corewebvitals.io/state-of-cwv
1

LCP pass rate

Sites with Dictionary-Compressed Brotli (dcb) subresource HTTP compression have a good LCP most often: 95%, against 82% of all sites. Sites with Zstandard (zstd) compression subresource compression have it least often, at 80%.

SitesGood, needs improvement, poor LCPMedian
All sites126,76182%1.6s
Dictionary-Compressed Brotli (dcb) 4.0%5,78295%1.3s
Unencoded binary assets (images / WOFF2) 99.6%126,29382%1.6s
Gzip (Content-Encoding: gzip) 87.6%112,07381%1.6s
Brotli (Content-Encoding: br) 66.8%86,40881%1.6s
Zstandard (Content-Encoding: zstd) 48.9%63,06880%1.7s
GoodNeeds improvementPoorSites: with Chrome field data
The State of Web Vitals · October 2026 · 210,902 crawled sites · 126,761 with phone field data · 206,252 sites with subresource HTTP compressionBy Arjen Karel · corewebvitals.io/state-of-cwv
2

Subresource HTTP compression usage

Unencoded binary assets is the most used: 99.6% of sites. Dictionary-Compressed Brotli (dcb) is 4.0% of sites.

Sites using each option (sites can use more than one) 206,252 sites
Unencoded binary assets (images / WOFF2) 99.6% Gzip (Content-Encoding: gzip) 87.6% Brotli (Content-Encoding: br) 66.8% Zstandard (Content-Encoding: zstd) 48.9%
Unencoded binary assets (images / WOFF2) 99.6% Gzip (Content-Encoding: gzip) 87.6% Brotli (Content-Encoding: br) 66.8% Zstandard (Content-Encoding: zstd) 48.9% Dictionary-Compressed Brotli (dcb) 4.0%
The State of Web Vitals · October 2026 · 210,902 crawled sites · 126,761 with phone field data · 206,252 sites with subresource HTTP compressionBy Arjen Karel · corewebvitals.io/state-of-cwv
3

LCP phase breakdown by subresource compression algorithm

Across the four LCP sub-parts in Chrome's field data, the largest gap between Dictionary-Compressed Brotli (dcb) and Zstandard (zstd) compression sits in time to first byte (TTFB): 400 ms median for Dictionary-Compressed Brotli (dcb) against 690 ms for Zstandard (zstd) compression. Overall median field LCP is 1.4s for Dictionary-Compressed Brotli (dcb) (TTFB 400 ms, load delay 586 ms, load duration 206 ms, render delay 312 ms) versus 1.7s for Zstandard (zstd) compression.

Median LCP phase breakdown (Chrome field p75) Load delay Median LCP
Sites with subresource HTTP compression 92,464650 ms336 ms236 ms336 mslab 326 ms1.6s
Unencoded binary assets (images / WOFF2) 92,222650 ms336 ms236 ms336 mslab 326 ms1.6s
Gzip (Content-Encoding: gzip) 82,627655 ms344 ms239 ms344 mslab 334 ms1.6s
Brotli (Content-Encoding: br) 64,590646 ms359 ms243 ms359 mslab 350 ms1.6s
Zstandard (Content-Encoding: zstd) 47,952690 ms360 ms252 ms360 mslab 348 ms1.7s
Dictionary-Compressed Brotli (dcb) 5,017400 ms586 ms206 ms312 ms586 mslab 591 ms1.4s
TTFB Resource load delay Resource load time Element render delay
The State of Web Vitals · October 2026 · 210,902 crawled sites · 126,761 with phone field data · 206,252 sites with subresource HTTP compressionBy Arjen Karel · corewebvitals.io/state-of-cwv
4

Understanding subresource compression algorithms

Brotli, Zstandard (zstd), and Dictionary-Compressed Brotli (dcb) across page subresources

Nearly every page (99.6%) transfers pre-compressed binary formats like WebP, AVIF, and WOFF2 without extra Content-Encoding. For text subresources (JS, CSS, SVG, JSON), 87.6% of sites use Gzip (81% good LCP, 1.6s median), 66.8% use Brotli (81% good LCP), 48.9% include Zstandard responses (80% good LCP, often from Meta/Google third-party scripts), and 4.0% (8,218 sites, led by Shopify/Cloudflare) use shared-dictionary Brotli (dcb) to achieve 95% good LCP (1.3s median).

Enable Brotli (br) and Zstandard (zstd) at your CDN edge for all text-based subresources (text/css, application/javascript, image/svg+xml, application/json) to shrink transfer size by 15% to 25% over Gzip. Across all audited sites, 66.8% serve Brotli subresources (81% good LCP) and 4.0% serve Dictionary-Compressed Brotli (95% good LCP).

The State of Web Vitals · October 2026 · 210,902 crawled sites · 126,761 with phone field data · 206,252 sites with subresource HTTP compressionBy Arjen Karel · corewebvitals.io/state-of-cwv
Platform & Framework Takeaways

How subresource HTTP compression plays out per platform

What the field data shows when you isolate a single CMS or framework.

Shopify 8,573 stores
100.0% / 95.5% Brotli / Dictionary-Compressed Brotli on Shopify

95.5% of Shopify stores use Dictionary-Compressed Brotli (dcb) alongside Brotli (100.0%), passing LCP at 95%.

Across Shopify storefronts, 100.0% serve Brotli (br) responses (95% good LCP) and 95.5% serve Compression Dictionary Transport (dcb) responses (95% good LCP, 1.3s median).

Read the Shopify subresource compression breakdown →
React & Next.js 9,570 sites
91.1% / 97.7% Brotli / Gzip subresources on React

91.1% of React & Next.js sites serve Brotli-compressed subresources (85% good LCP, 1.4s median).

Across 9,570 React sites, 91.1% serve Brotli-compressed bundles (85% good LCP), 97.7% use Gzip (84% good LCP), and 41.3% include Zstandard-compressed scripts (76% good LCP).

Wix 5,825 sites
100.0% / 31.6% Brotli / Zstandard subresources on Wix

100.0% of Wix sites serve Brotli and Gzip subresources (94% good LCP, 1.1s median).

Across 5,825 Wix sites, 100.0% serve Brotli-compressed subresources (94% good LCP, 1.1s median), 100.0% serve Gzip, and 31.6% include Zstandard-encoded responses (90% good LCP).

Read the Wix subresource compression breakdown →
Related signals Scripts per page → Stylesheet origin (1P/3P) → DOM depth → Responsive image markup → By Arjen Karel · 210,902 crawled sites (126,761 with phone Chrome field data, 206,252 sites with subresource HTTP compression, October 2026) · How we measured