Quotas & limits

This page describes quotas and request limits for Cloud Storage. You can request increases to quotas, but limits cannot be adjusted.

Quotas and limits are subject to change.

Buckets

Limit Value Notes
Maximum bucket name size 63 characters

If the name contains a dot (.), the limit is 222 characters.

Maximum bucket creation and deletion rate per project Approximately 1 request every 2 seconds

Plan on fewer buckets and more objects in most cases. For example, a common design choice is to use one bucket per user of your project. However, if you're designing a system that adds many users per second, then design for many users in one bucket (with appropriate permissions) so that the bucket creation rate limit doesn't become a bottleneck.

Highly available applications should not depend on bucket creation or deletion in the critical path of their application. Bucket names are part of a centralized and global namespace: any dependency on this namespace creates a single point of failure for your application. Due to this and the bucket creation/deletion limit, the recommended practice for highly available services on Cloud Storage is to pre-create all the buckets necessary.

Maximum rate of bucket metadata updates per bucket One update per second Rapid updates to a single bucket (for example, changing the CORS configuration) might result in throttling errors.
Maximum number of principals that can be granted IAM roles per bucket

1,500 principals for all IAM roles

100 principals for legacy IAM roles

Examples of principals include individual users, groups, and domains. See Principal types for more information.
Maximum number of Pub/Sub notification configurations per bucket 100 notification configurations
Maximum number of Pub/Sub notification configurations set to trigger for a specific event 10 notification configurations
Maximum number of custom attributes in a Pub/Sub notification configuration 10 custom attributes

Objects

Limit Value Notes
Maximum object size 5 TiB

This limit applies regardless of write method, including object composition, resumable uploads, and multipart uploading. While it is possible to upload the full 5 TiB in a single upload request, such long-running uploads are more likely to experience failures; resumable uploads are the recommended method for uploading large objects.

Maximum combined size of all custom metadata keys and values per object 8 KiB
Maximum object name size 1024 bytes (UTF-8 encoded)
Maximum rate of writes to the same object name One write per second Writing to the same object name at a rate above the limit might result in throttling errors. For more information, see Object immutability.
Maximum rate of object metadata updates to a single object One update per second Updating object metadata at a rate above the limit might result in throttling errors.
Maximum rate of object writes in a bucket Unlimited Includes uploading, updating, and deleting objects. Buckets initially support roughly 1000 writes per second and then scale as needed.
Maximum rate of object reads in a bucket Unlimited Includes reading object data, reading object metadata, and listing objects. Buckets initially support roughly 5000 object reads per second and then scale as needed. However, note that there are bandwidth limits.
Maximum number of access control list entries (ACLs) 100 ACLs per object ACLs can apply to individual users, groups, or domains. See ACL scopes.
Maximum number of source objects in an object composition 32 objects in a single compose request
Maximum number of components that make up a composite object Unlimited While there is no limit to the number of components that make up a composite object, the componentCount metadata associated with a composite object saturates at 2,147,483,647, and the final composite object must adhere to the 5 TiB size limit that applies to all objects in Cloud Storage.

JSON API requests

Limit Value Notes
Maximum total request payload of a batch request Less than 10 MiB Don't include more than 100 calls in a single request.
Maximum size of an object listing glob pattern 1024 bytes in UTF-8 encoding

XML API requests

Limit Value Notes
Maximum combined size of request URL and HTTP headers 16 KiB
Maximum number of buckets that can be returned when listing buckets 1,000 buckets The XML API returns buckets lexicographically by name.
Maximum number of parts in a multipart upload 10,000 parts The object assembled from these parts must adhere to the 5 TiB size limit that applies to all objects in Cloud Storage.
Maximum size of an individual part in a multipart upload 5 GiB
Minimum size of an individual part in a multipart upload 5 MiB There is no minimum size limit on the last part of a multipart upload. As a result, this limit is not enforced at the time a part is uploaded, but is instead enforced at the time you attempt to complete the upload.
Maximum length of time a multipart upload and its uploaded parts can remain unfinished or idle in a bucket Unlimited
Maximum number of different multipart uploads that can simultaneously occur for an object Unlimited
Maximum length of time to complete a resumable upload session 7 days The length of time is measured starting from the resumable upload being initiated.

