Skip to content
Finitizer

CloudFront vs S3 Direct Calculator

Find out whether serving files through CloudFront or straight from S3 costs less for your traffic.

AWSCalculator60 seconds
New here? See what this tool does and how to use it.

Learn more

CloudFront vs S3 Direct Calculator

What this free tool does for you

Putting CloudFront in front of S3 does not always save money. Compare both ways of serving your files, and see which one is cheaper for your traffic.

How to use it

  1. Pick a scenario such as Static site and assets, or type your own numbers.
  2. Enter the Data served to users in GB per month and the Requests per month.
  3. Set the Cache hit rate: the share of requests CloudFront answers without going back to S3.
  4. Leave HTTPS and Apply the free tier ticked unless they do not apply to you.
  5. Read which option is cheaper, then What actually decides this: object size.

Good to know

  • File size decides it. Large files such as video are usually cheaper through CloudFront; lots of small files can be cheaper straight from S3. The page works out the tipping point for your traffic.
  • Save or share. Use Copy link to this result to get a link with your numbers filled in.
Start from a scenario

Each one fills in the fields below for a typical workload of that kind. You can change any of them.

With CloudFront$1,766.16/mo
Serving from S3 directly
$1,822.20
CloudFront saves
$56.04/mo
Average object
105 KB
CloudFront costs less than serving from S3 directly
$56.04/mo
$1,766.16 with CloudFront against $1,822.20 direct, 3.1% less.

What actually decides this: object size

Your average object is 105 KB
Large enough for CloudFront
At your hit rate and volume, free tier included, the crossover is around 74 KB (before any free tier, at first-tier rates, it is 138 KB). CloudFront is cheaper per byte, $0.085/GB against S3’s $0.09, with origin fetches free, and more expensive per request, at $1.00 per million HTTPS requests against S3’s $0.40. Which effect wins depends on how many requests it takes you to move a gigabyte.

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.

This traffic fits CloudFront’s Premium flat-rate plan, $1,000.00 a month. Flat-rate plans are per distribution, with no overage charges, and include WAF and DDoS protection; the Premium plan covers 500M requests and 50,000 GB a month. The figures on this page are pay-as-you-go, $1,766.16 here. Check the plan’s features and allowances before you switch.

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

Break-even cache hit rate
15.0%
Above this, CloudFront is cheaper.
Requests reaching the origin
30M
Each is an S3 GET you still pay for.
Effective egress rate
$0.0782/GB
After tiering and the free allowance.

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.
Rates used and their sourcesShow
  • CloudFront data transfer and requests, source, read 13 Oct 2026
  • S3 storage classes, requests and lifecycle transitions, source, read 13 Oct 2026
  • Data transfer, NAT gateway and public IPv4, source, read 13 Oct 2026

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.

See the service

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

More 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

Rate this tool

How would you rate the CloudFront vs S3 Direct Calculator?