Selecting a Content Delivery Network (CDN) requires evaluating three distinct cost dimensions: regional per-gigabyte data transfer rates, per-10,000 HTTPS request surcharges, and origin cache-miss peering agreements. While Amazon CloudFront integrates natively with AWS S3 and AWS Shield, its public list pricing for bandwidth and HTTPS requests is 4x to 8x higher than specialist networks like Bunny.net or zero-egress architectures built on Cloudflare CDN + R2.
This specification dissects the regional rate cards across all three providers, models how object payload size shifts the ratio between bandwidth cost and request cost, and outlines architectural routing constraints.
Global Regional Bandwidth Pricing Matrix ($/GB List Rates)
Unlike Cloudflare (which bundles unmetered CDN edge bandwidth for standard web assets and R2-backed storage), Amazon CloudFront and Bunny.net bill per gigabyte based on the geographic edge Point of Presence (PoP) serving the end user:
| Geographic Edge Territory | CloudFront (1st 10TB) | CloudFront (Next 40TB) | Bunny.net Standard | Bunny.net Volume Tier | Cloudflare (R2 Origin) |
|---|---|---|---|---|---|
| North America (US / CA) | $0.085 / GB | $0.080 / GB | $0.010 / GB | $0.005 / GB | $0.000 / GB |
| Europe & UK (EU) | $0.085 / GB | $0.080 / GB | $0.010 / GB | $0.005 / GB | $0.000 / GB |
| Asia-Pacific & Oceania | $0.114 / GB | $0.098 / GB | $0.030 / GB | $0.005 / GB | $0.000 / GB |
| South America (LATAM) | $0.110 / GB | $0.105 / GB | $0.045 / GB | $0.005 / GB | $0.000 / GB |
| Middle East & Africa | $0.110 / GB | $0.100 / GB | $0.060 / GB | $0.005 / GB | $0.000 / GB |
| India (Mumbai / Chennai) | $0.109 / GB | $0.085 / GB | $0.030 / GB | $0.005 / GB | $0.000 / GB |
Note on CloudFront Free Tier: AWS CloudFront provides a permanent monthly free tier of 1 TB (1,000 GB) of data transfer out and 10,000,000 HTTP/HTTPS requests per AWS account. Once monthly traffic exceeds 1 TB, standard regional bracket pricing applies unless you negotiate a private 12-month CloudFront Security Savings Bundle or Enterprise Commit (>100 TB/mo).
The Hidden Tax: Per-10,000 HTTPS Request Surcharges
Capacity planners frequently model CDN costs using gigabyte volume alone while ignoring HTTPS Request Fees. Amazon CloudFront charges between $0.0100 and $0.0220 per 10,000 HTTPS `GET`/`HEAD` requests ($1.00 to $2.20 per million requests) depending on the region.
When delivering small payloads—such as 4 KB JSON API responses, tile maps, web fonts, or HLS `.m3u8` playlist manifests—the per-request fee on CloudFront exceeds the bandwidth fee:
Bunny.net and Cloudflare CDN (on standard cached edge hits) do not bill per-10,000 HTTPS request surcharges on static cached edge responses. Only uncached Worker invocations or R2 origin reads incur request metering.
CloudFront Price Classes & Latency Trade-Offs
To prevent unexpected billing spikes from traffic in South America, Australia, Japan, and India, CloudFront allows architects to restrict which edge PoPs are active via three **Price Classes**:
- `PriceClass_100` (North America & Europe Only): Restricts edge delivery strictly to PoPs in the US, Canada, Mexico, UK, and Europe ($0.085/GB). However, if a user in Tokyo or Sydney requests an asset, DNS routes their TCP/TLS handshake across the Pacific Ocean to a US-West PoP (Seattle/San Jose), adding 110ms to 165ms of round-trip latency.
- `PriceClass_200` (Excludes South America & Australia/NZ): Includes North America, Europe, Asia, Middle East, and Africa while excluding the highest-cost PoPs in Brazil and Australia.
- `PriceClass_All` (Global Anycast Edge): Uses all 600+ CloudFront PoPs worldwide for lowest latency at maximum regional list prices.
Cloudflare Service-Specific Terms & The R2 Origin Exemption
A critical compliance rule for infrastructure architects is Cloudflare's **Service-Specific Terms for CDN**. Historically, using a free or $20 Pro Cloudflare zone to proxy terabytes of raw video `.mp4`/`.ts` chunks, software `.iso` images, or S3-hosted binaries from an external AWS/Hetzner origin violated Cloudflare's acceptable use policy unless the customer purchased Cloudflare Stream, R2, or an Enterprise CDN contract.
The R2 Architectural Solution: Under Cloudflare's current terms, when you store your video segments, game binaries, or AI model weights inside a **Cloudflare R2 bucket** attached to a custom domain on your Cloudflare zone, 100% of outbound CDN bandwidth is contractually permitted and billed at **$0.00/GB egress**, regardless of whether the files are video, audio, or binary archives.
Inspecting Edge PoP Routing & Cache Telemetry Headers
Each CDN exposes proprietary diagnostic headers that allow engineers to audit which physical edge PoP served a byte-range request and whether an Origin Shield tier was traversed. Below are actual response headers captured from our Nuremberg (`eu-central`) test node across all three networks:
# 1. Amazon CloudFront (Frankfurt PoP FRA56-P7) x-cache: Hit from cloudfront x-amz-cf-pop: FRA56-P7 x-amz-cf-id: 8mK1vP_9qL2wX...== # 2. Bunny.net CDN (Frankfurt Edge Node DE-FRA-1124) cdn-pullzone: 948120 cdn- requestcountrycode: DE cdn-cachedat: 10/02/2026 14:19:08 cdn-edgestorageid: 1124 cdn-status: 200 cdn-cache: HIT # 3. Cloudflare CDN + R2 Custom Domain (Frankfurt PoP FRA) cf-cache-status: HIT cf-ray: 8cc41908ae12d391-FRA age: 19408
Multi-Workload TCO Decision Matrix (100 TB Monthly Global Mix)
Assuming a global traffic distribution (60% NA/EU, 25% APAC, 15% LATAM/MEA) delivering 100 TB/month with 500M HTTPS requests and 20 TB of origin storage:
| Cost Component | AWS S3 + CloudFront | Backblaze B2 + Bunny CDN | Cloudflare R2 + CDN |
|---|---|---|---|
| 20 TB Origin Storage | $460.00 | $120.00 | $300.00 |
| Origin-to-CDN Egress | $0.00 (Waived) | $0.00 (Bandwidth Alliance) | $0.00 (Native) |
| 100 TB Global CDN Edge Egress | $8,420.00 | $2,025.00 ($500 Volume) | $0.00 |
| 500M HTTPS Request Fees | $545.00 | $20.00 (Origin misses only) | $18.00 (Origin misses only) |
| Total Monthly Run-Rate | $9,425.00 / mo | $2,165.00 / mo | $318.00 / mo |
Model Video Streaming HLS & DASH Bitrate Ladders Next
Calculate exact GB-per-viewer-hour consumption, CMAF segment sizing, and transcoding storage overhead.