Service profile

Cloudflare R2

An egress-free storage model whose operation classes and placement controls deserve a close look.

Reviewed 2026-09-07 · Editorial analysis, not a performance test

Product in this modelStandard
Pricing regionAutomatic placement / EU jurisdiction
S3 APISupported subset; verify operations
Billing currencyUSD

Standard only. Whole-million request rounding. Other Cloudflare products can add charges.

Where it fits

R2 is a candidate for applications that distribute frequently read objects and want to reduce exposure to per-byte internet egress charges. That is a reason to investigate, not proof that it is the cheapest complete architecture. The workload still needs a suitable access path, appropriate authorization and a way to count operations.

An image library with many reads per object behaves differently from a write-heavy event archive. Run both patterns before choosing. If request count is hard to estimate, model a quiet month and a retry-heavy month rather than pretending the number is precise.

What the model includes

Only Standard storage is included. Storage, Class A and Class B operations receive the published monthly allowances when available. Billable usage rounds upward: crossing an operation allowance by a single request can incur a whole additional million-operation unit. Egress itself has no rate in the R2 model, but Workers and other connected services may still create charges.

The calculator treats the requested average storage as the billing-period storage measure. Real storage that changes within a day can differ because R2 describes a daily-peak averaging method. Infrequent Access, its retrieval costs and its retention rules are excluded.

Placement and compatibility

A location hint is not a placement guarantee. The EU jurisdiction control is a separate option, and must be selected deliberately. Use the linked location documentation when making the bucket, and review the full processing arrangement if you have residency requirements.

R2 implements a subset of the S3 interface. Build an operation checklist from your actual SDK and compare it with the implementation matrix. “It uses S3” is not sufficient evidence that an existing backup client, checksum mode or permission model works unchanged.

A practical evaluation

Exercise upload, ranged download, listing, deletion and your chosen authentication path with disposable data. Count failed and retried operations as well as successful ones. For a public website, check custom-domain and cache behavior separately from storage behavior. For private files, verify that unauthorized requests fail even when a URL has been shared.

Use S3 versus R2 to compare the direct-delivery scenario. The public image guide separates original files, variants, caching and transformations so that an egress-free storage row is not mistaken for an entirely free application.

Official sources for this profile

Provider documentation checked 2026-09-07. These are documented claims, not our measurements.

Report a changed rate or missing qualification →