As organizations scale and product engineering teams spin up cloud infrastructure autonomously, Azure invoices inevitably creep upward. Dormant proof-of-concept resources, leftover disks from decommissioned VMs, and unmonitored test databases quietly burn money.

Having audited dozens of enterprise cloud environments, these ten cost leaks surface repeatedly across organizations of all sizes:

1. Unattached Managed Disks

When a virtual machine is deleted through the portal or CI/CD, its attached OS and data Managed Disks are retained by default to prevent accidental data loss. Premium SSD disks (e.g. P20 or P30) continue billing at full price indefinitely.

Fix: Run an Azure Resource Graph query filtering for where managedBy == "" to find orphaned disks. Snapshot them to cheaper storage tiers and delete the idle disk.

2. Idle Public IP Addresses

Standard SKU public IP addresses now incur charges even when not attached to any running network interface, firewall, or load balancer. Clean up orphaned static IP addresses.

3. Stale Snapshots and Excessive Backup Retention

Manual snapshots taken years ago for testing purposes often remain forgotten. Re-evaluating backup retention policies (e.g. cutting non-production backup retention from 365 days to 30 days) slashes Azure Backup vault and storage consumption.

4. Azure Blob Storage Lifecycle Management

Data is frequently left in the expensive Hot tier forever. Establishing automated lifecycle management rules that tier data to Cool after 30 days and Archive after 180 days can reduce storage expenses by up to 75–80%.

5. Oversized App Service Plans in Non-Prod Environments

Development and staging services rarely require Premium v3 tiers running 24/7. Downgrade non-production workloads to Basic or Standard tiers, and schedule automated shutdowns or scaling down outside work hours.

6. Auto-Shutdown on Development VMs

Enable native Azure Auto-shutdown at 18:00 on every development and QA virtual machine. This simple change instantly slashes VM runtime billing by up to 60%.

7. Log Analytics Workspace Ingestion & Retention

Log Analytics ingests every piece of telemetry unless configured deliberately. Applications frequently dump excessive Debug traces into workspaces.

  • Audit your most expensive tables (frequently AppTraces or ContainerLog).
  • Set a daily ingestion cap on non-critical workspaces.
  • Adjust data retention periods to regulatory and operational minimums.

8. Cosmos DB Provisioned Throughput Calibration

When Cosmos DB throughput (RU/s) is provisioned manually to handle occasional traffic spikes, you pay for maximum capacity around the clock. Switching to Autoscale or Serverless mode for low-traffic databases delivers instant savings.

9. Dormant Virtual Network Gateways & VPN Connections

Test site-to-site VPN gateways left over from completed migrations continue racking up hundreds of euros per month, even when zero packets are transmitted.

10. Azure Reserved Instances and Savings Plans

Once base workloads have been right-sized and cleaned up, commit to 1-year or 3-year Azure Reserved Instances or Savings Plans for baseline compute. Discounts reach up to 30–65% over Pay-as-you-go rates.

💡 Ready to uncover savings in your Azure subscription?

CloudyMind Oy provides a fixed-price Azure Health Check audit analyzing cost leaks, security vulnerabilities, and right-sizing opportunities. Typical savings exceed the audit fee within the first quarter.

Learn more about the Health Check →