# Azure Files scalability and performance targets

Here’s a concise summary of the article on Scalability and performance targets for Azure Files:

Overview

* Azure Files provides fully managed SMB and NFS file shares in the cloud.
* Scalability and performance are governed by both Azure Files limits and other deployment variables; you should test your workload to confirm adequacy.
* Resources are managed in Azure subscriptions/resource groups and delivered by resource providers. Storage accounts are provided by Microsoft.Storage and are top-level resources that contain classic file shares and other storage resources (depending on account kind). All resources within a storage account share its limits.

Two categories of limits

* Control plane limits: enforced by Microsoft.Storage and apply to management requests (create/update/delete storage account and child resources).
* Data plane limits: enforced by the Azure storage platform and apply to file operations and other data I/O. Some management operations are also available via the data plane (FileREST) and are therefore subject to data plane limits instead of Microsoft.Storage control plane limits.

Microsoft.Storage (control plane) limits (selected)

* Max storage accounts per subscription per region: 250.
* Max classic file shares per storage account:
  * SSD/HDD provisioned v2: 50
  * SSD provisioned v1: 1024 (recommended ≤ 50)
  * HDD pay-as-you-go: unlimited (recommended ≤ 50)
* Max file share snapshots per share: 200.
* Max virtual network rules per account: 200. Max IP address rules: 200.
* Management read ops: 800 per 5 minutes; write ops: 10/sec (1200/hour); list ops: 100 per 5 minutes.

Storage account (data plane) SKUs / limits — high-level Four storage-account combinations for classic file shares:

1. SSD provisioned v2 (FileStorage, PremiumV2\_LRS/PremiumV2\_ZRS): SSD only, only classic file shares.
2. HDD provisioned v2 (FileStorage, StandardV2\_\*): HDD only, only classic file shares.
3. SSD provisioned v1 (FileStorage, Premium\_LRS/Premium\_ZRS): SSD only, classic file shares.
4. HDD pay-as-you-go (StorageV2, Standard\_\*): can contain file shares and other storage resources.

Key storage-account data plane limits (high-level)

* Maximum storage capacity:
  * SSD provisioned v2: 256 TiB
  * HDD provisioned v2: 4 PiB
  * SSD provisioned v1: 100 TiB
  * HDD pay-as-you-go: 5 PiB
* Maximum IOPS (storage-account total):
  * SSD provisioned v2: 102,400 IOPS
  * HDD provisioned v2: 50,000 IOPS
  * SSD provisioned v1: 102,400 IOPS
  * HDD pay-as-you-go: default 20,000 IOPS (select regions higher: 40,000)
* Maximum throughput (storage-account total):
  * SSD provisioned v2: 10,340 MiB/s
  * HDD provisioned v2: 5,120 MiB/s
  * SSD provisioned v1: 10,340 MiB/s
  * HDD pay-as-you-go: defaults and select-region values differ for ingress/egress (see original).

Classic file share data plane limits (per share)

* Provisioning units: storage (1 GiB), IOPS (1 IO/s), throughput (1 MiB/s) for provisioned SKUs.
* Minimum provisioned size: 32 GiB (provisioned v2), 100 GiB (provisioned v1); pay-as-you-go has no minimum.
* Maximum share size:
  * SSD provisioned v2 / HDD provisioned v2: 256 TiB
  * SSD provisioned v1: 100 TiB
  * HDD pay-as-you-go: 100 TiB
* Maximum IOPS (per share, dependent on provisioning):
  * SSD provisioned v2 / v1: up to 102,400 IOPS
  * HDD provisioned v2: up to 50,000 IOPS
  * HDD pay-as-you-go: 20,000 IOPS
* Maximum throughput (per share): depends on provisioning and SKU (see storage-account limits).
* Maximum metadata IOPS: up to 12,000 IOPS across SKUs.
* Naming rules: full pathname length limit 2,048 characters; individual path component limit 255 characters.
* SMB Multichannel channels: up to 4 on SSD SKUs (N/A on HDD).

Individual file limits

* Maximum file size: 4 TiB (all SKUs).
* Maximum data IOPS per file:
  * SSD: 8,000 IOPS
  * HDD: 1,000 IOPS
* Maximum throughput per file:
  * SSD: 1,024 MiB/s
  * HDD: 60 MiB/s
* Concurrent handles:
  * Root directory: up to 10,000
  * Individual file/directory: up to 2,000

Notes and recommendations

* Provisioned v2 file shares may burst IOPS above provisioned values on a best-effort basis, but bursts across multiple shares are capped by the storage-account limits.
* Provisioned v1 shares can provision IOPS/throughput beyond a storage account’s limits; if aggregate usage exceeds account limits, throttling occurs at account level.
* For HDD pay-as-you-go, many values depend on region; some regions have higher IOPS/throughput.
* Test your usage pattern to validate that Azure Files meets your performance and scalability needs.

References

* Azure Files introduction: <https://docs.azure.cn/en-us/storage/files/storage-files-introduction>
* Planning for an Azure Files deployment: <https://docs.azure.cn/en-us/storage/files/storage-files-planning>
* Understand Azure Files performance: <https://docs.azure.cn/en-us/storage/files/understand-performance>
* Understanding Azure Files billing: <https://docs.azure.cn/en-us/storage/files/understanding-billing>

(Article last updated: 09/19/2025)
