I still remember the panic call from a CTO: "Our AWS bill just hit $47,000 this month. We budgeted for $15,000. What happened?"
Three weeks later, we had their bill down to $18,000—and their application was actually running faster. No magic, just systematic optimization that most teams overlook.
Here are the 10 strategies I use every time. Some will save you hundreds, others will save you thousands. Let's dive in.
1. Right-Size Your Instances (The Biggest Win)
Potential savings: 30-50%
This is where I start with every client because it's almost always the biggest problem. Most teams provision "just in case" and never revisit. That m5.2xlarge running at 15% CPU? It's burning money.
Here's my process:
- Pull 2 weeks of CloudWatch metrics for all EC2 instances
- Flag anything with average CPU under 40% and memory under 60%
- Use AWS Compute Optimizer (it's free!) for specific recommendations
- Downsize gradually—go one size down, monitor for a week, repeat
💡 Pro tip: AWS Compute Optimizer is criminally underused. Enable it account-wide—it analyzes your usage patterns and tells you exactly which instances to resize.
2. Use Spot Instances for Fault-Tolerant Workloads
Potential savings: 60-90%
Spot instances are the same hardware as on-demand, just with a catch: AWS can reclaim them with 2 minutes notice. Sounds scary, but for the right workloads, it's free money.
Perfect for Spot:
- CI/CD runners and build agents
- Batch processing and data pipelines
- Kubernetes worker nodes (with proper pod disruption budgets)
- Dev and staging environments
- Stateless microservices behind load balancers
One client moved their entire EKS cluster to 80% Spot instances. Annual savings: $156,000. Interruption rate: less than 5%.
3. Reserved Instances & Savings Plans
Potential savings: 30-72%
If you've been running workloads on-demand for more than 3 months, you're overpaying. Period. AWS rewards commitment with significant discounts.
My recommendation:
- Compute Savings Plans — Most flexible. Applies to EC2, Lambda, and Fargate. Start here.
- EC2 Instance Savings Plans — Slightly better discount, but locked to instance family.
- Reserved Instances — Best for databases (RDS, ElastiCache) with predictable sizing.
💡 Start with 1-year, no-upfront Savings Plans. You get 20-30% savings with low commitment. Once you're confident in your baseline, upgrade to 3-year terms.
4. Kill Zombie Resources
Potential savings: 5-20%
Every AWS account I audit has zombies—resources that were created, forgotten, and are now silently draining money. Common culprits:
- Unattached EBS volumes — Check for volumes not attached to any instance
- Old snapshots — That snapshot from 2021? Still costing you.
- Idle load balancers — $18/month each, even with zero traffic
- Unused Elastic IPs — Free when attached, ~$4/month when idle
- Forgotten test environments — That "temp" cluster from 6 months ago
Run AWS Trusted Advisor (free tier) or use AWS Cost Explorer's "Resource" view to hunt these down.
5. Optimize S3 Storage Classes
Potential savings: 40-80% on storage
S3 Standard costs $0.023/GB. S3 Glacier Deep Archive costs $0.00099/GB. That's 95% cheaper for data you rarely access.
My S3 tiering strategy:
- 0-30 days: S3 Standard
- 30-90 days: S3 Standard-IA (Infrequent Access)
- 90+ days: S3 Glacier Instant Retrieval
- 1+ year (compliance/archive): Glacier Deep Archive
💡 Enable S3 Intelligent-Tiering for buckets where you're unsure of access patterns. It automatically moves objects between tiers—small monitoring fee, but usually worth it.
6. Use Graviton Processors
Potential savings: 20-40%
AWS Graviton (ARM-based) instances are straight-up cheaper than Intel/AMD equivalents—and often faster. If you're not evaluating them, you're leaving money on the table.
Works great for:
- Web servers (Nginx, Apache)
- Containerized applications
- Node.js, Python, Go, Java applications
- Databases (RDS, ElastiCache)
Switching from m5.large to m6g.large saves ~20% with no code changes for most applications.
7. Schedule Non-Production Environments
Potential savings: 65% on dev/staging
Your dev environment doesn't need to run at 3 AM on Sunday. Yet most teams run non-production 24/7 because "it's easier."
Set up Instance Scheduler (AWS solution) or use a simple Lambda to shut down dev/staging environments outside business hours. Running 10 hours/day instead of 24 cuts costs by 58%.
8. Optimize Data Transfer Costs
Potential savings: Variable (can be huge)
Data transfer is the silent killer of AWS bills. Outbound data to the internet costs $0.09/GB. It adds up fast.
Quick wins:
- Use CloudFront — Cheaper data transfer than direct from S3/EC2
- VPC Endpoints — Free data transfer to AWS services within VPC
- Same-AZ deployments — Cross-AZ transfer costs $0.01/GB each way
- Compress data — Enable gzip on API responses, compress logs
9. Set Up Billing Alerts (Seriously)
Potential savings: Prevents disasters
This isn't about saving money directly—it's about catching problems before they become $10,000 surprises. Set up CloudWatch Billing Alerts for:
- 50% of monthly budget
- 80% of monthly budget
- 100% of monthly budget
- Any spike over 20% day-over-day
10. Review Your Bill Monthly (Not Quarterly)
The teams with the best AWS cost hygiene review their bill monthly. Not because they're penny-pinching, but because they catch drift early.
Monthly review checklist:
- Top 5 services by cost—any surprises?
- Month-over-month change—why did it go up/down?
- Any new resources created?
- Savings Plan utilization—are you using what you bought?
The Action Plan
If you do nothing else, do these three things this week:
- Enable AWS Compute Optimizer — Takes 5 minutes, gives right-sizing recommendations
- Set up billing alerts — Prevents surprise bills
- Run a zombie hunt — Find and kill unused resources
These three actions alone typically save 15-25% within the first month.
Need Help With AWS Cost Optimization?
We've helped companies reduce their AWS bills by 40-60%—some by over $100,000 annually. If you're spending more than $5,000/month on AWS and suspect you're overpaying, let's talk.
Get a free AWS cost audit: info@cloudelevate.ai
What's your biggest AWS cost challenge? I'd love to hear about it.
Tagged with
Ready to elevate your cloud infrastructure?
Get a free consultation with our DevOps experts.