Azure waste

Premium SSD v1 disks that would cost less on v2

A disk on an older storage tier
The agent reports this
Reversible
Why it happens

The newer tier lets you pay for size and speed separately. Most older disks end up cheaper on it for the same performance.

Premium SSD v2 decouples capacity from performance, so a v1 disk sized up purely to reach an IOPS tier is usually cheaper on v2 at the same real performance.

Paste this into Resource Graph Explorer in the Azure portal.

resources
| where type =~ 'microsoft.compute/disks'
// Scope below matches CloudFinOpsPro policy DEFAULTS: exclusions.protectTag, environment.tagKeys,
// environment.allowedTagValues, and allowUntagged false so an untagged resource counts as production.
// If your policy.yaml differs, edit the three lines below or this will disagree with your own agent.
| where tolower(tostring(coalesce(tags['cfop:protect'], ''))) !in ('true', 'yes', '1')
| extend cfopEnv = tolower(trim(' ', tostring(coalesce(tags['Environment'], tags['environment'], tags['env'], ''))))
| where cfopEnv in ('dev', 'development', 'test', 'qa', 'sandbox', 'nonprod', 'non-prod', 'staging')
| where sku.name in ('Premium_LRS','Premium_ZRS')
| project name, resourceGroup, location,
          sku = tostring(sku.name),
          sizeGb = toint(properties.diskSizeGB)
| order by sizeGb desc

Premium SSD v2 is not offered in every region, so confirm availability before planning a migration.

Applies to microsoft.compute/disks
What the agent does about it

A Premium SSD v1 disk where a Premium SSD v2 of the same performance costs less.

It will not fix this one

It reports this and takes no action. A check only earns the right to change something once the action behind it can re-read live state before it fires and knows the way back.