skip to content

Where to Start Reducing Your AWS Spend

Written by: David Brookes | Sun Apr 06 2025

A laptop with code on its screen

Where to Start Reducing Your AWS Spend

One of my recent clients came to me overwhelmed: they were running a large-scale AWS deployment across multiple teams and had just been tasked with getting their ballooning cloud costs under control. Despite AWS offering some tools and guidance, they quickly found themselves lost in a maze of pricing models, unused resources, and unclear accountability.

Sound familiar? You’re not alone.

Whether you’re a startup scaling quickly or an enterprise managing sprawling infrastructure, AWS costs can spiral fast. But with the right process, you can rein it in. Here’s how I typically start when helping clients reduce their AWS spend.

1. Start With a Cost Audit

The first step is understanding exactly where your money is going.

  • Use AWS Cost Explorer & Detailed Billing Reports: Break down spend by service, account, and tag.
  • Enable Cost and Usage Reports (CUR): This gives you the raw data you’ll need to dig deep.
  • Set up AWS Budgets & Alerts: Know when things spike - before finance comes knocking.

This isn’t just about getting numbers - it’s about establishing visibility. Without it, you’re flying blind.

2. Tag Your Resources

In that client project I mentioned, one of the biggest issues was the lack of resource tagging. Without consistent, enforced tagging, it was impossible to assign costs to the right teams or projects.

  • Create a tagging policy and enforce it with Service Control Policies (SCPs) or AWS Organizations
  • Tag for Owner, Environment, Application, Cost Center, and Lifecycle
  • Use AWS Resource Groups & Tag Editor to audit and clean up tags

Tags aren’t just about organization - they’re essential for cost attribution, accountability, and smarter decision making.

3. Identify Idle and Underutilized Resources

You’d be shocked how many instances, volumes, and snapshots are sitting around doing nothing.

  • EC2 & RDS: Use Trusted Advisor or compute optimizer to flag underutilized instances.
  • EBS Volumes: Unattached volumes add up fast.
  • Elastic IPs, Load Balancers, NAT Gateways: These can quietly burn cash when left unmonitored.
  • Lambda: Review usage and consider function consolidation or moving low-frequency tasks elsewhere.

Set up automation where possible to shut down or deprovision idle resources.

4. Right-Size and Optimize Instances

AWS gives you a lot of flexibility - and just as many ways to overspend.

  • Right-size EC2 based on actual CPU, memory, and network usage
  • Leverage Savings Plans or Reserved Instances for predictable workloads
  • Use Spot Instances for batch or fault-tolerant jobs
  • Enable Auto Scaling to avoid over-provisioning

Use tools like Compute Optimizer and 3rd party solutions like CloudHealth or nOps to get smarter about right-sizing.

5. Watch for Hidden Costs

Some of the biggest expenses are buried in plain sight:

  • Data Transfer (Egress Fees): Moving data out of AWS (or even between regions or AZs) can be shockingly expensive.
  • API Gateway & Lambda: Great for small workloads - but can rack up quickly at scale.
  • Chained Services: Think Lambda -> API Gateway -> Step Functions -> DynamoDB. Each hop costs money.

In one project, we saved significantly by moving certain serverless workloads to Cloudflare Workers, which offered more predictable and lower pricing for APIs and edge functions.

6. Reconsider Your Architecture

AWS is great, but it’s not always the cheapest for every task.

  • Use Cloudflare for edge caching and serverless functions
  • Evaluate alternate container runtimes like Fly.io or Railway
  • Host static sites entirely on S3 or Cloudflare instead of EC2 or Kubernetes
  • Explore hybrid or multi-cloud models for specialized workloads

You don’t have to abandon AWS - but you can be smarter about what you run where.

7. Improve Visibility & Accountability

Make cost control part of your engineering culture:

  • Set up dashboards for cost monitoring per team or product
  • Hold monthly cost reviews
  • Reward teams for finding savings
  • Educate devs on how their architecture decisions impact costs

AWS offers Cost Categories, Budgets, and Billing Alerts - use them to keep everyone in the loop.

8. Negotiate With AWS

Don’t forget - you’re a customer. And AWS wants to keep you happy.

  • Work with your AWS account manager
  • Request volume discounts
  • Ask for credits if you’re moving workloads or piloting new services

Even at smaller scales, you can often negotiate better pricing or support terms.


Final Thoughts

Reducing AWS costs isn’t about penny-pinching - it’s about building a lean, efficient infrastructure that supports your business without waste. With a clear audit process, solid tagging, architectural review, and cost-aware culture, you’ll be in a far better position to optimize spending without sacrificing performance or security.

If you’re facing the daunting task of cloud cost control, I’m here to help. From one-off audits to ongoing support as a Fractional CTO or VP of Engineering, I help teams like yours turn AWS chaos into clarity - and savings.

[Reach out here] to start your AWS cost audit.