Unused JavaScript bytes and the Core Web Vitals

25.9% of audited sites (53,454) ship over 1.5 MB of unused JavaScript during initial load, pushing median INP to 117ms (88% good INP) versus 91ms (96% good INP) at 400 to 850 KB.

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

26.9% of sites use 400 to 850 KB of unused JS unused JavaScript bytes, and 96% of those sites have a good INP, against 92% of all sites.

The State of Web Vitals · October 2026 · 210,902 crawled sites · 126,761 with phone field data · 206,167 sites with unused JavaScript bytesBy Arjen Karel · corewebvitals.io/state-of-cwv
1

Core Web Vitals pass rate

Sites with 400 to 850 KB of unused JS unused JavaScript bytes have a good INP most often: 96%, against 92% of all sites. Sites with over 1.5 MB of unused JS unused JS have it least often, at 88%.

SitesGood, needs improvement, poor INPMedian
All sites126,76192%99ms
400 to 850 KB unused 26.9%33,42996%91ms
850 KB to 1.5 MB unused 25.0%31,42694%99ms
Under 400 KB unused 22.2%26,41290%88ms
Over 1.5 MB unused 25.9%35,43388%117ms
GoodNeeds improvementPoorSites: with Chrome field data
The State of Web Vitals · October 2026 · 210,902 crawled sites · 126,761 with phone field data · 206,167 sites with unused JavaScript bytesBy Arjen Karel · corewebvitals.io/state-of-cwv
2

Unused JavaScript bytes usage

400 to 850 KB of unused JS is the most used: 26.9% of sites.

400 to 850 KB unused 26.9% Over 1.5 MB unused 25.9% 850 KB to 1.5 MB unused 25.0% Under 400 KB unused 22.2%
400 to 850 KB unused 26.9% Over 1.5 MB unused 25.9% 850 KB to 1.5 MB unused 25.0% Under 400 KB unused 22.2%
The State of Web Vitals · October 2026 · 210,902 crawled sites · 126,761 with phone field data · 206,167 sites with unused JavaScript bytesBy Arjen Karel · corewebvitals.io/state-of-cwv
3

Understanding unused JavaScript bytes

How dead JavaScript code still blocks the main thread

The browser cannot skip parsing or compiling unused functions inside a downloaded bundle. Across 55,440 sites (26.9%) with 400 to 850 KB of unused JS, 96% pass field INP at an 91ms median, while the 25.9% (53,454) exceeding 1.5 MB of unused JS drop to 88% good INP (117ms median).

Use route-level code splitting and dynamic import() so offscreen modals, checkout flows, and heavy third-party SDKs only load when needed. Across all audited sites, 26.9% ship 400 to 850 KB of unused JS (96% good INP, 91ms median) versus 25.9% above 1.5 MB (88% good INP, 117ms median).

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

How unused JavaScript bytes plays out per platform

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

WordPress 65,496 sites
54% sites with > 850 KB unused JS

54% of WordPress sites ship over 850 KB of unused JavaScript.

Across WordPress sites, 31% load 850 KB to 1.5 MB of unused scripts and 23% exceed 1.5 MB, with median INP ranging from 84ms under 400 KB unused to 111ms above 1.5 MB.

Explore WordPress unused JS data →
Shopify 8,572 sites
99% vs 91% good INP (850 KB-1.5 MB vs > 1.5 MB)

64% of Shopify stores ship over 1.5 MB of unused JavaScript on load.

Across Shopify storefronts, 64% have over 1.5 MB of unused JS during initial load (91% good INP, 121ms median) compared with 99% (95ms median) at 850 KB to 1.5 MB.

Explore Shopify unused JS data →
React 9,570 sites
68% sites with > 1.5 MB unused JS

68% of React sites load over 1.5 MB of unexecuted JavaScript code.

Across React sites, 68% have over 1.5 MB of unused JS on initial load (92% INP pass rate, 94ms median) and 25% have 850 KB to 1.5 MB (96%).

Explore React unused JS data →
Wix 5,825 sites
96% good INP (> 1.5 MB unused tier)

72% of Wix sites sit in the over 1.5 MB unused JS tier (96% good INP).

Across Wix sites, 72% record over 1.5 MB of unused JS on first load (96% good INP) and 28% record 850 KB to 1.5 MB (97% good INP).

Explore Wix unused JS data →
Related signals Image source mix → Page weight & requests → DOM depth → Scripts per page → By Arjen Karel · 210,902 crawled sites (126,761 with phone Chrome field data, 206,167 sites with unused JavaScript bytes, October 2026) · How we measured