Skip to content

Limits

Rate limiting on managed public buckets through r2.dev

Managed public bucket access through an r2.dev subdomain is not intended for production usage and has a rate limit applied to it. If you exceed the rate limit, requests through your r2.dev subdomain will be temporarily throttled and you will receive a 429 Too Many Requests response. For production use cases, consider linking a custom domain to your bucket.

Account plan limits

FeatureLimit
Bucket1000 buckets per account
Data storage per bucketUnlimited
Object key length1,024 bytes
Object metadata size8,192 bytes
Object size5 TiB per object1
Maximum upload size35 GiB2
Maximum upload parts10,000
Maximum custom domains per bucket50

1 The object size limit is 5 GiB less than 5 TiB, so 4.995 TiB.
2 The max upload size is 5 MiB less than 5 GiB, so 4.995 GiB.
3 Max upload size applies to uploading a file via one request, uploading a part of a multipart upload, or copying into a part of a multipart upload. If you have a Worker, its inbound request size is constrained by Workers request limits. The max upload size limit does not apply to subrequests.
Review the Examples on how to use the SDKs.

Limits specified in MiB (mebibyte), GiB (gibibyte), or TiB (tebibyte) are storage units of measurement based on base-2. 1 GiB (gibibyte) is equivalent to 230 bytes (or 10243 bytes). This is distinct from 1 GB (gigabyte), which is 109 bytes (or 10003 bytes).

Caching

Currently Cloudflare’s Tiered Cache feature is not compatible with responses from R2. These responses will act as if Tiered Cache is not configured.