CDN impact
Time to first byte by CDN provider, measured in real-user Chrome data.
1
At a glance the headline numbers for CDN impact
Time to first byte by CDN provider, measured in real-user Chrome data.
15
Providers ranked
After min-sites filter
347,010
Sites in sample
Combined across all items
1.9s
Best LCP (p75)
KeyCDN
The State of Web Vitals · October 2026 · 210,902 crawled sites · desktop field datacorewebvitals.io/state-of-cwv
2
The ranking sorted by LCP at p75, fastest first
| # | Provider | LCP p75 | Passing | Sites | |
|---|---|---|---|---|---|
| 1 | KeyCDN | 1.9s | 89.2% | 1,307 | |
| 2 | Google Cloud CDN | 2.0s | 87.2% | 34,465 | |
| 3 | Akamai | 2.0s | 86.8% | 8,164 | |
| 4 | jsDelivr | 2.0s | 87.1% | 14,565 | |
| 5 | Vercel Edge | 2.0s | 86.8% | 3,180 | |
| 6 | Bunny CDN | 2.0s | 85.5% | 19,200 | |
| 7 | Azure CDN | 2.0s | 85.8% | 907 | |
| 8 | Fastly | 2.0s | 85.2% | 90,115 | |
| 9 | Cloudflare | 2.0s | 85.1% | 91,586 | |
| 10 | cdnjs | 2.1s | 84.2% | 18,880 | |
| 11 | CloudFront | 2.1s | 84.6% | 56,531 | |
| 12 | unpkg | 2.2s | 80.4% | 6,211 | |
| 13 | Netlify Edge | 2.3s | 80.6% | 1,165 | |
| 14 | Imperva/Incapsula | 2.3s | 80.6% | 523 | |
| 15 | Sucuri | 2.7s | 70.2% | 211 |
The State of Web Vitals · October 2026 · 210,902 crawled sites · desktop field datacorewebvitals.io/state-of-cwv
3
Passing LCP per CDN which group passes the LCP most often
CDNSitesPassing LCPp75
KeyCDN 0.6% 1,307 1.9s
Google Cloud CDN 16.3% 34,465 2.0s
jsDelivr 6.9% 14,565 2.0s
Akamai 3.9% 8,164 2.0s
Vercel Edge 1.5% 3,180 2.0s
Azure CDN 0.4% 907 2.0s
Bunny CDN 9.1% 19,200 2.0s
Fastly 42.7% 90,115 2.0s
Cloudflare 43.4% 91,586 2.0s
CloudFront 26.8% 56,531 2.1s
cdnjs 9% 18,880 2.1s
Netlify Edge 0.6% 1,165 2.3s
Imperva/Incapsula 0.2% 523 2.3s
unpkg 2.9% 6,211 2.2s
Sucuri 0.1% 211 2.7s
Good Needs Improvement Poor Sorted best-passing first · median colored by its own rating · pass = good LCP (2.5s at p75) · one value per site
89% of KeyCDN sites pass LCP. Sucuri trails 19 points behind, leaving 30% of its sites failing. computed
The State of Web Vitals · October 2026 · 210,902 crawled sites · 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
Cloudflare 43.4%
852.0s
9970ms
770.10
811.6s
611.1s
Fastly 42.7%
852.0s
9973ms
760.10
821.6s
631.1s
CloudFront 26.8%
852.1s
9877ms
750.10
811.6s
621.1s
Google Cloud CDN 16.3%
872.0s
9878ms
780.09
861.4s
72879ms
Bunny CDN 9.1%
862.0s
9970ms
760.10
811.6s
621.1s
cdnjs 9%
842.1s
9967ms
750.10
801.6s
601.2s
jsDelivr 6.9%
872.0s
9969ms
770.09
831.5s
641.1s
Akamai 3.9%
872.0s
9970ms
780.09
831.5s
621.1s
unpkg 2.9%
802.2s
9973ms
740.11
761.8s
561.3s
Vercel Edge 1.5%
872.0s
9890ms
780.09
861.4s
79664ms
KeyCDN 0.6%
891.9s
9985ms
780.09
881.4s
75787ms
Netlify Edge 0.6%
812.3s
9492ms
780.09
831.5s
71941ms
Azure CDN 0.4%
862.0s
9891ms
760.10
831.5s
661.0s
Imperva/Incapsula 0.2%
812.3s
9781ms
700.13
771.7s
66942ms
Sucuri 0.1%
702.7s
10060ms
680.14
642.2s
381.7s
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.
KeyCDN leads on LCP: 89% of its sites pass. Sucuri trails at 70%. computed
The State of Web Vitals · October 2026 · 210,902 crawled sites · desktop field datacorewebvitals.io/state-of-cwv
Want the polished comparison? View as a share-anchored page →
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
210,902 crawled sites with Chrome field data, representing millions of real page loads. How we measured.