K
Knacode DevOps Team
January 2026 · 10 min read

The Audit Process

We start every cloud cost engagement the same way: pull 90 days of Cost Explorer data, enable AWS Cost Anomaly Detection, and tag every resource with team and service labels. Most clients haven't done comprehensive tagging, so the first week is largely archaeology — figuring out what each resource actually does and who owns it.

Finding 1: Oversized EC2 Instances (₹1.8L/month saved)

The client was running production workloads on m5.2xlarge instances (8 vCPU, 32GB RAM). CloudWatch metrics showed average CPU utilisation of 8% and memory at 22%. We right-sized to m5.large (2 vCPU, 8GB RAM) with auto-scaling policies that scale up during peak hours. Same performance, 75% lower instance cost. This is the single most common waste pattern we see — instances provisioned for peak load that run at 10% the rest of the time.

Finding 2: No Reserved Instance Coverage (₹1.2L/month saved)

The client was running 100% On-Demand instances. For workloads running 24/7, Reserved Instances (1-year, no upfront) provide roughly 40% savings versus On-Demand. We identified the stable baseline load — instances that were always running — and converted them to Reserved Instances. This single change saved ₹1.2L/month with zero operational change.

Finding 3: S3 Storage Sprawl (₹60K/month saved)

Four years of application logs, database backups, and user-uploaded files were sitting in S3 Standard storage. Logs older than 30 days were never accessed. Database backups older than 90 days were kept "just in case." We implemented lifecycle policies: logs move to S3 Intelligent-Tiering after 30 days and expire after 365 days; backups move to Glacier after 90 days and expire after 7 years. The storage bill dropped 70%.

Finding 4: Forgotten Resources (₹40K/month saved)

Three EC2 instances from a decommissioned staging environment were still running. Two RDS instances from an old client project had never been terminated. Six Elastic IPs were allocated but unattached (AWS charges for unattached EIPs). Terminating these idle resources saved ₹40K/month instantly.

The Lesson

Cloud cost management isn't a one-time activity — it's an ongoing discipline. The client's bill had grown because their team was focused on shipping, not infrastructure hygiene. We set up monthly Cost Explorer reports, budget alerts at 80% and 100% of target spend, and a quarterly infrastructure review as part of their engineering calendar. The goal is to catch cost growth before it becomes a crisis.

Is your AWS bill growing unexpectedly?

Tell us about your project and we'll respond within 24 hours with a clear, honest plan.

More from our blog