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 94ms (92% good INP) versus 95ms (80% 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 92% of all React sites.
25.5% of React sites use 850 KB to 1.5 MB of unused JS unused JavaScript bytes, and 90% of those sites have a good LCP, against 84% 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 92% of all React sites. Sites with 400 to 850 KB of unused JS unused JS have it least often, at 80%.
Sites with 850 KB to 1.5 MB of unused JS unused JavaScript bytes have a good LCP most often: 90%, against 84% 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 96% of Wix sites have a good INP, against 92% of all sites. On WordPress, 64% of sites use over 1.5 MB of unused JS, and 96% 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 84% of all sites. On WordPress, 64% of sites use over 1.5 MB of unused JS, and 63% 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 96% 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 95% 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, 97% of sites with 850 KB to 1.5 MB of unused JS unused JavaScript bytes have a good LCP, against 93% of Wix sites with over 1.5 MB of unused JS. Within Wix, sites with 850 KB to 1.5 MB of unused JS have a good LCP more often. On WordPress, 67% of sites with 850 KB to 1.5 MB of unused JS unused JavaScript bytes have a good LCP, against 57% of WordPress sites with over 1.5 MB of unused JS. Within WordPress, sites with 850 KB to 1.5 MB 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, 80% pass field INP at an 95ms median, while the 67.5% (6,461) exceeding 1.5 MB of unused JS drop to 92% good INP (94ms 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 (80% good INP, 95ms median) versus 67.5% above 1.5 MB (92% good INP, 94ms median).
By Arjen Karel · 9,570 crawled React sites (5,488 with phone Chrome field data, October 2026). How we measured.