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.4s
Best FCP (p75)
KeyCDN
The State of Web Vitals · Q1 2026 · 94,910 sites · desktop field datacorewebvitals.io/state-of-cwv
2

The ranking sorted by FCP at p75, fastest first

# Provider FCP p75 Passing Sites
1 KeyCDN 1.4s 89.5%
620
2 Vercel Edge 1.4s 86.6%
1,458
3 Google Cloud CDN 1.4s 85.6%
16,124
4 Azure CDN 1.4s 85.3%
197
5 Netlify Edge 1.5s 83.8%
548
6 Akamai 1.5s 83.3%
3,939
7 jsDelivr 1.5s 82.1%
6,936
8 Bunny CDN 1.5s 81.9%
9,060
9 Fastly 1.6s 82.1%
42,269
10 CloudFront 1.6s 81.7%
26,296
11 Cloudflare 1.6s 81.2%
42,570
12 cdnjs 1.6s 79.6%
8,930
13 Imperva/Incapsula 1.7s 76.9%
242
14 unpkg 1.8s 75.9%
2,887
15 Sucuri 2.0s 69.7%
102
The State of Web Vitals · Q1 2026 · 94,910 sites · desktop field datacorewebvitals.io/state-of-cwv
3

Passing FCP per CDN which group passes the FCP most often

CDNSitesPassing FCPp75
KeyCDN 0.7% 620 90% 1.4s
Vercel Edge 1.5% 1,458 87% 1.4s
Google Cloud CDN 17% 16,124 86% 1.4s
Azure CDN 0.2% 197 85% 1.4s
Netlify Edge 0.6% 548 84% 1.5s
Akamai 4.2% 3,939 83% 1.5s
Fastly 44.5% 42,269 82% 1.6s
jsDelivr 7.3% 6,936 82% 1.5s
Bunny CDN 9.5% 9,060 82% 1.5s
CloudFront 27.7% 26,296 82% 1.6s
Cloudflare 44.9% 42,570 81% 1.6s
cdnjs 9.4% 8,930 80% 1.6s
Imperva/Incapsula 0.3% 242 77% 1.7s
unpkg 3% 2,887 76% 1.8s
Sucuri 0.1% 102 70% 2.0s
Good Needs Improvement Poor Sorted best-passing first · median colored by its own rating · pass = good FCP (1.8s at p75) · one value per site

90% of KeyCDN sites pass FCP. Sucuri trails 20 points behind, leaving 30% 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 FCP: 90% of its sites pass. Sucuri trails at 70%. 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