HMAC keys for service accounts

There is a limit of at most 10 HMAC keys per service account. Deleted keys don't count towards this limit.

Inventory reports

There is a limit of at most 100 inventory report configurations per source bucket.

Bandwidth

Quota Value Notes
Maximum bandwidth for each region or dual-region that has data egress from Cloud Storage to Google services 200 Gbps per region default quota for most projects, but might be lower based on your project's billing account history

Egress to Cloud CDN and Media CDN is exempt from this quota.

Each region has a separate quota; however, data egress from Cloud Storage dual-regions to Google services counts towards the per-project quota of one of the regions that make up the dual-region. For example, if a Compute Engine instance in us-central1 reads data from a bucket in the nam4 dual-region, the bandwidth usage is counted as part of the overall quota for the us-central1 region.

You can request a quota increase for regions on a per-project basis. If you want a quota increase for a dual-region, your increase request should be made for one or both of the regions that make up the dual-region.

To learn how to view the Google egress limits for a project, see View and manage quotas.

To learn how to view Google egress usage for a project, see Bandwidth monitoring.

Maximum egress bandwidth for Google services accessing data from buckets in a given multi-region 200 Gbps per region default quota for most projects, but might be lower based on your project's billing account history

Egress to Cloud CDN and Media CDN is exempt from this quota.

Each region within the given multi-region has a separate quota. For example, say the project my-project has a multi-region Google egress bandwidth quota of 200 Gbps for all regions within it. In this scenario, the us-east1 region has 200 Gbps of bandwidth when supporting data egress to Google services from buckets in the us multi-region, and the us-west1 region has 200 Gbps of bandwidth when supporting data egress to Google services from buckets in the us multi-region.

To learn how to view Google egress usage for different regions and request a per-region quota increase for your project, see Bandwidth usage in Cloud Storage. Note that generally you should use buckets located in regions or dual-regions for workloads with high egress rates to Google services. For existing multi-region buckets that run large workloads in Google services, you can use Storage Transfer Service to move your data to a region or dual-region bucket.

To learn how to view the Google egress quotas for a project by region, see View and manage quotas.

Maximum egress bandwidth for Internet requests accessing data from buckets in a region or dual-region 200 Gbps per region default quota for most projects, but might be lower based on your project's billing account history

Egress to Cloud CDN and Media CDN due to cache misses is included in this quota.

Data egress from Cloud Storage dual-regions to the Internet counts towards the per-project quota of one of the regions that make up the dual-region. For example, if a user downloads data from a bucket in the nam4 dual-region to their personal computer, the bandwidth usage is counted as part of the overall quota of either the us-central1 region or the us-east1 region.

To learn how to view the Internet egress limits for a project, see View and manage quotas.

To learn how to view Internet egress usage for a project by region, see Bandwidth monitoring.

You can request a quota increase for regions on a per-project basis. If you want a quota increase for a dual-region, your increase request should be made for one or both of the regions that make up the dual-region.

Maximum egress bandwidth for Internet requests accessing data from buckets in a given multi-region 200 Gbps per region default quota for most projects, but might be lower based on your project's billing account history

Egress to Cloud CDN and Media CDN due to cache misses is included in this quota.

Regions within the multi-region have separate multi-region Internet egress quotas. For example, say my-project sends data from a bucket located in the us multi-region to customers around the world. In this scenario, different regions within the us multi-region use their own Internet egress quota as data is sent from the bucket to different parts of the world. Typically, Internet egress quota is counted against the region that's geographically closest to the data's destination.

To learn how to view the Internet egress limits for a project, see View and manage quotas.

To learn how to view Internet egress usage for a project by region, see Bandwidth monitoring.

You can request a quota increase on a per-project basis.

When a project's bandwidth exceeds quota in a location, requests to affected buckets can be throttled or can be rejected with a retryable 429 - rateLimitExceeded error that includes details of the exceeded quota. See Bandwidth usage for information about monitoring your bandwidth.