AWS Cost Reset (Stop the Monthly Surprise Bill)
Cloud spend kept growing and nobody knew why — optimization felt risky
Timeline: 2–3 weeks|Result: Spend became predictable with cleanup + right-sizing + guardrails
AWSTerraformCloudWatchBudgetsCost Controls
Context
The product was growing, and AWS costs were growing faster. The team had no clear owner for cost, and everyone was scared to touch resources in case production breaks. The ask was simple: reduce waste safely and keep it from creeping back.
Problem
- Orphaned resources and old environments adding cost quietly
- Compute and databases sized for peak that rarely happens
- Logs, snapshots, and storage growing without limits
- No budget alerts, so billing surprises were normal
Constraints
- Production performance couldn't suffer
- Changes needed to be reversible
- Team needed guardrails so the savings stay
Solution
- Found the top cost drivers and mapped them to real usage
- Removed obvious waste (idle resources, old snapshots, unused IPs, runaway logs)
- Right-sized step-by-step based on metrics
- Added lifecycle rules and budget alerts to prevent regression
Results
- Lower, more stable monthly spend
- Fewer "what caused this bill?" moments
- Costs stopped creeping back because guardrails were in place
Stack
AWS, Terraform (where applicable), CloudWatch, AWS Budgets, lifecycle policies