Cloudflare R2 Egress Cost Calculator

Calculate a Cloudflare R2 bill from storage, writes and reads. The interactive calculator applies the free tier, request rounding and zero direct-egress pricing.

Cloudflare R2 Egress Cost Calculator
TLDR
  • R2 charges $0.015 per GB-month for Standard storage, $4.50 per million Class A operations and $0.36 per million Class B operations.
  • The monthly free tier includes 10GB-month, one million Class A operations and 10 million Class B operations.
  • Direct internet egress is $0, but “zero egress” does not mean a zero bill.

Calculate your monthly R2 Standard bill

Estimated monthly bill$15.21Storage $15.21 · Class A $0.00 · Class B $0.00 · Egress $0.00

The calculator applies Cloudflare’s Standard storage free tier and rounds each paid request class up to the next million, matching the published billing-unit rule. It excludes Workers, custom contracts, tax and Infrequent Access.

The formula behind the result

R2 Standard monthly cost

max(storage GB-month − 10, 0) × $0.015
+ ceil(max(Class A − 1,000,000, 0) / 1,000,000) × $4.50
+ ceil(max(Class B − 10,000,000, 0) / 1,000,000) × $0.36
+ direct egress × $0

Storage is based on average daily peak usage across the billing period, not simply the final dashboard number. Cloudflare rounds storage and request usage to the published billing units.

What common workloads cost

Monthly workloadStorageRequestsEstimated bill
10GB, 1M writes, 10M readsInside free tierInside free tier$0
1TB, 1M writes, 10M reads$15.21$0$15.21
1TB, 2M writes, 50M reads$15.21$18.90$34.11
10TB, 5M writes, 100M reads$153.45$50.40$203.85

Class A and Class B are easy to reverse

Class A operations generally change or enumerate storage: PUT, COPY, LIST and multipart-upload operations. Class B operations generally read metadata or objects: GET, HEAD and related lookups. Class A is the expensive class.

A workload with millions of tiny uploaded files can therefore spend more on operations than storage. Batch writes, avoid unnecessary LIST calls and keep object layout predictable.

Four ways a zero-egress design still creates a bill

  1. Every cache miss reads R2Bandwidth is free, but the GET counts as Class B.
  2. Request floods cost moneyA public object can attract millions of operations even when transferred bytes are free.
  3. Workers are separateA Worker in front of R2 follows Workers pricing for its requests and CPU.
  4. Infrequent Access has retrieval feesIt costs $0.01 per retrieved GB and has a 30-day minimum duration.

Protect a public R2 bucket before it becomes popular

Put a custom domain in front of public assets, cache immutable files, use long cache headers, restrict upload credentials and add rate limits where abuse is possible. One user reported a roughly $150 request bill during an attack on a public R2 hostname. Free bandwidth does not neutralize unbounded operations.

Set billing alerts and inspect the product usage table. Cloudflare exposes daily cost breakdowns, but an alert should fire before a request pattern becomes the monthly total.

When Infrequent Access is actually cheaper

Infrequent Access reduces storage from $0.015 to $0.01 per GB-month, but Class A and B operations cost more, retrieved data costs $0.01 per GB and the minimum duration is 30 days. It fits retained data that is genuinely cold. It is usually the wrong class for downloads, thumbnails, model assets or active backups that are restored often.

Cost rule

R2 is inexpensive when objects are large, reads are cacheable and direct egress is the dominant workload

It becomes less predictable when an application creates or lists millions of tiny objects, runs every request through metered compute or exposes an unprotected public endpoint.

Frequently asked questions

How much does 1TB cost on Cloudflare R2?

One binary TB stored for a full month costs about $15.21 after the 10GB Standard free tier. Direct egress is free; request charges depend on writes and reads.

Are Cloudflare R2 downloads free?

The bandwidth leaving R2 is free, but each GET or HEAD is a Class B operation. The first 10 million Standard Class B operations per month are included.

Why can an R2 bill rise if egress is free?

Storage, Class A writes and lists, Class B reads, connected Workers, request floods and Infrequent Access retrieval can all create charges.