Storage classes
Storage classes allow you to trade off between the cost of storage and the cost of accessing data. Every object stored in R2 has an associated storage class.
All storage classes share the following characteristics:
- Compatible with Workers API, S3 API, and public buckets.
- 99.999999999% (eleven 9s) of annual durability.
- No minimum object size.
Storage class | Minimum storage duration | Data retrieval fees (processing) | Egress fees (data transfer to Internet) |
---|---|---|---|
Standard | None | None | None |
Infrequent Access | 30 days | Yes | None |
For more information on how storage classes impact pricing, refer to Pricing.
Standard storage is designed for data that is accessed frequently. This is the default storage class for new R2 buckets unless otherwise specified.
- Website and application data
- Media content (e.g., images, video)
- Storing large datasets for analysis and processing
- AI training data
- Other workloads involving frequently accessed data
Infrequent Access storage is ideal for data that is accessed less frequently. This storage class offers lower storage cost compared to Standard storage, but includes retrieval fees and a 30 day minimum storage duration requirement.
- Long-term data archiving (for example, logs and historical records needed for compliance)
- Data backup and disaster recovery
- Long tail user-generated content
By setting the default storage class for a bucket, all objects uploaded into the bucket will automatically be assigned the selected storage class unless otherwise specified. Default storage class can be changed after bucket creation in the Dashboard.
To learn more about creating R2 buckets, refer to Create new buckets.
To learn more about how to specify the storage class for new objects, refer to the Workers API and S3 API documentation.
To learn more about how to transition objects from Standard storage to Infrequent Access storage, refer to Object lifecycles.