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.04
Best CLS (p75)
Lodash
The State of Web Vitals · October 2026 · React sites (9,570) · desktop field datacorewebvitals.io/state-of-cwv
2
The ranking sorted by CLS at p75, fastest first
| # | Provider | CLS p75 | Passing | Sites | |
|---|---|---|---|---|---|
| 1 | Lodash | 0.04 | 86.9% | 7,076 | |
| 2 | GSAP | 0.08 | 78.0% | 125 | |
| 3 | Swiper | 0.10 | 76.2% | 1,237 | |
| 4 | Lit | 0.11 | 74.4% | 309 | |
| 5 | Moment.js | 0.11 | 73.9% | 1,028 | |
| 6 | Backbone.js | 0.12 | 71.4% | 100 | |
| 7 | jQuery | 0.12 | 71.7% | 2,648 | |
| 8 | Flickity | 0.13 | 72.7% | 129 | |
| 9 | Lazysizes | 0.13 | 70.9% | 510 | |
| 10 | Vue.js | 0.15 | 63.6% | 247 | |
| 11 | Owl Carousel | 0.16 | 67.9% | 142 | |
| 12 | Next.js | 0.18 | 58.0% | 262 | |
| 13 | Slick Carousel | 0.18 | 58.3% | 343 | |
| 14 | React | 0.19 | 60.1% | 494 |
The State of Web Vitals · October 2026 · React sites (9,570) · desktop 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 0.04
GSAP 1.3% 125 0.08
Swiper 12.9% 1,237 0.10
Lit 3.2% 309 0.11
Moment.js 10.7% 1,028 0.11
Flickity 1.3% 129 0.13
jQuery 27.7% 2,648 0.12
Backbone.js 1% 100 0.12
lazysizes 5.3% 510 0.13
Owl Carousel 1.5% 142 0.16
Vue.js 2.6% 247 0.15
React 5.2% 494 0.19
Stimulus/Hotwire 0.1% 8 0.28
Slick Carousel 3.6% 343 0.18
Next.js 2.7% 262 0.18
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
87% of Lodash sites pass CLS. Next.js trails 29 points behind, leaving 42% of its sites failing. computed
The State of Web Vitals · October 2026 · React sites (9,570) · desktop 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%
812.2s
9960ms
870.04
801.5s
571.5s
jQuery 27.7%
682.8s
9969ms
720.12
632.2s
361.9s
Swiper 12.9%
662.9s
9972ms
760.10
602.4s
332.1s
Moment.js 10.7%
593.1s
10068ms
740.11
542.5s
272.2s
lazysizes 5.3%
702.6s
9978ms
710.13
702.0s
461.7s
React 5.2%
782.2s
9593ms
600.19
791.7s
641.1s
Slick Carousel 3.6%
672.8s
9878ms
580.18
652.3s
461.8s
Lit 3.2%
692.8s
10079ms
740.11
652.1s
441.9s
Next.js 2.7%
782.2s
90132ms
580.18
811.5s
73836ms
Vue.js 2.6%
682.8s
9978ms
640.15
632.2s
282.0s
Owl Carousel 1.5%
553.4s
10066ms
680.16
512.9s
312.6s
Flickity 1.3%
643.1s
9567ms
730.13
522.7s
332.5s
GSAP 1.3%
702.7s
10078ms
780.08
702.0s
261.7s
Backbone.js 1%
633.5s
10073ms
710.12
543.0s
412.2s
Angular 0.1%
Stimulus/Hotwire 0.1%
802.2s
10095ms
600.28
801.4s
60919ms
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: 87% of its sites pass. Next.js trails at 58%. computed
The State of Web Vitals · October 2026 · React sites (9,570) · desktop 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
210,902 crawled sites with Chrome field data, representing millions of real page loads. How we measured.