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
AppTracesorContainerLog). - 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.