Share via

About Azure Container Registry, do we have published information about pulling throttling limit?

Touya 20 Reputation points
2026-04-30T00:16:33.16+00:00

I am using Premium SKU of Azure Container Registry. I understand that during busy time, many pulling requests arriving at ACR could result in 429 Too Many Request due to throttling, and the solution is to space out the concurrent pulling request and retry.

Given that, I wonder if there has been any documentations on this limit? For example, how do I know if 10 concurrent pull requests per second is under the safe threshold or not?

Azure Container Registry
Azure Container Registry

An Azure service that provides a registry of Docker and Open Container Initiative images.


Answer accepted by question author

Himanshu Shekhar 6,420 Reputation points Microsoft External Staff Moderator
2026-04-30T00:40:25.7+00:00

Hey Touya, you’re right that during peak times ACR can return HTTP 429 when pull volume is high—there isn’t a single “public” number like “X pulls/sec is safe,” since throttling depends on your SKU, network path, image size, client config, and regional load. Here’s what we know from the docs:

Premium SKU is the highest-throughput tier, but Azure doesn’t publish an exact pulls-per-second threshold. Instead, the “Registry image pull and push performance limits” section explains that:

Concurrency and bandwidth vary by SKU

Throttling (429s) happens under high request volume

You should implement retry with exponential back-off, reduce concurrent requests, and space out large-scale pulls Link: https://learn.microsoft.com/azure/container-registry/container-registry-skus?wt.mc_id=knowledgesearch_inproduct_azure-cxp-community-insider#registry-image-pull-and-push-performance-limits

For troubleshooting or measuring impact:

Enable and review the “ThrottledRequests” metric in Azure Monitor on your registry

If you consistently hit throttling and need higher capacity:

  • Consider geo-replication or dedicated data endpoints (Premium only)
  • Contact Microsoft Support to discuss a possible throughput increase or guidance

Since there’s no published “10 pulls/sec is safe” number, you’ll need to benchmark your scenario and watch the ThrottledRequests metric to find your sweet spot.

Reference list

• Registry image pull and push performance limits https://learn.microsoft.com/azure/container-registry/container-registry-skus?wt.mc_id=knowledgesearch_inproduct_azure-cxp-community-insider#registry-image-pull-and-push-performance-limits

• Troubleshoot registry performance https://docs.microsoft.com/azure/container-registry/container-registry-troubleshoot-performance

• Azure Container Registry limits (subscription/service quotas) https://learn.microsoft.com/azure/azure-resource-manager/management/azure-subscription-service-limits#azure-container-registry-limits

Was this answer helpful?

1 person found this answer helpful.

1 additional answer

Sort by: Most helpful
  1. AI answer

    2026-04-30T00:16:43.53+00:00

    There is no published numeric throttling limit (for example, a documented “safe” number of concurrent pulls per second) for Azure Container Registry, including the Premium SKU.

    Available guidance is qualitative:

    • API concurrency and bandwidth throughput are determined by the selected SKU, with Premium providing the highest concurrency and throughput for pull/push operations.
    • During high-volume operations, throttling appears as HTTP 429 Too many requests or reduced throughput. Recommended mitigations are:
      • Implement retry logic with exponential backoff.
      • Reduce the rate of concurrent requests.
      • Space out large-scale deployments so that image pulls are not all simultaneous across many nodes.
    • If persistent throttling or slow throughput occurs even after tuning concurrency and retries, the guidance is to:
      • Consider upgrading to a higher SKU (if not already on Premium), and/or
      • Contact Azure Support to request a limit increase for image push/pull performance or other registry limits.

    Because no fixed numeric thresholds are documented, the practical approach is to:

    1. Start with the desired concurrency (for example, 10 concurrent pulls per node or per cluster) and monitor for 429 responses and pull latency.
    2. Tune client-side concurrency (Docker daemon, container runtime, and orchestrator settings) and introduce exponential backoff on retries.
    3. If throttling persists at needed scale, open a support request to review and, where possible, increase service-side limits for the specific registry.

    References:

    AI-generated content may be incorrect. Read our transparency notes for more information.

    Was this answer helpful?

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.