CloudFront vs S3 Direct Calculator
Find out whether serving files through CloudFront or straight from S3 costs less for your traffic.
Each one fills in the fields below for a typical workload of that kind. You can change any of them.
- Serving from S3 directly
- $1,822.20
- CloudFront saves
- $56.04/mo
- Average object
- 105 KB
What actually decides this: object size
So CloudFront wins outright on video, images, installers and large downloads, and can genuinely lose money in front of an API serving small JSON responses. Every other calculator in this space models the cache hit rate and ignores this entirely.
Side by side
With CloudFront
| Data transfer outTiered from $0.085/GB | $1,564.16 |
| Requests200M at the HTTPS rate | $190.00 |
| Origin fetchFree from an AWS origin | $0.00 |
| S3 GETs on misses30M requests reach the bucket | $12.00 |
| Total | $1,766.16 |
Straight from S3
| Data transfer outTiered from $0.09/GB after 100 GB free | $1,742.20 |
| GET requestsAll 200M hit the bucket | $80.00 |
| Total | $1,822.20 |
What moves the answer
What this model assumes
Show
- US and Canada rates only. CloudFront prices by the edge region that serves the request, and South America, Asia Pacific and the Middle East cost materially more. A globally distributed audience will pay above this figure, check the price class you have configured.
- CloudFront HTTPS requests cost 2.5x an S3 GET. $1.00 per million against $0.40 (plain HTTP is $0.75 per million). That is the counterweight to the cheaper egress, and it is why average object size decides the answer more than cache hit rate does. A request-heavy, byte-light workload is the case where a CDN costs more.
- The crossover includes the free tier. CloudFront’s 1 TB and 10 million requests a month, and S3’s 100 GB, move the object size at which the two meet, so the crossover on this page is worked out at your volume with the free tier applied exactly as in the totals. The rule of thumb before any free tier, at first-tier rates, is about 210 KB with nothing cached and 126 KB with everything cached.
- Origin transfer into CloudFront is free. This is a published AWS rate of zero, not an approximation, and it is what lets a CDN win at a low hit rate when the objects are large enough.
- Cache misses still cost S3 GETs. A miss is a request to your bucket, priced at the S3 Standard GET rate. Modeled, because at a low hit rate it is a real line.
- Pay-as-you-go prices. CloudFront also sells flat-rate plans per distribution ($15, $200 and $1,000 a month, with usage allowances and no overage charges). The page names a plan your traffic fits, but prices pay-as-you-go.
- Not modeled: Origin Shield, Lambda@Edge and CloudFront Functions, field-level encryption, real-time logs, invalidation requests beyond the free allowance, or dedicated SSL certificates.
- Latency is not priced. Serving from an edge location is faster than serving from one region, sometimes dramatically so for distant users. That is usually the actual reason to adopt a CDN; the cost result here is a bonus rather than the argument.
Prices verified 13 Oct 2026. Public list prices in USD for US East (N. Virginia), before any discount you have negotiated.
Want this done on your real bill?
Cloud Cost Audit: We go through your real AWS or Google Cloud bill and hand you a ranked list of what to cut first. From $1,500, fixed. Nothing paid upfront.
Questions
Is CloudFront cheaper than serving from S3 directly?
It depends on your average object size, and that is the answer almost nobody gives. CloudFront is cheaper per byte, $0.085 per GB against S3's $0.09, with transfer from an S3 origin into CloudFront free rather than merely discounted. But it is more expensive per request: $1.00 per million HTTPS requests against S3's $0.40 per million GETs. At first-tier rates and before any free tier, the crossover sits around a 210 KB average object with nothing cached, falling to about 126 KB when everything is; the free tiers and volume discounts move it, and this calculator works it out at your volume. Above it, CloudFront wins outright. Below it, a CDN in front of an API serving small JSON responses can genuinely cost more.
What average object size makes a CDN worth it on cost?
Roughly 125 to 210 KB at first-tier US rates, before the free tier; the free tier lowers it, often a lot, and this calculator works it out for your traffic. CloudFront saves about half a cent per GB and costs about $0.60 extra per million requests once caching is accounted for, so the two cancel at somewhere between 5,000 and 8,300 requests per gigabyte depending on your hit rate. Video, images, installers and large downloads are comfortably above that line; API responses and small assets are below it.
How much does CloudFront cost?
In the US and Canada, data transfer out is tiered from $0.085 per GB down to $0.02 above 5 PB, plus $0.01 per 10,000 HTTPS requests. The AWS free tier covers 1 TB of transfer and 10 million requests a month. CloudFront also sells flat-rate plans per distribution, $15, $200 and $1,000 a month with usage allowances and no overage charges, which can cost less for steady traffic.
Does CloudFront charge for origin requests?
CloudFront does not charge for data transfer from an AWS origin. Your origin still charges its own request fee, every cache miss is an S3 GET at the normal rate, which is why a very low hit rate still costs something even though the transfer is free.
Does the CloudFront price class matter?
Considerably. CloudFront prices by the edge region serving the request, and South America, Asia Pacific and the Middle East cost materially more than the US and Europe. This calculator models US and Canada rates, so a globally distributed audience will pay more than shown unless the distribution is restricted to cheaper price classes.
What cache hit rate do I need for CloudFront to pay off?
It depends on object size more than on the hit rate. For large objects, none: the free origin transfer and the cheaper egress rate mean CloudFront wins even with nothing cached. For small objects, no hit rate is enough, because every request pays CloudFront's per-request fee whether it is cached or not. Only in between does a break-even hit rate exist. This calculator tells you which of the three cases your numbers fall in.
Related tools
S3 Storage Class Calculator
Find the cheapest S3 class once retrieval fees and minimums are counted.
OpenNAT Gateway & Data Transfer Calculator
Price the NAT gateway line that surprises everyone, and find a cheaper setup.
OpenKubernetes Cost Calculator
Size nodes from your pod requests, then price everything nodes leave out.
OpenMore tools for: Network and data transfer, Storage and lifecycle
The CDN decision is one line on a bill with thousands.
Finitizer finds the buckets serving public traffic without a distribution in front of them, attributes egress to the workload causing it, and tracks the price-class settings quietly costing you money in expensive regions.
See how Finitizer works