JS libraries impact React sites

Performance impact by framework provider.

Field data PhoneDesktopAll Scope All sites October 2026 edition · Phone field outcomes · React sites only
Metric LCP INP CLS
React Scoped to 9,570 sites out of 210,902 analyzed (frameworks) Compare with all sites →
1

At a glance the headline numbers for JS libraries impact

Performance impact by framework provider.

14
Providers ranked
After min-sites filter
14,650
Sites in sample
Combined across all items
0.00
Best CLS (p75)
Lodash
The State of Web Vitals · October 2026 · React sites (9,570) · phone field datacorewebvitals.io/state-of-cwv
2

The ranking sorted by CLS at p75, fastest first

# Provider CLS p75 Passing Sites
1 Lodash 0.00 94.4%
7,076
2 Flickity 0.01 88.6%
129
3 GSAP 0.02 91.1%
125
4 Swiper 0.02 88.7%
1,237
5 Backbone.js 0.03 80.4%
100
6 Moment.js 0.03 87.2%
1,028
7 Lit 0.03 87.2%
309
8 Lazysizes 0.04 87.2%
510
9 jQuery 0.04 85.9%
2,648
10 Vue.js 0.06 80.6%
247
11 Owl Carousel 0.08 81.9%
142
12 Slick Carousel 0.09 78.9%
343
13 React 0.18 69.1%
494
14 Next.js 0.31 58.7%
262
The State of Web Vitals · October 2026 · React sites (9,570) · phone field datacorewebvitals.io/state-of-cwv
3

Passing CLS per provider which group passes the CLS most often

ProviderSitesPassing CLSp75
Lodash 73.9% 7,076 94% 0.00
GSAP 1.3% 125 91% 0.02
Swiper 12.9% 1,237 89% 0.02
Flickity 1.3% 129 89% 0.01
Moment.js 10.7% 1,028 87% 0.03
lazysizes 5.3% 510 87% 0.04
Lit 3.2% 309 87% 0.03
jQuery 27.7% 2,648 86% 0.04
Angular 0.1% 9 83% 0.01
Owl Carousel 1.5% 142 82% 0.08
Vue.js 2.6% 247 81% 0.06
Backbone.js 1% 100 80% 0.03
Slick Carousel 3.6% 343 79% 0.09
Stimulus/Hotwire 0.1% 8 71% 0.12
React 5.2% 494 69% 0.18
Next.js 2.7% 262 59% 0.31
Good Needs Improvement Poor Sorted best-passing first · median colored by its own rating · pass = good CLS (0.1 at p75) · one value per site

94% of Lodash sites pass CLS. Next.js trails 35 points behind, leaving 41% of its sites failing. computed

The State of Web Vitals · October 2026 · React sites (9,570) · phone field datacorewebvitals.io/state-of-cwv
4

All five vitals at once the whole category without toggling - cell is the pass rate, small number the p75

LCP
INP
CLS
FCP
TTFB
Lodash 73.9%
891.8s
94105ms
940.00
881.3s
77739ms
jQuery 27.7%
642.9s
93131ms
860.04
542.4s
321.9s
Swiper 12.9%
662.8s
92130ms
890.02
572.4s
362.0s
Moment.js 10.7%
593.2s
93129ms
870.03
462.7s
232.2s
lazysizes 5.3%
732.5s
84176ms
870.04
741.8s
591.3s
React 5.2%
792.4s
72220ms
690.18
751.8s
471.2s
Slick Carousel 3.6%
632.8s
78184ms
790.09
592.2s
431.6s
Lit 3.2%
752.5s
92135ms
870.03
751.8s
581.2s
Next.js 2.7%
832.3s
51525ms
590.31
821.5s
421.1s
Vue.js 2.6%
633.0s
90154ms
810.06
552.4s
272.1s
Owl Carousel 1.5%
633.4s
95134ms
820.08
482.5s
352.0s
Flickity 1.3%
583.1s
90125ms
890.01
562.8s
322.2s
GSAP 1.3%
603.0s
96147ms
910.02
572.4s
281.8s
Backbone.js 1%
663.1s
94140ms
800.03
532.4s
352.0s
Angular 0.1%
672.6s
100144ms
830.01
502.0s
501.7s
Stimulus/Hotwire 0.1%
862.2s
86164ms
710.12
861.5s
571.2s
60%95%+ passing Cell: pass rate, small number = p75 · faded rows: under 100 sites

One row per provider, one column per vital - the cell is the share of sites passing, the small number the p75. No toggling needed to see where the category actually differs.

Lodash leads on CLS: 94% of its sites pass. Next.js trails at 59%. computed

The State of Web Vitals · October 2026 · React sites (9,570) · phone field datacorewebvitals.io/state-of-cwv
Related signals A/B testing (12) → Personalization (6) → E-commerce (17) → CDN (16) → 210,902 crawled sites with Chrome field data, representing millions of real page loads · How we measured