Routebench

CDN benchmark across Cloudflare, Fastly, and CloudFront. Same bytes from each, every provider on its own apex with co-located DNS, real-user measurement from browsers.

DNSresolve
TCPconnect
TLShandshake
WAITserver + 1 RTT
DLbody transfer

cold = fresh TLS handshake. warm = reused connection, so DNS/TCP/TLS are 0 by definition. Successful fetches without browser Resource Timing are excluded from latency p50/p95/p99 and sample counts. TTFB = DNS + TCP + TLS + WAIT · TOTAL = TTFB + DL. Each row is a (provider, protocol) pair; bars end at that row's real p50 of total_ms, stripes show proportionally where the time goes. Bars scale to the slowest row in the ranking. "fastest" marks the lowest p50. p95 / p99 live in the detail table behind the toggles.

1p.gif 43 B 2,986,460 probes · 96.5% ok · 96h

Cloudflare Fastly CloudFront close race <5% insufficient data 82 countries colored · floor: ≥500 warm probes per provider (totalled across both files) · p50 shown per file · 15 close race <5%
cold fresh TLS handshake
Fastly h3
96 ms359,421
Cloudflare h3
125 ms474,788
CloudFront h3
161 ms486,509
Cloudflare h2
232.9 ms94,196
Fastly h2
247 ms207,268
CloudFront h2
293.1 ms83,153
1,720,070 cold probes · 58% of file · h3 1,320,718 · h2 384,617 · 14,735 on h1/unknown (not ranked)
DNSTCPTLSWAITDLTTFBTOTAL
Fastly h3p5022.90.73022.90.894.696
p95190.63.2135.11154.8470.9474.2
p99524.66.6358.1297.116.61228.71252.3
Cloudflare h3p5018132.948.90.6124125
p95172.53156216.45.2523.3525
p99484.16.3343.2585.1151446.41467
CloudFront h3p5037.5144.1430.6159.4161
p95241.83210292.14.8708.4713.9
p99639.16.3395513.516.71344.81353.3
Cloudflare h2p5025.32450.6480.9231.2232.9
p95241.1389.8380.3248.67.11232.41250.2
p99812.1832.11041835.5144.93422.83496.3
Fastly h2p5022342270246.9247
p95138155248.3159.541012.31012.9
p99433.5437730467.4142723.12777.2
CloudFront h2p503927.671430.6291293.1
p95292.1378.9557.4300.64.91449.51466.3
p991137.6732.91206.8794.692.63804.34051.1
warm reused connection
Fastly h3
24.2 ms149,577
Fastly h2
27.3 ms188,416
CloudFront h3
36 ms282,042
Cloudflare h3
37.8 ms268,734
Cloudflare h2
42.2 ms88,092
CloudFront h2
53 ms68,566
1,072,147 warm probes · 36% of file · h3 700,353 · h2 345,074 · 26,720 on h1/unknown (not ranked)
WAITDLTTFBTOTAL
Fastly h3p5020.80.623.224.2
p95104.93.4121.9124.5
p99244.311.2381.4401.1
Fastly h2p5024026.927.3
p951432.1175177.9
p99351.18.7461492.2
CloudFront h3p50330.33536
p951942.4203.9205.4
p99382.17427.2427.3
Cloudflare h3p50350.63737.8
p95151.93.2158160.4
p99376.68.9387.3387.4
Cloudflare h2p50360.740.942.2
p95173.34203.9215.7
p99406.239.7620.5674.3
CloudFront h2p5038.10.55253
p95241.92.8306.4310
p99482.17.6744.1766

100.bin 100 KB 2,967,529 probes · 96.7% ok · 96h

Cloudflare Fastly CloudFront close race <5% insufficient data 82 countries colored · floor: ≥500 warm probes per provider (totalled across both files) · p50 shown per file · 15 close race <5%
cold fresh TLS handshake
Fastly h3
128.9 ms358,215
Cloudflare h3
200.6 ms469,131
CloudFront h3
218.1 ms482,069
Cloudflare h2
269.6 ms96,655
Fastly h2
285.9 ms209,105
CloudFront h2
347 ms84,065
1,713,230 cold probes · 58% of file · h3 1,309,415 · h2 389,825 · 13,990 on h1/unknown (not ranked)
DNSTCPTLSWAITDLTTFBTOTAL
Fastly h3p5022.20.729.223.32794.6128.9
p95193.13.3135113.8160.3462.2624.1
p99600.96.1329.7279435.612081621.6
Cloudflare h3p5018.2133.55162128200.6
p95170.23149217386.4511.6862.5
p99484.76.9313.7453910.11241.11910.9
CloudFront h3p5037.614544.348.1163.8218.1
p952323210.3283.6298.4676.3965.7
p99571.86.1367.44655741240.11729.3
Cloudflare h2p5024.42247.447.630224.6269.6
p95232.2388.5350241.4329.41180.71526.2
p99714.7850.1927.2657.91208.63290.94345.7
Fastly h2p50221.8402737239285.9
p95133.5147.9268170256.81054.21320.4
p99427.7416.9801.7544.87352946.13526.5
CloudFront h2p5038.226.2655044.5288.6347
p95296.4362.4561.6394.5390.31576.91940.3
p991189.1707.81453.5848.71031.63771.44678.8
warm reused connection
Fastly h3
44.2 ms148,826
Fastly h2
52 ms187,262
Cloudflare h2
66.9 ms88,199
CloudFront h3
67 ms279,378
Cloudflare h3
76 ms265,842
CloudFront h2
93.7 ms67,923
1,065,547 warm probes · 36% of file · h3 694,046 · h2 343,384 · 28,117 on h1/unknown (not ranked)
WAITDLTTFBTOTAL
Fastly h3p502215.724.644.2
p95106.9116120239.1
p99271.2418.7399.1739
Fastly h2p5026.71629.252
p95148.1183.6175360.4
p99377.1758.8478.81196.9
Cloudflare h2p5038174366.9
p95196248233.2465.8
p99440722.1692.21220.4
CloudFront h3p5033.528.335.667
p95194.2229.7202422
p99366.5442.4397.3801.4
Cloudflare h3p5034.832.936.776
p95152272156.8413.1
p99357.6786.3379.31089.8
CloudFront h2p5046.824.159.693.7
p95302.5273.2371.9598.8
p99592.1683791.91335.7

