Quotas
Object Storage tracks capacity quotas separately for each storage class. The quota forSTANDARD applies to the Hot, Warm, and Cold tiers combined. The quota for STANDARD_IA applies to the Archive tier, if your organization uses this tier.
When usage in a storage class reaches that class’s quota, write operations to that storage class are blocked. Enforcement lags actual usage, so writes can continue past the quota (see Capacity overshoot). To reclaim capacity by removing data your workloads no longer access, see Delete cold objects.
To request a quota increase, contact CoreWeave support and include:
- Your organization name and Org ID, found on the Settings page.
- The region and zone.
- The storage class (
STANDARDorSTANDARD_IA) the request applies to. - The requested object storage quota (TiB).
- A brief description of the workloads and expected storage growth (Optional). For example, new clusters or changes over the next 30 to 90 days.
Per-bucket capacity caps
Each bucket’sSTANDARD usage counts toward the organization’s shared STANDARD quota in its Availability Zone. A per-bucket capacity cap adds a bucket-specific limit. Reaching the bucket cap blocks writes only to that bucket, while reaching the shared quota blocks STANDARD writes to all buckets in the zone.
A cap helps prevent one bucket from exhausting the shared quota. It doesn’t reserve capacity, increase the shared quota, or require moving or rewriting existing data.
Per-bucket capacity caps have the following prerequisites:
- Changing a cap requires the
cwobject:ConfigureBucketCapacityCappermission. - Per-bucket capacity caps are entitlement-gated. Your organization must be entitled before you can configure a cap, and the API rejects requests without the entitlement. To request the entitlement, contact CoreWeave support.
Cap enforcement
The following rules apply while a cap is in place:- The cap counts
STANDARDusage and applies only to writes that addSTANDARDdata. It excludesSTANDARD_IAusage and Archive transitions. - Writes that would push bucket usage past the cap are rejected once enforcement sees the updated usage. Reads and deletes remain available at the cap, so you can reclaim space.
- Each part of a multipart upload is checked separately, so an upload can fail partway through when the bucket reaches its cap.
- Enforcement uses periodically aggregated and cached usage, so a bucket can overshoot its cap before writes are rejected. See Capacity overshoot.
- Lowering a cap below current usage deletes nothing. Further growth is blocked until usage falls, you raise the cap, or you clear it.
- Buckets without a cap are unaffected.
405 Method Not Allowed with a message similar to the following:
Example error
Set or change a cap
Manage caps through theSetBucketSettings control-plane API, not the S3-compatible API. Each request needs an API access token.
-
Save the following as
bucket-settings.json, replacing[BUCKET-NAME]with your bucket andcapacityCapByteswith the cap in bytes. Zero is a valid cap, which blocks everySTANDARDwrite that adds bytes. The maximum accepted value is9223372036854775807bytes, just under 8 EiB.bucket-settings.json -
Submit the request:
A successful response reports the stored cap in the read-onlyExample request
configuredCapacityCapBytesfield:Response status code 200
capacityCapBytes from a settings update, the cap stays unchanged, so you can change other bucket settings without the cap entitlement.
View the current cap
Read the cap and the bucket’s current usage withGetBucketInfo:
Example request
Response status code 200
configuredCapacityCapBytes. The same field appears in ListBucketInfo responses.
Clear a cap
To remove the bucket-specific limit, sendclearCapacityCap instead of capacityCapBytes. The bucket’s STANDARD usage still counts toward the organization’s shared quota. The two fields are mutually exclusive.
bucket-settings.json
Capacity overshoot
Storage-class quotas and per-bucket capacity caps are soft limits. Object Storage enforces them against periodically aggregated usage, not a real-time byte count, so writes can continue after actual usage exceeds the quota or cap. Don’t rely on a quota or cap to reject a particular write at an exact capacity boundary. Usage is aggregated every 5 minutes, so overshoot depends primarily on write throughput during a window of roughly 5 to 10 minutes. S3 servers also cache each bucket’s usage, so per-bucket cap enforcement can lag the usage thatGetBucketInfo reports. After a period without S3 requests, a new request can be checked against an older cached value while the cache refreshes in the background. S3 requests such as HeadBucket, ListObjectsV2, and PutObject trigger this refresh when the server’s cache entry has expired. Polling GetBucketInfo doesn’t refresh the cache, so updated usage in its response doesn’t guarantee that the next upload is checked against that value.
Potential overshoot is approximately the sustained write throughput multiplied by the usage-update delay:
- Per-bucket cap: The bucket’s sustained write throughput during the roughly 5-to-10-minute aggregation window.
- Storage-class quota: The combined write throughput across all buckets in the affected Availability Zone and storage class.
Limits
The following limits are technical constraints on individual objects and multipart uploads.
1 The last object part of a multipart upload can be less than 5 MiB in size.