CDN impact

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

Field data PhoneDesktopAll Scope All sites Q1 2026 edition · Desktop field outcomes
Metric TTFB LCP FCP
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
162,178
Sites in sample
Combined across all items
1.9s
Best LCP (p75)
KeyCDN
The State of Web Vitals · Q1 2026 · 94,910 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 90.5%
620
2 Google Cloud CDN 1.9s 87.1%
16,124
3 jsDelivr 2.0s 86.9%
6,936
4 Akamai 2.0s 86.8%
3,939
5 Bunny CDN 2.0s 85.8%
9,060
6 Vercel Edge 2.0s 87.1%
1,458
7 Fastly 2.0s 85.3%
42,269
8 Cloudflare 2.0s 85.3%
42,570
9 Azure CDN 2.1s 83.8%
197
10 cdnjs 2.1s 84.5%
8,930
11 CloudFront 2.1s 84.7%
26,296
12 unpkg 2.3s 80.1%
2,887
13 Netlify Edge 2.3s 81.4%
548
14 Sucuri 2.5s 73.8%
102
15 Imperva/Incapsula 2.5s 74.4%
242
The State of Web Vitals · Q1 2026 · 94,910 sites · desktop field datacorewebvitals.io/state-of-cwv
3

Passing LCP per CDN which group passes the LCP most often

CDNSitesPassing LCPp75
KeyCDN 0.7% 620 91% 1.9s
Google Cloud CDN 17% 16,124 87% 1.9s
Vercel Edge 1.5% 1,458 87% 2.0s
jsDelivr 7.3% 6,936 87% 2.0s
Akamai 4.2% 3,939 87% 2.0s
Bunny CDN 9.5% 9,060 86% 2.0s
Cloudflare 44.9% 42,570 85% 2.0s
Fastly 44.5% 42,269 85% 2.0s
CloudFront 27.7% 26,296 85% 2.1s
cdnjs 9.4% 8,930 85% 2.1s
Azure CDN 0.2% 197 84% 2.1s
Netlify Edge 0.6% 548 81% 2.3s
unpkg 3% 2,887 80% 2.3s
Imperva/Incapsula 0.3% 242 74% 2.5s
Sucuri 0.1% 102 74% 2.5s
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

91% of KeyCDN sites pass LCP. Sucuri trails 17 points behind, leaving 26% of its sites failing. computed

The State of Web Vitals · Q1 2026 · 94,910 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 44.9%
852.0s
9970ms
770.10
811.6s
611.1s
Fastly 44.5%
852.0s
9972ms
760.10
821.6s
631.1s
CloudFront 27.7%
852.1s
9876ms
760.10
821.6s
621.1s
Google Cloud CDN 17%
871.9s
9878ms
780.09
861.4s
72875ms
Bunny CDN 9.5%
862.0s
9969ms
770.10
821.5s
621.1s
cdnjs 9.4%
852.1s
9966ms
760.10
801.6s
611.1s
jsDelivr 7.3%
872.0s
9968ms
770.10
821.5s
641.1s
Akamai 4.2%
872.0s
9968ms
780.09
831.5s
621.1s
unpkg 3%
802.3s
9970ms
750.11
761.8s
571.3s
Vercel Edge 1.5%
872.0s
9889ms
760.10
871.4s
80645ms
KeyCDN 0.7%
911.9s
9981ms
770.10
901.4s
76784ms
Netlify Edge 0.6%
812.3s
9389ms
790.09
841.5s
671.0s
Imperva/Incapsula 0.3%
742.5s
9687ms
660.17
771.7s
64990ms
Azure CDN 0.2%
842.1s
10079ms
760.10
851.4s
74813ms
Sucuri 0.1%
742.5s
10057ms
610.18
702.0s
391.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: 91% of its sites pass. Sucuri trails at 74%. computed

The State of Web Vitals · Q1 2026 · 94,910 sites · desktop field datacorewebvitals.io/state-of-cwv
Related signals Marketing pixels (10) → Bot detection (7) → Forms (3) → Personalization (5) → Chrome field data from 94,910 sites, representing millions of real page loads · How we measured