By device p50 total_ms · last 96h

device variant file probes Cloudflare Fastly CloudFront
mobile cold 1p.gif 926,945 159.5 ms195 ms186.1 ms
cold 100.bin 918,484 238.7 ms243.3 ms248 ms
warm 1p.gif 597,950 41.9 ms30 ms37.5 ms
warm 100.bin 593,465 82 ms55 ms70.8 ms
desktop cold 1p.gif 793,125 117.7 ms90 ms154.4 ms
cold 100.bin 794,746 175.2 ms117.4 ms199.6 ms
warm 1p.gif 474,197 35 ms23.5 ms43 ms
warm 100.bin 472,082 63.5 ms43.5 ms78 ms

By country top 15 by volume · p50 total_ms · last 96h

1p.gif 43 B

cold
country probes Cloudflare Fastly CloudFront
US 204,766 149 ms167 ms148 ms
GB 220,962 98 ms111.2 ms87 ms
DE 121,553 153.3 ms128 ms105.5 ms
BR 116,663 124.1 ms110.9 ms375.4 ms
FR 100,629 92 ms108 ms86.4 ms
TR 78,898 215 ms191.2 ms181.3 ms
ES 60,586 102.7 ms93.8 ms102.2 ms
MX 57,728 199 ms173.4 ms174.6 ms
IT 45,676 133.6 ms134.1 ms119.1 ms
NL 43,658 111 ms114.4 ms105.5 ms
CA 35,389 119 ms128.8 ms117 ms
HK 19,604 147.4 ms250.2 ms520.5 ms
AU 32,133 103 ms114.1 ms519 ms
PL 30,636 118.2 ms146.3 ms161.6 ms
AR 31,377 133.7 ms116 ms472.4 ms
warm
country probes Cloudflare Fastly CloudFront
US 133,939 36.3 ms24 ms26 ms
GB 124,775 30 ms20.9 ms20 ms
DE 76,374 45.4 ms22.8 ms21.8 ms
BR 55,411 34 ms20.3 ms130.3 ms
FR 59,126 28.5 ms18 ms18 ms
TR 52,170 74.6 ms56.5 ms41 ms
ES 31,740 30.8 ms20 ms21 ms
MX 29,504 63 ms42 ms36 ms
IT 33,619 36.1 ms23 ms25 ms
NL 25,158 34 ms21 ms23 ms
CA 23,405 34 ms19.8 ms21 ms
HK 36,381 20.2 ms40.1 ms158.2 ms
AU 19,650 27.8 ms15 ms175 ms
PL 17,039 32.5 ms38 ms41 ms
AR 16,392 34.5 ms21 ms151.1 ms

100.bin 100 KB

cold
country probes Cloudflare Fastly CloudFront
US 211,417 210 ms193 ms188 ms
GB 219,017 156.1 ms143.6 ms118 ms
DE 121,762 242 ms170.6 ms139.3 ms
BR 115,783 182.1 ms144 ms571.6 ms
FR 100,602 140.9 ms142.7 ms111.3 ms
TR 78,537 317.9 ms264 ms247.6 ms
ES 59,968 157 ms122.1 ms131 ms
MX 56,577 302.6 ms224.9 ms232.2 ms
IT 46,132 209.1 ms171.3 ms159.4 ms
NL 43,671 175.8 ms149.9 ms135 ms
CA 35,036 176 ms157.9 ms148.4 ms
HK 19,224 201 ms325 ms769.2 ms
AU 31,925 153.8 ms147 ms788 ms
PL 30,382 175 ms195.8 ms215.4 ms
AR 30,512 208.4 ms156.2 ms711 ms
warm
country probes Cloudflare Fastly CloudFront
US 139,439 68.9 ms44 ms47 ms
GB 123,675 57 ms39 ms38 ms
DE 75,312 91 ms46 ms43 ms
BR 54,593 61.4 ms38 ms251.3 ms
FR 59,095 51 ms33 ms33 ms
TR 51,780 119 ms91.8 ms73 ms
ES 31,791 57 ms36 ms40.4 ms
MX 29,678 110.5 ms70.1 ms66.5 ms
IT 33,462 62 ms40.1 ms43 ms
NL 25,234 67 ms41 ms45.9 ms
CA 22,981 57.8 ms35.9 ms39 ms
HK 36,752 25.5 ms56.7 ms291.1 ms
AU 19,673 55 ms31 ms346 ms
PL 16,768 62 ms71.4 ms75 ms
AR 16,236 62 ms37 ms290.6 ms

5,953,989 probes across 2 sites over the last 96h · last ingest 2026-06-05 22:43:36.696 UTC