WordPress unused JavaScript bytes and the Core Web Vitals

23.4% of audited sites (14,785) ship over 1.5 MB of unused JavaScript during initial load, pushing median INP to 111ms (94% good INP) versus 92ms (98% good INP) at 400 to 850 KB.

Field data PhoneDesktopAll Scope All sites October 2026 edition · Phone field outcomes · WordPress sites only
WordPress Scoped to 63,295 sites out of 203,892 analyzed (cms) Compare with all sites →

30.4% of WordPress sites use 400 to 850 KB of unused JS unused JavaScript bytes, and 98% of those sites have a good INP, against 97% of all WordPress sites.

The State of Web Vitals · October 2026 · WordPress: 63,295 crawled sites · 36,524 with phone field data · 63,282 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: 98%, against 97% of all WordPress sites. Sites with over 1.5 MB of unused JS unused JS have it least often, at 94%.

SitesGood, needs improvement, poor INPMedian
All WordPress sites36,52497%96ms
400 to 850 KB unused 30.4%10,91398%92ms
Under 400 KB unused 15.6%5,75398%84ms
850 KB to 1.5 MB unused 30.7%10,94297%98ms
Over 1.5 MB unused 23.4%8,91094%111ms
GoodNeeds improvementPoorSites: with Chrome field data
The State of Web Vitals · October 2026 · WordPress: 63,295 crawled sites · 36,524 with phone field data · 63,282 sites with unused JavaScript bytesBy Arjen Karel · corewebvitals.io/state-of-cwv
2

Unused JavaScript bytes usage

850 KB to 1.5 MB of unused JS is the most used: 30.7% of WordPress sites. 400 to 850 KB of unused JS is 30.4% of WordPress sites.

850 KB to 1.5 MB unused 30.7% 400 to 850 KB unused 30.4% Over 1.5 MB unused 23.4% Under 400 KB unused 15.6%
850 KB to 1.5 MB unused 30.7% 400 to 850 KB unused 30.4% Over 1.5 MB unused 23.4% Under 400 KB unused 15.6%
The State of Web Vitals · October 2026 · WordPress: 63,295 crawled sites · 36,524 with phone field data · 63,282 sites with unused JavaScript bytesBy Arjen Karel · corewebvitals.io/state-of-cwv
3

Unused JavaScript bytes per framework

On jQuery, 32% of sites use 850 KB to 1.5 MB of unused JS unused JavaScript bytes, and 97% of jQuery sites have a good INP, against 97% of all sites. On Vue, 36% of sites use 400 to 850 KB of unused JS, and 95% of Vue sites have a good INP.

FrameworkUnused JavaScript bytes on its sitesGood INP
WordPress sites with unused JavaScript bytes 63,282 sites850 KB to 1.5 MB unused 31%400 to 850 KB unused 30%Over 1.5 MB unused 23%Under 400 KB unused 16%97%
jQuery 60,302 sites850 KB to 1.5 MB unused 32%400 to 850 KB unused 31%Over 1.5 MB unused 24%Under 400 KB unused 13%97%
React 2,233 sitesOver 1.5 MB unused 64%850 KB to 1.5 MB unused 22%400 to 850 KB unused 10%96%
Vue 4,844 sites400 to 850 KB unused 36%850 KB to 1.5 MB unused 33%Over 1.5 MB unused 26%95%
Alpine 380 sitesOver 1.5 MB unused 38%850 KB to 1.5 MB unused 34%400 to 850 KB unused 19%88%
850 KB to 1.5 MB unused 400 to 850 KB unused Over 1.5 MB unused Under 400 KB unused
The State of Web Vitals · October 2026 · WordPress: 63,295 crawled sites · 36,524 with phone field data · 63,282 sites with unused JavaScript bytesBy Arjen Karel · corewebvitals.io/state-of-cwv
4

Unused JavaScript bytes or the framework

Does the framework explain the unused JavaScript bytes difference?

On jQuery, 98% of sites with 400 to 850 KB of unused JS unused JavaScript bytes have a good INP, against 97% of jQuery sites with 850 KB to 1.5 MB of unused JS. Within jQuery, sites with 400 to 850 KB of unused JS have a good INP more often. On Vue, 98% of sites with 400 to 850 KB of unused JS unused JavaScript bytes have a good INP, against 95% of Vue sites with 850 KB to 1.5 MB of unused JS. Within Vue, sites with 400 to 850 KB of unused JS have a good INP more often.

How dead JavaScript code still blocks the main thread

The browser cannot skip parsing or compiling unused functions inside a downloaded bundle. Across 19,212 sites (30.4%) with 400 to 850 KB of unused JS, 98% pass field INP at an 92ms median, while the 23.4% (14,785) exceeding 1.5 MB of unused JS drop to 94% good INP (111ms median).

The State of Web Vitals · October 2026 · WordPress: 63,295 crawled sites · 36,524 with phone field data · 63,282 sites with unused JavaScript bytesBy Arjen Karel · corewebvitals.io/state-of-cwv
5

Understanding unused JavaScript bytes

Dequeue WooCommerce, form, and slider scripts on routes that do not render them, and delay third-party chat and consent bundles until user interaction. On WordPress, 30.4% of sites carry 400 to 850 KB of unused JS (98% good INP) while 23.4% exceed 1.5 MB (94% good INP).

The State of Web Vitals · October 2026 · WordPress: 63,295 crawled sites · 36,524 with phone field data · 63,282 sites with unused JavaScript bytesBy Arjen Karel · corewebvitals.io/state-of-cwv
Related signals Image source mix → Page weight & requests → DOM depth → Scripts per page → By Arjen Karel · 63,295 crawled WordPress sites (36,524 with phone Chrome field data, 63,282 sites with unused JavaScript bytes, October 2026) · How we measured