We were burning $85K/month on AWS. Three months later — $51K/month. Here's exactly what we did (no fluff): → Step 1: Visibility first. We deployed AWS Cost Explorer + Compute Optimizer across all accounts. Half our EC2s were oversized by 2–3 instance families. → Step 2: Right-sized ruthlessly. Moved 60+ instances from m5.xlarge to m5.large or t3-based. Auto-scaling policies were tuned so nothing was running at 10% CPU at 2 AM. → Step 3: Savings Plans over Reserved Instances. Compute Savings Plans gave us 66% discount on EC2 + Fargate + Lambda without locking us into specific instance types. → Step 4: S3 tiering.) Lifecycle policies moved 70% of objects to Intelligent-Tiering and Glacier. Objects untouched for 90 days? Glacier Instant Retrieval. → Step 5: Killed zombie resources. 200+ unattached EBS volumes. 14 idle load balancers. 3 NAT Gateways nobody owned. Gone. Total savings: $34K/month. Annualized: $408K. FinOps isn't a tool. It's a culture shift. Once engineers see their cloud spend on a dashboard, behavior changes. Are you tracking your team's cost-per-service? Drop a comment — happy to share the tagging strategy we used. #AWS #FinOps #CloudCostOptimization #CloudArchitecture #DevOps #CloudMigration
The zombie resource audit (Step 5) is underrated. Most teams only look at EC2. The real waste is often in forgotten snapshots and old AMIs — we’ve seen those easily hit $500–2K/month in mature accounts. Did you include snapshot lifecycle policies in the cleanup, or just the unattached volumes/LBs?
Just out of curiosity, what tools did you use to get visibility into this?