Unused JavaScript bytes on React sites
67.5% of audited sites (6,461) ship over 1.5 MB of unused JavaScript during initial load, pushing median INP to 82ms (95% good INP) versus 84ms (87% good INP) at 400 to 850 KB.
25.5% of React sites use 850 KB to 1.5 MB of unused JS unused JavaScript bytes, and 96% of those sites have a good INP, against 95% of all React sites.
1.3% of React sites use under 400 KB of unused JS unused JavaScript bytes, and 97% of those sites have a good LCP, against 85% of all React sites.
Core Web Vitals pass rate
Sites with 850 KB to 1.5 MB of unused JS unused JavaScript bytes have a good INP most often: 96%, against 95% of all React sites. Sites with 400 to 850 KB of unused JS unused JS have it least often, at 87%.
Sites with under 400 KB of unused JS unused JavaScript bytes have a good LCP most often: 97%, against 85% of all React sites. Sites with over 1.5 MB of unused JS unused JS have it least often, at 82%.
Unused JavaScript bytes usage
Over 1.5 MB of unused JS is the most used: 67.5% of React sites. 850 KB to 1.5 MB of unused JS is 25.5% of React sites.
Unused JavaScript bytes per platform
On Wix, 72% of sites use over 1.5 MB of unused JS unused JavaScript bytes, and 97% of Wix sites have a good INP, against 95% of all sites. On WordPress, 64% of sites use over 1.5 MB of unused JS, and 98% of WordPress sites have a good INP.
On Wix, 72% of sites use over 1.5 MB of unused JS unused JavaScript bytes, and 94% of Wix sites have a good LCP, against 85% of all sites. On WordPress, 64% of sites use over 1.5 MB of unused JS, and 61% of WordPress sites have a good LCP.
Unused JavaScript bytes or the platform
Does the platform explain the unused JavaScript bytes difference?
On Wix, 97% of sites with 850 KB to 1.5 MB of unused JS unused JavaScript bytes have a good INP, against 97% of Wix sites with over 1.5 MB of unused JS. Within Wix, sites with 850 KB to 1.5 MB of unused JS and over 1.5 MB of unused JS have a good INP about equally often. On WordPress, 99% of sites with 850 KB to 1.5 MB of unused JS unused JavaScript bytes have a good INP, against 98% of WordPress sites with over 1.5 MB of unused JS. Within WordPress, sites with 850 KB to 1.5 MB of unused JS and over 1.5 MB of unused JS have a good INP about equally often.
On Wix, 93% of sites with over 1.5 MB of unused JS unused JavaScript bytes have a good LCP, against 98% of Wix sites with 850 KB to 1.5 MB of unused JS. Within Wix, sites with over 1.5 MB of unused JS have a good LCP less often. On WordPress, 99% of sites with under 400 KB of unused JS unused JavaScript bytes have a good LCP, against 54% of WordPress sites with over 1.5 MB of unused JS. Within WordPress, sites with under 400 KB of unused JS have a good LCP 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 544 sites (5.7%) with 400 to 850 KB of unused JS, 87% pass field INP at an 84ms median, while the 67.5% (6,461) exceeding 1.5 MB of unused JS drop to 95% good INP (82ms median).
Understanding unused JavaScript bytes
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, 5.7% ship 400 to 850 KB of unused JS (87% good INP, 84ms median) versus 67.5% above 1.5 MB (95% good INP, 82ms median).
By Arjen Karel · 9,570 crawled React sites (9,110 with all devices Chrome field data, October 2026). How we measured.