Cloudflare R2 / KV
Objects, snapshots, manifests, and small hot config near Workers.
- Card required
- No
Cloudflare R2 / KV scores 6.6/10 for free value in Storage. The main constraint: Free tiers exist for R2/KV; operations/storage are quota-based.
Free value score
6.6 / 10Show the math
Key metrics
What you get
Free tiers exist for R2/KV; operations/storage are quota-based.
Static frontend companion storage and exported bundles.
Gotchas
- R2 storage 10 GB/month
Up to 10 GB-month of R2 Standard storage is included free each calendar month.
- R2 Class A ops 1M/month
1 million Class A (write/mutate) operations on R2 are free per month; overages are billed at $4.50/million.
- R2 Class B ops 10M/month
10 million Class B (read) operations on R2 are free per month; overages are billed at $0.36/million.
- KV reads 100K/day
Workers KV free plan allows 100,000 key reads per day; all limits reset daily at 00:00 UTC.
- KV writes 1K/day
Workers KV free plan allows only 1,000 key writes per day, which is quite tight for write-heavy workloads.
- KV deletes 1K/day
Workers KV free plan allows 1,000 key deletes per day; resets daily.
- KV list requests 1K/day
Workers KV free plan allows 1,000 list operations per day.
- KV storage capped at 1 GB
Workers KV free plan total stored data is hard-capped at 1 GB; no expansion without upgrading to the paid plan.
- KV requires Workers Free plan
Workers KV is only available as part of the Cloudflare Workers plan — it cannot be used standalone; Workers Free plan is itself free but ties KV to Workers usage limits.
- R2 Infrequent Access excluded from free tier
The free-tier quotas (10 GB, 1M/10M ops) apply only to Standard storage; Infrequent Access storage has no free tier and also charges data retrieval fees.
- KV eventually consistent reads
Workers KV uses a globally distributed cache with eventual consistency — reads may return stale values for up to 60 seconds after a write.
- KV hard-errors on quota breach
When any KV daily limit is exceeded, further operations of that type return errors rather than being gracefully throttled or queued.
Sources
-
"Storage 10 GB-month / month | Class A Operations 1 million requests / month | Class B Operations 10 million requests / month | Egress (data transfer to Internet) Free"
https://developers.cloudflare.com/r2/pricing/ -
"Egressing directly from R2, including via the Workers API, S3 API, and r2.dev domains does not incur data transfer (egress) charges and is free."
https://developers.cloudflare.com/r2/pricing/ -
"Keys read 100,000 / day | Keys written 1,000 / day | Keys deleted 1,000 / day | List requests 1,000 / day | Stored data 1 GB. All limits reset daily at 00:00 UTC. If you exceed any one of these limits, further operations of that type will fail with an error."
https://developers.cloudflare.com/kv/platform/pricing/ -
"R2 gives developers object storage, without the egress fees. Before R2, cloud providers taught us to expect a data transfer tax every time"
https://blog.cloudflare.com/r2-ga/