Skip to main content
rightsizing · azure

Small Premium SSD disks under 500 provisioned IOPS that barely use them

resource types
1
rule IDs covered
1
severity
medium

What does ZopNight detect here?

ZopNight flags a small `Premium_LRS` disk, provisioned below the 500 IOPS of a P10, when its combined read and write peak over 30 days stays below 20% of what it provides. The disk is proposed for Standard SSD at the same size, priced from the real Premium and Standard SSD tier rates.

Signal and threshold

How ZopNight evaluates Small Premium SSD disks under 500 provisioned IOPS that barely use them.
Field Value
Rule IDsRC-240
Categoryrightsizing
Severitymedium
MetricComposite Disk Read/Write Operations/sec (30-day peak)
Thresholdprovisioned IOPS < 500 and peak < 20% of it
Evaluation window30d
SourceZopNight
Permissions usedMicrosoft.Compute/disks/read · Microsoft.Insights/Metrics/Read

Why the smallest Premium tiers are easy to replace

The disk types page lists Premium SSD sizes from 4 GiB to 32 GiB (P1 to P4) at 120 base IOPS and P6 at 64 GiB with 240, while P10 at 128 GiB gets 500. Standard SSD offers up to 500 IOPS across the same sizes. So for a small disk, Premium’s advantage is mainly lower, more consistent latency, not more operations per second.

These disks appear in large numbers: small OS disks, agent volumes and scratch disks built from templates that default to Premium. When the metrics show a disk using a sliver of even its 120 or 240 IOPS, the Premium price is doing very little.

Spotting small Premium disks with low usage

Terminal window
az disk list \
--query "[?sku.name=='Premium_LRS' && diskIOPSReadWrite < \`500\`].{name:name, rg:resourceGroup, size:diskSizeGB, tier:tier, iops:diskIOPSReadWrite}" \
-o table

For each candidate, pull a month of per-hour maxima and add read to write:

Terminal window
az monitor metrics list --resource <disk-resource-id> \
--metric "Composite Disk Read Operations/sec" "Composite Disk Write Operations/sec" \
--aggregation Maximum --interval PT1H --offset 30d

Tests a small Premium disk has to pass

  1. SKU Premium_LRS, with provisioned IOPS known and below 500.
  2. The disk is not positively identified as non-production. Those disks are handled by Azure Non-Prod Premium Disk Downgrade, so this rule covers production disks and disks with no environment signal.
  3. The name does not suggest a database role, such as datadisk, logdisk, tempdb, sql, oracle or hana.
  4. Both the read and the write series exist in Azure Monitor, and their summed 30-day peak is below 20% of provisioned IOPS.
  5. The disk has a monthly cost and both tier rates for its size are known.

Where the rule refuses to guess

Any missing input means no finding: an absent metric is a data gap, not proof of idleness, and an absent or inverted rate means the saving cannot be priced. A result that would equal or exceed the disk’s whole cost is also discarded as a sign of a bad rate. Larger Premium disks, at 500 IOPS and up, are evaluated by Azure Premium Disk IOPS Downgrade instead.

Premium to Standard SSD rate difference

Terminal window
monthly saving = disk monthly cost x (1 - Standard SSD tier rate / Premium tier rate)

Both rates are for the tier that matches the disk’s size in its region, so a 64 GiB disk is compared P6 against E6.

Switching the disk to Standard SSD

  1. Confirm the observed peak in Azure Monitor and check any latency requirement with the owner.
  2. Snapshot the disk.
  3. Deallocate the VM, since Microsoft’s disk conversion steps require it.
  4. Run az disk update --resource-group my-rg --name my-disk --sku StandardSSD_LRS.
  5. Start the VM and watch latency for 24 hours.

See it fire on your bill.

Connect an account read-only. The first findings land in minutes.

472 rule families across 353 resource types on 22 platforms. Every threshold, metric, and IAM action is documented on these pages before you grant anything.

472 rule families documented
353 resource types covered
read-only default access level
Multi-cloud automation· Production-ready in 30 min· SOC 2 · ISO 27001· 20–60% off the bill, first month· 4 platforms · 1 console· Multi-cloud automation· Production-ready in 30 min· SOC 2 · ISO 27001· 20–60% off the bill, first month· 4 platforms · 1 console·