CDN impact React sites

Time to first byte by CDN provider, measured in real-user Chrome data.

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

At a glance the headline numbers for CDN impact

Time to first byte by CDN provider, measured in real-user Chrome data.

11
Providers ranked
After min-sites filter
26,752
Sites in sample
Combined across all items
1.2s
Best TTFB (p75)
Google Cloud CDN
The State of Web Vitals · October 2026 · React sites (9,570) · desktop field datacorewebvitals.io/state-of-cwv
2

The ranking sorted by TTFB at p75, fastest first

# Provider TTFB p75 Passing Sites
1 Google Cloud CDN 1.2s 65.0%
6,456
2 Vercel Edge 1.3s 66.7%
93
3 CloudFront 1.4s 57.9%
7,234
4 Fastly 1.4s 55.9%
7,837
5 Akamai 1.4s 51.8%
223
6 jsDelivr 1.6s 45.0%
281
7 Cloudflare 1.7s 47.2%
3,558
8 Bunny CDN 1.7s 46.2%
366
9 Netlify Edge 1.8s 50.0%
79
10 cdnjs 1.9s 41.7%
386
11 unpkg 2.0s 34.0%
239
The State of Web Vitals · October 2026 · React sites (9,570) · desktop field datacorewebvitals.io/state-of-cwv
3

Passing TTFB per CDN which group passes the TTFB most often

CDNSitesPassing TTFBp75
KeyCDN 0.3% 24 71% 893ms
Vercel Edge 1% 93 67% 1.3s
Google Cloud CDN 67.5% 6,456 65% 1.2s
CloudFront 75.6% 7,234 58% 1.4s
Fastly 81.9% 7,837 56% 1.4s
Akamai 2.3% 223 52% 1.4s
Netlify Edge 0.8% 79 50% 1.8s
Azure CDN 0.3% 32 50% 1.4s
Imperva/Incapsula 0.2% 15 50% 1.2s
Cloudflare 37.2% 3,558 47% 1.7s
Bunny CDN 3.8% 366 46% 1.7s
jsDelivr 2.9% 281 45% 1.6s
cdnjs 4% 386 42% 1.9s
unpkg 2.5% 239 34% 2.0s
Good Needs Improvement Poor Sorted best-passing first · median colored by its own rating · pass = good TTFB (800ms at p75) · one value per site

65% of Google Cloud CDN sites pass TTFB. Unpkg trails 31 points behind, leaving 66% 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
Fastly 81.9%
802.2s
9967ms
810.07
781.6s
561.4s
CloudFront 75.6%
812.2s
9966ms
830.06
801.5s
581.4s
Google Cloud CDN 67.5%
871.9s
10061ms
890.03
861.1s
651.2s
Cloudflare 37.2%
752.5s
9974ms
730.12
712.0s
471.7s
cdnjs 4%
663.0s
9978ms
660.16
582.3s
421.9s
Bunny CDN 3.8%
732.6s
9881ms
640.18
672.1s
461.7s
jsDelivr 2.9%
752.4s
9878ms
620.19
652.0s
451.6s
unpkg 2.5%
663.0s
10068ms
630.16
552.5s
342.0s
Akamai 2.3%
772.3s
9984ms
680.17
731.8s
521.4s
Vercel Edge 1%
772.1s
9690ms
710.15
741.8s
671.3s
Netlify Edge 0.8%
672.7s
10086ms
670.14
672.3s
501.8s
Azure CDN 0.3%
862.2s
10070ms
800.09
671.8s
501.4s
KeyCDN 0.3%
782.1s
10068ms
330.24
891.7s
71893ms
Imperva/Incapsula 0.2%
752.1s
10064ms
750.11
1001.3s
501.2s
60%95%+ passing Cell: pass rate, small number = p75 · faded rows: under 100 sites

One row per CDN, 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.

Google Cloud CDN leads on TTFB: 65% of its sites pass. unpkg trails at 34%. computed

The State of Web Vitals · October 2026 · React sites (9,570) · desktop field datacorewebvitals.io/state-of-cwv
Related signals Marketing pixels (10) → Bot detection (8) → Forms (4) → Personalization (6) → 210,902 crawled sites with Chrome field data, representing millions of real page loads · How we measured