This document outlines the service and storage limits for Azure Blob Storage. These limits are for individual storage accounts and are subject to change. For the most up-to-date information, always refer to the official Azure documentation.
The following limits apply to individual Azure Storage accounts:
| Limit Category | Limit Value | Notes |
|---|---|---|
| Maximum account capacity | 5 PiB | Per storage account. |
| Maximum number of storage accounts per subscription | 250 | Can be increased by contacting Azure Support. |
| Maximum ingress to storage account | 100 Gbit/s | Aggregate for all blobs, tables, queues, and files. |
| Maximum egress from storage account | 100 Gbit/s | Aggregate for all blobs, tables, queues, and files. |
| Maximum requests per second per storage account | 20,000 | Aggregate for all blobs, tables, queues, and files. |
The following limits apply to individual blobs within a storage account:
| Limit Category | Limit Value | Notes |
|---|---|---|
| Maximum blob size | Approximately 190.7 TiB (5,000,000,000 blocks * 100 MiB per block) | For block blobs. Page blobs have a limit of 8 TiB. Append blobs have a limit of 195 GiB. |
| Maximum number of blocks in a block blob | 50,000 | |
| Maximum block size for a block blob | 100 MiB | |
| Maximum size of a page blob | 8 TiB | |
| Maximum size of an append blob | 195 GiB | |
| Maximum blob name length | 1024 characters | Including the container name. |
The following limits apply to individual containers within a storage account:
| Limit Category | Limit Value | Notes |
|---|---|---|
| Maximum number of containers per storage account | No documented hard limit, but performance may degrade with a very large number. | Consider partitioning logically. |
The ingress and egress limits are aggregate limits for the entire storage account. To achieve optimal performance, design your application to handle potential throttling and consider using multiple storage accounts for very high-demand scenarios.
For very large blobs, consider using the blob upload API with parallel threads to improve upload and download speeds.
If you exceed these limits, Azure Storage may return throttling errors (e.g., 503 Server Unavailable or 500 Internal Server Error). Implement appropriate retry logic with exponential backoff in your application.
Azure Storage is designed to be highly scalable. While these limits exist, they are generally very generous for most use cases. For advanced performance tuning and understanding the underlying architecture, refer to the Performance Best Practices documentation.
Always monitor your storage account's performance and usage to ensure it meets your application's requirements.