Quotas and limits

This document lists the quotas and system limits that apply to Artifact Registry.

  • Quotas specify the amount of a countable, shared resource that you can use. Quotas are defined by Google Cloud services such as Artifact Registry.
  • System limits are fixed values that cannot be changed.

Google Cloud uses quotas to help ensure fairness and reduce spikes in resource use and availability. A quota restricts how much of a Google Cloud resource your Google Cloud project can use. Quotas apply to a range of resource types, including hardware, software, and network components. For example, quotas can restrict the number of API calls to a service, the number of load balancers used concurrently by your project, or the number of projects that you can create. Quotas protect the community of Google Cloud users by preventing the overloading of services. Quotas also help you to manage your own Google Cloud resources.

The Cloud Quotas system does the following:

  • Monitors your consumption of Google Cloud products and services
  • Restricts your consumption of those resources
  • Provides a way to request changes to the quota value

In most cases, when you attempt to consume more of a resource than its quota allows, the system blocks access to the resource, and the task that you're trying to perform fails.

Quotas generally apply at the Google Cloud project level. Your use of a resource in one project doesn't affect your available quota in another project. Within a Google Cloud project, quotas are shared across all applications and IP addresses.

There are also system limits on Artifact Registry resources. System limits can't be changed.

Artifact Registry limits the maximum rate of incoming requests and enforces quotas on a per-project and per-user basis.

See Working with quotas for information on quota policies, viewing your quota, and managing your quota.

Go to the API dashboard for your current API activity.

Quotas

Artifact Registry enforces the following quotas.

Per-project request quota

Quota Value Additional information
Requests per minute in each region or multi-region 60,000
Write requests per minute in each region or multi-region 18,000 In most cases, a single HTTP request or API call counts as a single request. However, some operations count as multiple requests. For example, a batch request like `ImportAptArtifacts` might charge quota for each item in the batch. A Docker pull or push usually makes multiple HTTP requests, so quota is charged for each request.
Delete requests per minute in each region or multi-region 18,000 Deletions requested by cleanup policies count towards the delete requests quota and deletions per day, per repository limit.

Per-user request quota

By default, projects have unlimited per-user quota. You can optionally cap per-user quota within a project. Per-user quota applies per authenticated user or per client IP address for unauthenticated requests to a public repository.

Cloud KMS quotas and Artifact Registry

When you use CMEK in Artifact Registry, your projects can consume Cloud KMS cryptographic requests quotas. For example, CMEK-encrypted repositories can consume these quotas for each upload or download. Encryption and decryption operations using CMEK keys affect Cloud KMS quotas only if you use hardware (Cloud HSM) or external (Cloud EKM) keys. Confirm that you have enough quota to enable application-layer secrets encryption for your applications and workflows. For more information, see Cloud KMS quotas.

Artifact Analysis quotas

See Artifact Analysis quotas and limits for information on scanning usage policies.

Public upstream quotas

If you use remote repositories to cache public upstream repositories, you might be subject to the upstream repositories' read and write quotas.

Usage Limits

Artifact Registry enforces the following usage limits.

Usage limit Value
Cleanup policy deletions per repository, per day 300,000
Cleanup policies per repository 10
Max data retrieval from upstream of remote repository per request 9.9 GB
Max upstream policies for virtual repositories 30
Max number of total upstream resolutions per request for virtual repositories 250
Max number of remote repository upstream resolutions per request for virtual repositories 30
Repository creation and deletion operations, per region, per minute 30

Remote Repository Limits

When you request an artifact from your remote repository, and the artifact hasn't already been cached in your remote, the artifact is requested from the upstream repository, and then stored in your remote repository. Requests to upstream hosts count against your organization’s upstream host read request limit, and caching the artifact in your remote repository uses your project’s write and request quotas. Once the artifact has been cached to your remote, requests for that artifact only count against your project's request quota.

Artifact Registry enforces the following usage limits for remote repositories.

Limit Public upstream Value
Public upstream host reads per organization, per region, per minute Default 600
Docker Hub 600
Maven Central 3000
NpmJS 1800
PyPI 1200

Limit for listing artifacts in a repository

Format-specific API requests to all formats are limited to 10,000. For example, the Docker Registry API method to list container images returns an incomplete list if a repository has more than 10,000 images or tags.

The limitation does not apply to the gcloud artifacts docker images list command or Artifact Registry API requests.

Request a quota increase

To adjust most quotas, use the Google Cloud console. For more information, see Request a quota adjustment.