How it took us just 12 months to save $800k in AWS costs
Share on socials
How it took us just 12 months to save $800k in AWS costs

Dan Chalk
Published on 3 October 2025
11 min read


Dan Chalk
Published on 3 October 2025
11 min read
Jump to section
Jump to section
The solution: strategic FinOps implementation
Creating visibility through a single pane of glass
Rightsizing services
Eliminating idle resources
Maximising savings plans
The impact
Key lessons for tech leaders
The bottom line
Get in touch
As our cloud usage soared, we needed to reduce costs without sacrificing performance. Discover the four FinOps steps we implemented to optimise spending—and the key lessons we learned along the way.
Our cloud infrastructure had grown rapidly as we scaled, and we needed a solution to cut costs without compromising performance. Find out the four FinOps steps we took to transform our cloud spend.
Like many growing companies, Adaptavist's AWS infrastructure was scaling rapidly, but this caused costs to increase; a common problem that often turns cloud infrastructure from a strategic advantage into a financial burden.
Our cost challenges stemmed from:
- Multiple business units are operating independently without centralised cloud governance
- No patterns across the organisation, with each team implementing infrastructure differently
- Rapid growth that outpaced our ability to establish consistent cloud practices
This created a perfect storm: teams were provisioning resources without visibility into costs, using different approaches and tools, and scaling infrastructure faster than we could optimise it.
We needed a solution that would control spending without compromising performance or innovation. With a savings target of $1m (USD) by the end of our financial year, we had to move quickly and systematically.
The solution: strategic FinOps implementation
We embraced FinOps principles, focusing on four core areas that delivered the biggest impact:
- Implement CloudZero to provide real-time cost visibility
- Take a systematic, data-driven approach to rightsizing
- Eliminate any idle resources
- Make the most of AWS Savings Plans significant discounts
Rather than implementing these approaches sequentially, we executed them in parallel across multiple business units.
Each business unit had dedicated champions driving dashboards, rightsizing, idle resource cleanup, and savings plan optimisation simultaneously, working closely with our platform team for enablement and support. This collaborative, distributed approach accelerated our progress and ensured buy-in from teams who felt ownership of their optimisation efforts.
Creating visibility through a single pane of glass
Before we could optimise anything, we needed to see what we were spending and where. Like many organisations, we were flying blind when it came to cloud costs. Teams were provisioning resources without understanding the financial impact, and our finance team had no way to allocate costs back to the business units responsible for them.
We implemented CloudZero to provide real-time cost visibility across all AWS accounts and services. The key to making this work was our tagging strategy: we encouraged teams to tag their resources first, while we tagged accounts at the organisational level. In CloudZero, we layer resource and account-level tags, allowing for multitenant account flexibility.
This approach allowed each business unit to view its costs clearly while maintaining the flexibility to segment data further based on its own specific needs. Crucially, when resources lacked tags, the account owner became the allocated payer, ensuring that no costs fell through the cracks. This created a natural incentive for business units to correct allocations and maintain proper tagging practices.
The transformation was immediate. For the first time, we had complete transparency into cloud spending, enabling data-driven decision-making across all business units. Teams could finally see the cost impact of their infrastructure choices, and our finance team could accurately allocate cloud costs back to the responsible business units. This visibility didn't just improve reporting – it fundamentally changed behaviour.
Rightsizing services
Most organisations over-provision resources "just to be safe", leading to massive waste. We discovered this was happening across our entire infrastructure. Teams were spinning up large instances "just in case" and leaving them running indefinitely, often using only a fraction of the allocated resources.
We took a systematic, data-driven approach to rightsizing. Our comprehensive audit of all AWS services and utilisation patterns revealed significant opportunities for optimisation. We implemented automated monitoring to track resource usage over time. Then we began gradual rightsizing with careful performance validation.
Key wins:
- Rightsized production RDS instances: $115/month saved
- Downscaled EKS nodes in development accounts: $5,315/month saved
- Optimised EFS throughput with new Helm charts: $950/month saved
- Rightsized EC2 instances across multiple environments: $8,200/month saved
- Optimised Lambda function memory allocation: $1,800/month saved
- Downscaled OpenSearch clusters: $2,860/month saved
- Rightsized ElastiCache clusters: $1,200/month saved
Result: 4% cost reduction while maintaining performance standards.
Eliminating idle resources
Idle resources running 24/7 were one of our biggest cost drains. We discovered entire environments running continuously that were only used during business hours, development servers left running over weekends, and test databases that hadn't been accessed in months. The waste was staggering.
We implemented automated scheduling for non-production environments, ensuring that development and testing resources ran only when needed. Auto-scaling policies based on actual demand replaced static provisioning, while regular cleanup procedures removed unused snapshots, volumes, and other resources.
Major cleanups:
- Unused AWS accounts: $4,245/month saved
- Removed unused EKS clusters: $3,620/month saved
- Deleted unused analytics databases: $7,240/month saved
- Eliminated duplicate CloudTrails: $500/month saved
- Shut down idle development environments: $6,800/month saved
- Removed unused EBS volumes and snapshots: $2,100/month saved
- Deleted abandoned load balancers and NAT gateways: $1,900/month saved
- Cleaned up unused S3 buckets and objects: $1,200/month saved
Result: 5% reduction in idle resource costs, particularly in development and testing.
Maximising savings plans
AWS Savings Plans offer significant discounts, but many organisations choose the wrong commitment levels or fail to utilise them at all. We were no exception – our initial approach was haphazard, with some teams buying Reserved Instances they never fully utilised, while others paid full on-demand rates for predictable workloads.
We analysed historical usage patterns thoroughly to understand our actual resource consumption. This analysis revealed opportunities for significant savings through a strategic mix of Compute and EC2 Instance Savings Plans. We also established regular review and adjustment processes to ensure our commitments matched our evolving needs.
Notable implementations:
- Reserved RDS instances for core applications: $2,500/year saved
- Strategic Savings Plans implementation: $26,346/month saved
- Switched to Spot instances for CI/CD workloads: $13,200/month saved
- Reserved EC2 instances for predictable workloads: $8,500/month saved
- Optimised Reserved Instance utilisation: $4,200/month saved
- Implemented Compute Savings Plans for variable workloads: $12,800/month saved
Result: 13% additional savings on committed workloads while maintaining flexibility.
The impact
To track progress towards our $1m financial year target, we calculated savings by multiplying any waste reduction or cost optimisation by the number of months remaining in the financial year. This approach captured ongoing monthly savings from eliminating unused resources (which would have continued costing us) and rightsizing services, providing a comprehensive view of our financial impact.
The numbers tell the story: $800,000 saved in 12 months with no impact on our service performance.
Notable wins:
- Eliminated entire unused AWS accounts: $4,245/month
- Decommissioned legacy analytics platform: $7,240/month
- Optimised OpenSearch clusters: $2,860/month
- Switched to Spot instances: $13,200/month
- Rightsized EC2 instances across environments: $8,200/month
- Strategic Savings Plans implementation: $26,346/month
- Shut down idle development environments: $6,800/month
- Reserved instances for predictable workloads: $8,500/month
Achieved Beyond the immediate savings, we gained operational excellence, gaining better visibility into cloud spending, faster decision-making with real-time cost data, and enhanced collaboration between engineering and finance teams.
Key lessons for tech leaders
Our journey taught us several critical lessons that you can apply to your own FinOps initiatives.
Start with culture, not technology
We spoke to all teams to get buy-in for the FinOps project and explained why it was important to the business as a whole. We provided training and communicated with them extensively before we acted. This cultural foundation proved essential when we needed buy-in for changes that might initially seem inconvenient.
We spoke to all teams to get buy-in for the FinOps project and explained why it was important to the business as a whole. We provided training and communicated with them extensively before we acted. This cultural foundation proved essential when we needed buy-in for changes that might initially seem inconvenient.
Make data-driven decisions
Every optimisation was backed by a comprehensive analysis. We implemented detailed monitoring before making changes, ensuring we had baseline data to measure against. This approach prevented us from making changes that looked good on paper but had unintended consequences in practice.
Every optimisation was backed by a comprehensive analysis. We implemented detailed monitoring before making changes, ensuring we had baseline data to measure against. This approach prevented us from making changes that looked good on paper but had unintended consequences in practice.
Iterate gradually
Rather than sweeping changes, we validated each optimisation before moving to the next. This cautious approach might seem slow, but it prevented costly mistakes and built confidence across the organisation. Teams were more willing to embrace changes when they could see the positive results from previous optimisations.
Rather than sweeping changes, we validated each optimisation before moving to the next. This cautious approach might seem slow, but it prevented costly mistakes and built confidence across the organisation. Teams were more willing to embrace changes when they could see the positive results from previous optimisations.
Monitor continuously
Cost optimisation is an ongoing discipline, not a one-time project. We established regular review cycles and continuous monitoring to ensure our optimisations remained effective as our infrastructure evolved. This discipline has become part of our operational DNA.
Cost optimisation is an ongoing discipline, not a one-time project. We established regular review cycles and continuous monitoring to ensure our optimisations remained effective as our infrastructure evolved. This discipline has become part of our operational DNA.
The bottom line
$800k in savings proved that FinOps works – we got engineering and finance teams working together on cloud costs. The key was making cost optimisation everyone's responsibility, not just the platform team's problem to solve.
Please note: all figures in USD
You could save big too
What we did wasn’t rocket science, just a simple set of FinOps strategies to transform our cloud infrastructure – and make some big savings along the way. And you can do the same! Contact our team of experts today to find out how you can cut costs quickly and systematically without compromising performance or stifling innovation.
Get in touch.
Get in touch.
As our cloud usage soared, we needed to reduce costs without sacrificing performance. Discover the four FinOps steps we implemented to optimise spending—and the key lessons we learned along the way.
Written by

Engineering Manager
With over 15 year's experience in product teams and consulting across private and public sectors, Daniel leads teams specialising in platform and data engineering, helping clients achieve their goals.