Cloud Cost Optimisation: How to Cut Your AWS and Azure Bill
Cloud bills come down when you can see who is spending what, switch off idle resources, right-size what remains and commit to discounts only for steady workloads. FinOps practices such as tagging, budgets and shared accountability keep savings from eroding.
Written and reviewed by The Technology Office ยท Independent technology advisory
Key takeaways
- Visibility comes first: without consistent tagging and cost allocation, nobody can be held accountable for cloud spend.
- Eliminate before you optimise. Idle, orphaned and forgotten resources are the cheapest savings because nothing needs to change except deletion.
- Right-size before you commit. Buying savings plans or reservations for oversized workloads locks in waste for one to three years.
- Cloud cost is an ongoing operating discipline, not a project. Budgets, alerts and a monthly review between finance and engineering keep spend aligned with value.
The short answer
Cloud bills fall when every resource has an owner, idle resources are switched off, the rest are right-sized, and commitment discounts are bought only for workloads that are stable. The order matters: tag and allocate, eliminate, right-size, then commit. Without an ongoing FinOps rhythm between finance and engineering, most savings drift back within a few quarters.
Why are cloud bills so hard to control?
Cloud turns infrastructure from a capital purchase into a meter that never stops running. Anyone with the right permissions can spin up a server, database or storage account in minutes, and it keeps billing until someone turns it off. The pricing models of AWS and Microsoft Azure are also genuinely complex, with charges for compute, storage, data transfer, licensing and managed services spread across hundreds of line items.
The result in many Australian organisations is a monthly invoice that finance cannot interpret and engineering does not feel responsible for. Fixing that gap is the foundation of every other saving.
Step 1: Make spend visible and accountable
Before cutting anything, you need to know who is spending what and why.
- Define a tagging standard. At minimum: owner, application, environment (production, test, development) and cost centre.
- Enforce it. Use AWS tag policies or Azure Policy to require tags on new resources, and report on untagged spend.
- Use native tools. AWS Cost Explorer and Azure Cost Management both break spend down by service, account or subscription, and tag.
- Set budgets and alerts per application or team, so overspend is noticed in days rather than at the end of the quarter.
- Show costs back to owners. Even without formal chargeback, a monthly cost report per team changes behaviour.
Step 2: Eliminate idle and orphaned resources
This is the cheapest saving because nothing needs re-engineering. Common culprits:
| Resource | Why it lingers | What to do |
|---|---|---|
| Unattached disks and volumes | Left behind when servers are deleted | Snapshot if needed, then delete |
| Old snapshots and backups | No retention policy | Apply lifecycle and retention rules |
| Unused public IP addresses | Reserved and forgotten | Release them |
| Idle load balancers and gateways | Projects ended, infrastructure stayed | Decommission after owner confirmation |
| Test and development environments | Running around the clock | Schedule shutdown outside business hours |
| Over-retained logs | Default settings keep everything | Set retention to match actual need |
Scheduling non-production environments to run only during working hours on weekdays removes a large share of their running hours without affecting anyone.
Step 3: Right-size what remains
Many workloads were sized at migration for a peak that never arrived, or copied across from on-premises servers that were themselves oversized.
- Review utilisation for CPU, memory and storage over at least a month, using AWS Compute Optimizer or Azure Advisor recommendations as a starting point.
- Downsize or change instance families where utilisation is consistently low. Newer generations often deliver better price performance.
- Use autoscaling for workloads with variable demand rather than sizing permanently for the peak.
- Move storage to the right tier. Infrequently accessed data belongs in cooler or archive tiers, with lifecycle policies doing the moving automatically.
- Check licensing. Running Windows Server or SQL Server licences inefficiently can cost as much as the compute itself; options such as bringing existing licences or consolidating databases are worth assessing.
Test each change in a non-production environment first, and agree a rollback plan for anything customer-facing.
Step 4: Commit only to steady workloads
Both providers discount heavily in exchange for commitment. AWS Savings Plans commit you to an hourly spend level across eligible compute, while Azure Reservations commit to specific resources, alongside an Azure savings plan for compute.
The rule is simple: right-size first, then commit. Buying a three-year commitment for an oversized workload simply guarantees the waste. A sensible approach is to cover your reliable baseline with commitments, leave variable demand on demand, and review coverage and utilisation every month. Spot or low-priority capacity can suit fault-tolerant batch jobs.
Step 5: Look at architecture and data transfer
Once the obvious savings are taken, the next layer is design. Data transfer between regions or out to the internet, chatty integrations, and services that run continuously when they could be event-driven all add cost. Keeping workloads and data in the same Australian region, caching content, and replacing always-on servers with managed or serverless services where it fits can lower the bill structurally. These are bigger decisions that belong in a broader technology and systems transformation conversation rather than a quick clean-up.
Step 6: Build a FinOps rhythm
The FinOps Foundation describes FinOps as a practice that brings finance, technology and business together to maximise the value of cloud. For a mid-sized business that does not need a dedicated team, it can be as simple as:
- A monthly 45-minute review of spend against budget by application, attended by finance and the technical owner.
- A short list of agreed actions with owners and dates.
- A quarterly review of commitment coverage and upcoming expiries.
- Cost as a design criterion for every new project, estimated before build.
This matters for growing businesses in particular; our article on scaling tech infrastructure without full-time hires covers how to do this without building a large internal team.
What not to sacrifice
Do not cut backups, disaster recovery, security logging or redundancy for critical systems just to reduce the bill. Make deliberate decisions about recovery time and recovery point objectives, document them, and size resilience to match. A cheaper environment that cannot recover from an outage or cyber incident is not a saving.
How The Technology Office helps cut cloud costs
The Technology Office brings a CIO and CTO-level view to cloud spend: we read the bill line by line, connect each cost to an application and business owner, and recommend changes ranked by saving and risk. As an independent adviser, we do not resell cloud, take provider incentives or manage your infrastructure for a margin, so our advice is aimed only at the lowest sensible cost for your business.
We work with organisations of every size and industry across Australia, alongside your internal team or managed service provider, and we protect security and critical systems throughout. Cloud reviews are a core part of our IT cost optimisation service, and our fractional CTO advisers can stay on to embed the FinOps rhythm.
Frequently asked questions
What is the quickest way to reduce cloud costs?
Find and remove idle resources: unattached disks, old snapshots, unused IP addresses, stopped but still-billed services and forgotten test environments. Scheduling non-production environments to shut down outside business hours is another fast win.
What is the difference between AWS Savings Plans and Azure Reservations?
Both offer discounted rates in exchange for a one- or three-year commitment. AWS Savings Plans commit to a level of hourly spend across eligible compute, while Azure Reservations typically commit to specific resource types in a region, and Azure also offers a savings plan for compute.
What is FinOps?
FinOps is an operating practice that brings finance, technology and business teams together to manage cloud spend, so engineers can see the cost of their decisions and the business can maximise value from cloud. It focuses on visibility, optimisation and continuous governance rather than one-off savings.
Is moving back from the cloud to on-premises cheaper?
Sometimes, for very stable and predictable workloads, but it brings hardware, data centre, staffing and resilience costs that are easy to underestimate. Most organisations save more by optimising their existing cloud use before considering repatriation.
How much can cloud cost optimisation save?
It depends entirely on how the environment has been built and managed, so any figure quoted without looking at your billing data is a guess. The way to find out is to analyse the bill line by line against utilisation and architecture.
Sources and further reading
- What is FinOps? โ FinOps Foundation
- Savings Plans โ Amazon Web Services
- What are Azure Reservations? โ Microsoft Learn
Mentioned services
These service and regional NSW pages expand on the topics covered in this article.
Need help applying this?
Bring in senior technology leadership without the full-time overhead.
The Technology Office works with Sydney and regional NSW businesses on embedded CIO support, Head of IT leadership, governance, vendor management, cost optimisation, crisis stabilisation, and no-cost technology reviews as a lighter first step.