Shopify unused JavaScript bytes and the Core Web Vitals

64.0% of audited sites (5,280) ship over 1.5 MB of unused JavaScript during initial load, pushing median INP to 107ms (94% good INP) versus 78ms (99% good INP) at 400 to 850 KB.

Field data PhoneDesktopAll Scope All sites October 2026 edition · All devices field outcomes · Shopify sites only
Shopify Scoped to 8,248 sites out of 203,892 analyzed (cms) Compare with all sites →

23.2% of Shopify sites use 850 KB to 1.5 MB of unused JS unused JavaScript bytes, and 99% of those sites have a good INP, against 96% of all Shopify sites.

The State of Web Vitals · October 2026 · Shopify: 8,246 crawled sites · 8,062 with all devices field data · 8,245 sites with unused JavaScript bytesBy Arjen Karel · corewebvitals.io/state-of-cwv
1

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: 99%, against 96% of all Shopify sites. Sites with over 1.5 MB of unused JS unused JS have it least often, at 94%.

SitesGood, needs improvement, poor INPMedian
All Shopify sites8,06296%97ms
Under 400 KB unused 0.1%5100%70ms
850 KB to 1.5 MB unused 23.2%1,85499%87ms
400 to 850 KB unused 12.7%1,01199%78ms
Over 1.5 MB unused 64.0%5,19194%107ms
GoodNeeds improvementPoorSites: with Chrome field data
The State of Web Vitals · October 2026 · Shopify: 8,246 crawled sites · 8,062 with all devices field data · 8,245 sites with unused JavaScript bytesBy Arjen Karel · corewebvitals.io/state-of-cwv
2

Unused JavaScript bytes usage

Over 1.5 MB of unused JS is the most used: 64.0% of Shopify sites. 850 KB to 1.5 MB of unused JS is 23.2% of Shopify sites.

Over 1.5 MB unused 64.0% 850 KB to 1.5 MB unused 23.2% 400 to 850 KB unused 12.7%
Over 1.5 MB unused 64.0% 850 KB to 1.5 MB unused 23.2% 400 to 850 KB unused 12.7% Under 400 KB unused 0.1%
The State of Web Vitals · October 2026 · Shopify: 8,246 crawled sites · 8,062 with all devices field data · 8,245 sites with unused JavaScript bytesBy Arjen Karel · corewebvitals.io/state-of-cwv
3

Unused JavaScript bytes per framework

On jQuery, 74% of sites use over 1.5 MB of unused JS unused JavaScript bytes, and 95% of jQuery sites have a good INP, against 96% of all sites. On Vue, 83% of sites use over 1.5 MB of unused JS, and 94% of Vue sites have a good INP.

FrameworkUnused JavaScript bytes on its sitesGood INP
Shopify sites with unused JavaScript bytes 8,245 sitesOver 1.5 MB unused 64%850 KB to 1.5 MB unused 23%400 to 850 KB unused 13%96%
jQuery 3,152 sitesOver 1.5 MB unused 74%850 KB to 1.5 MB unused 20%95%
Vue 933 sitesOver 1.5 MB unused 83%850 KB to 1.5 MB unused 15%94%
Over 1.5 MB unused 850 KB to 1.5 MB unused 400 to 850 KB unused Under 400 KB unused
The State of Web Vitals · October 2026 · Shopify: 8,246 crawled sites · 8,062 with all devices field data · 8,245 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, 100% of sites with 850 KB to 1.5 MB of unused JS unused JavaScript bytes have a good INP, against 94% of jQuery sites with over 1.5 MB of unused JS. Within jQuery, sites with 850 KB to 1.5 MB of unused JS have a good INP more often. On Vue, 98% of sites with 850 KB to 1.5 MB of unused JS unused JavaScript bytes have a good INP, against 94% of Vue sites with over 1.5 MB of unused JS. Within Vue, 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.

How dead JavaScript code still blocks the main thread

The browser cannot skip parsing or compiling unused functions inside a downloaded bundle. Across 1,047 sites (12.7%) with 400 to 850 KB of unused JS, 99% pass field INP at an 78ms median, while the 64.0% (5,280) exceeding 1.5 MB of unused JS drop to 94% good INP (107ms median).

The State of Web Vitals · October 2026 · Shopify: 8,246 crawled sites · 8,062 with all devices field data · 8,245 sites with unused JavaScript bytesBy Arjen Karel · corewebvitals.io/state-of-cwv
5

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, 12.7% ship 400 to 850 KB of unused JS (99% good INP, 78ms median) versus 64.0% above 1.5 MB (94% good INP, 107ms median).

The State of Web Vitals · October 2026 · Shopify: 8,246 crawled sites · 8,062 with all devices field data · 8,245 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 · 8,246 crawled Shopify sites (8,062 with all devices Chrome field data, 8,245 sites with unused JavaScript bytes, October 2026) · How we measured