Skip to content
Calcrivo

Azure Disk IOPS Calculator

Find the real IOPS and throughput of an Azure disk layout after P-series limits, striping and the VM cap are applied.

Inputs

GiB
disks
IOPS
MB/s
IOPS

From the size documentation — a D16s v5 allows about 12,800 uncached IOPS.

MB/s

Effective IOPS

10,000IOPS

IOPS per Disk

5,000IOPS

Aggregate Disk IOPS

10,000IOPS

Effective Throughput

400MB/s

On-demand Burst IOPS

5,000IOPS

Limiting Factor

Disk provisioning — the VM still has headroom

Step by step

  1. Values used

    Size of each disk = 1,024 GiB; Disks striped together = 2 disks; Disk tier = Premium SSD (fixed per size); Provisioned IOPS per disk (v2 / Ultra) = 8,000 IOPS; Provisioned throughput per disk (v2 / Ultra) = 300 MB/s; VM uncached IOPS limit = 12,800 IOPS; VM uncached throughput limit = 600 MB/s

  2. Azure Disk IOPS

    Premium SSD IOPS and MB/s are fixed by the snapped P-series size; striped disks add up, then the VM's uncached limits cap the total: effective = min(disks × per-disk limit, VM limit).

  3. Effective IOPS

    = 10,000 IOPS

  4. IOPS per Disk

    = 5,000 IOPS

  5. Aggregate Disk IOPS

    = 10,000 IOPS

  6. Effective Throughput

    = 400 MB/s

  7. On-demand Burst IOPS

    = 5,000 IOPS

  8. Limiting Factor

    = Disk provisioning — the VM still has headroom

How it works

On Premium SSD you cannot buy IOPS directly — performance is a fixed property of the snapped disk size, so a P30 gives 5,000 IOPS whether you need 500 or 50,000. Striping multiple disks multiplies the disk-side limit, but the VM's own uncached IOPS and throughput caps sit in front of it, and the smaller of the two is what the application sees. Most 'slow disk' tickets in Azure are actually VM-level caps, and adding a bigger disk to a small VM changes nothing; Premium SSD v2 and Ultra let you provision IOPS independently of size, which is often cheaper than buying capacity you do not need.

Formula

Azure Disk IOPS

Premium SSD IOPS and MB/s are fixed by the snapped P-series size; striped disks add up, then the VM's uncached limits cap the total: effective = min(disks × per-disk limit, VM limit).

per-disk limit
IOPS or MB/s that the P-series size grants, or the value you provision on v2 and Ultra
VM limit
Uncached IOPS and throughput ceiling of the VM size
burst
Credit-funded 3,500 IOPS ceiling available on P30 and smaller disks

Frequently Asked Questions

How is Azure Disk IOPS calculated?

Premium SSD IOPS and MB/s are fixed by the snapped P-series size; striped disks add up, then the VM's uncached limits cap the total: effective = min(disks × per-disk limit, VM limit). On Premium SSD you cannot buy IOPS directly — performance is a fixed property of the snapped disk size, so a P30 gives 5,000 IOPS whether you need 500 or 50,000. Striping multiple disks multiplies the disk-side limit, but the VM's own uncached IOPS and throughput caps sit in front of it, and the smaller of the two is what the application sees.

Why does Azure Disk IOPS matter?

Most 'slow disk' tickets in Azure are actually VM-level caps, and adding a bigger disk to a small VM changes nothing; Premium SSD v2 and Ultra let you provision IOPS independently of size, which is often cheaper than buying capacity you do not need.

What values do I need to enter?

This calculator takes 7 inputs: Size of each disk, Disks striped together, Disk tier, Provisioned IOPS per disk (v2 / Ultra), Provisioned throughput per disk (v2 / Ultra), VM uncached IOPS limit, VM uncached throughput limit. The pre-filled defaults are a realistic starting point — replace them with figures from your own environment for a result you can act on.

You might also need