Cloud CDN cost compared: CloudFront, Cloud CDN, and Azure CDN
A content delivery network bills mostly for data transfer out and requests, and the rates vary by provider and region. Here is how CloudFront, Google Cloud CDN, and Azure CDN compare, and how to keep CDN cost predictable.
Quick answer
A cloud CDN charges primarily for data transfer out to the internet and per-request fees, with rates that fall as volume rises and vary by geographic region. CloudFront, Google Cloud CDN, and Azure CDN all price in the same shape (roughly a few cents per GB in cheap regions, more in others), so the practical differences come from your traffic mix, regional distribution, commitment discounts, and how well you cache. The biggest lever is cache hit ratio: bytes served from the edge cache cost far less than repeated origin fetches plus origin egress.
A content delivery network caches your content at edge locations near users, cutting latency and offloading your origin. It is also one of the more predictable cloud line items once you understand its shape: a CDN bills mostly for data transfer out to the internet and for requests, with per-GB rates that decline at higher volume and differ by region. Comparing providers means comparing those rates against your actual traffic.
What a CDN actually charges for
| Charge | What it covers |
|---|---|
| Data transfer out | Bytes served from the edge to end users, priced per GB by region |
| Requests | Per 10,000 HTTP/HTTPS requests handled at the edge |
| Origin fetch egress | Bytes pulled from your origin on a cache miss |
| Optional features | Field-level encryption, edge functions, real-time logs, WAF |
The dominant cost is nearly always data transfer out. Request fees are small per unit but add up for high-request, small-object workloads (APIs, tiny images). Origin egress is what you pay when the edge cache misses and has to fetch from your bucket or server, which is why cache hit ratio matters so much. This is the same egress dynamic covered in data transfer out cost explained.
CloudFront, Cloud CDN, and Azure CDN side by side
| Provider | Pricing shape | Notable |
|---|---|---|
| AWS CloudFront | Per-GB egress tiered by volume and region, plus per-request | Free from CloudFront to most AWS origins; commitment discounts available |
| Google Cloud CDN | Per-GB egress by region plus cache-fill and lookup fees | Cheap cache egress; separate charge for filling the cache from origin |
| Azure CDN | Per-GB egress by zone, plus rules and requests on premium tiers | Multiple tiers (Microsoft, and partner networks) with different rates |
All three price in roughly the same range, a few cents per GB in the cheapest regions (North America, Europe) and more in Asia, South America, and Oceania. Headline per-GB numbers rarely decide it. What decides it is your regional traffic distribution, how much you commit, and how effectively you cache. For a deeper CloudFront-specific walkthrough, see the CloudFront cost optimization guide.
Why cache hit ratio is the real lever
Every byte served from the edge cache is cheap CDN egress. Every cache miss costs you twice: the edge egress to the user plus origin egress to refill the cache, and the origin egress (from an S3 bucket or a load balancer) can be pricier than the CDN egress itself. Raising cache hit ratio through longer TTLs, cache-key normalization, and cache-friendly headers is usually the single most effective CDN cost optimization. It also reduces load on your load balancer and origin compute.
Keeping CDN cost predictable
Model CDN cost from your traffic mix: total GB out per region times the regional rate, plus requests divided by 10,000 times the request rate. Consolidate small objects to cut request fees, use commitment or private pricing if you push serious volume, and watch origin egress separately since it hides in your compute or object storage bill rather than the CDN line item. Because CDN cost scales directly with traffic and region, pricing it before you launch a new region or a media-heavy feature avoids surprises. Explore the pricing model against the resource catalog.
FAQ
How is cloud CDN cost calculated?
Mostly by data transfer out to the internet, priced per GB and tiered so the rate falls as volume rises, plus a per-request fee (typically per 10,000 requests) and, on a cache miss, origin egress to refill the cache. Optional features like edge functions, real-time logs, and WAF add smaller charges. Data transfer out is almost always the dominant component.
Which CDN is cheapest: CloudFront, Cloud CDN, or Azure CDN?
There is no single cheapest; all three price per-GB egress in a similar range (a few cents per GB in North America and Europe, more in Asia, South America, and Oceania) plus request fees. The cheapest for you depends on your regional traffic distribution, how much you commit, and your cache hit ratio. Model each against your actual traffic mix rather than comparing headline rates.
Why does cache hit ratio affect CDN cost so much?
Because a cache miss costs twice: the CDN serves the byte to the user (edge egress) and also fetches it from your origin to refill the cache (origin egress), and origin egress can be pricier than the CDN egress. Raising cache hit ratio with longer TTLs and cache-friendly headers means more bytes served cheaply from the edge and fewer expensive origin fetches.
Is data transfer from origin to CDN free?
It depends. AWS does not charge for data transfer from most AWS origins to CloudFront, so origin-to-edge fill is free within AWS. Google Cloud CDN charges a cache-fill fee, and Azure varies by configuration. Cross-cloud or internet origins generally incur egress from the origin side. Always account for origin egress separately since it can land on your compute or storage bill.
How do I reduce CDN request fees?
Request fees hit high-request, small-object workloads hardest (tiny images, API responses). Reduce them by consolidating small assets (sprite sheets, bundling), increasing cache TTLs so fewer requests reach a revalidation, and serving small dynamic responses through fewer round trips. Since request fees are per 10,000 requests, halving request count directly halves that portion of the bill.
Does C3X estimate CDN cost before deploy?
C3X prices infrastructure from your Terraform against a live catalog, so CDN distributions and their configuration are visible before deploy. While exact CDN cost depends on runtime traffic, pricing the resources and their region footprint upfront helps you anticipate the shape of the bill, especially when launching new regions or media-heavy features that drive egress.
What to do next
Price your CDN and its region footprint before you launch. C3X reads your Terraform and prices your resources against a live catalog. Start with the quickstart.
Share this post
Try C3X on your own Terraform
Free and open source. No API key required. One command to install, one command to estimate.