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.