Case Study: Six-Figure Compute Saving Through VM Reservation and SKU Standardisation
At a glance
- Client type: Large government agency
- Problem: Fragmented VM estate with high pay-as-you-go compute spend.
- Finding: SKU rationalisation and reservation modelling identified substantial avoidable compute cost.
- Outcome: Six-figure compute saving with up to 64% savings over three-year reservations.
- Related service: Cloud cost optimisation / Azure VM strategy
Overview
A large government agency was running a broad Azure virtual machine estate with inconsistent compute purchasing and limited SKU standardisation.
Many virtual machines were still running on pay-as-you-go pricing, even though a significant portion of the workloads were stable, predictable, and suitable for reservations or compute savings plans. At the same time, virtual machines had been provisioned across a wide range of SKUs, often without clear alignment to workload requirements.
This created two problems.
First, the agency was paying higher pay-as-you-go rates for workloads that could have been committed under a more cost-effective model.
Second, the inconsistent use of VM SKUs made it harder to purchase and manage reservations effectively.
CloudQbit reviewed the compute estate, analysed spend patterns, validated Azure Advisor recommendations against real workloads, optimised non-production usage, standardised VM families, and helped establish a more deliberate reservation strategy.
The outcome was a six-figure compute saving, with projected savings of up to 64% over a three-year reservation period, while retaining a controlled level of pay-as-you-go flexibility for changing workloads.
The Challenge
The agency had a large number of Azure virtual machines provisioned across the tenant. Over time, the environment had grown organically, with virtual machines deployed using many different SKUs and sizes.
There was no consistent standard for which VM families should be used for different workload types. In many cases, the selected SKU did not clearly align with the application or service running on the VM.
This created a fragmented compute estate.
The agency had approximately 45 different VM SKUs in use across the tenant. That level of variation made it difficult to take full advantage of reservations, because reservations work best when compute usage is predictable and aligned to common VM families or sizes.
A significant amount of pay-as-you-go compute spend was still occurring, even where workloads were stable enough to be reserved.
The challenge was not simply to buy reservations. Buying reservations without first understanding the environment could have locked the agency into the wrong commitment.
The real challenge was to answer:
| Question | Why it mattered |
|---|---|
| Which workloads are stable enough to reserve? | Reservations only work when usage is predictable |
| Which VMs should remain flexible? | Some workloads need pay-as-you-go flexibility |
| Which SKUs are actually required? | Random SKU usage reduces reservation efficiency |
| Are non-production VMs always required to run? | Lower environments often contain avoidable compute waste |
| Are Advisor recommendations valid? | Recommendations need to be checked against business and technical context |
| Who will manage reservations after purchase? | Savings need ongoing governance, not one-off buying |
Why Reservations Alone Were Not Enough
Azure reservations and compute savings plans can deliver major savings, but they should not be treated as a simple purchasing exercise.
If reservations are bought before the environment is cleaned up, the organisation may commit to unnecessary or poorly matched compute. That can reduce flexibility and create future waste.
In this case, CloudQbit identified that optimisation needed to happen before commitment.
The agency first needed to understand:
- Which VMs were actually required
- Which workloads were stable
- Which non-production systems could be stopped or scheduled
- Which VM families should be standardised
- What percentage of the estate should remain pay-as-you-go
- How reservation usage would be monitored after purchase
This shifted the approach from:
to:
That difference was critical.
Investigation Approach
CloudQbit started by analysing Azure compute spend across the tenant to identify how much cost was still being charged on pay-as-you-go pricing.
The review confirmed that a meaningful portion of the VM estate was not covered by reservations or savings plans, even though many workloads appeared stable and long-running.
The next step was to review Azure Advisor recommendations and compare them against the actual environment. This included matching recommendations to current workloads, reviewing VM counts, and calculating potential reservation coverage.
However, Advisor recommendations were not accepted blindly. They were used as an input, then validated against operational context.
CloudQbit also reviewed non-production environments. This was important because buying reservations for inefficient lower environments would have preserved waste rather than eliminating it.
The non-production review identified virtual machines with very low or no apparent use, including systems that were rarely accessed or not actively used. These were candidates for shutdown schedules, resizing, decommissioning, or further business review.
Only after this cleanup and validation did the reservation planning become meaningful.
Root Cause
The root cause was an unmanaged and fragmented compute estate.
Virtual machines had been created over time using a wide range of SKUs, often based on immediate project needs or deployment defaults rather than a standardised compute strategy.
This resulted in:
| Issue | Impact |
|---|---|
| High pay-as-you-go usage | Higher monthly compute cost |
| Too many VM SKUs | Lower reservation efficiency |
| Weak workload-to-SKU alignment | Over-provisioning or inconsistent sizing |
| Underused non-production VMs | Waste before any reservation purchase |
| Limited reservation governance | No clear process for ongoing review |
| Lack of team enablement | Reservations were not fully embedded into operational practice |
The agency had an opportunity to reduce compute cost significantly, but only if the estate was rationalised before financial commitments were made.
Actions Taken
CloudQbit used a staged approach: analyse, optimise, standardise, reserve, and govern.
| Area | Action |
|---|---|
| Spend analysis | Identified ongoing pay-as-you-go compute spend across the tenant |
| Advisor review | Analysed Azure Advisor reservation recommendations |
| Workload validation | Matched recommendations against current workloads and VM counts |
| Business engagement | Discussed reservation coverage targets and required pay-as-you-go flexibility |
| Non-production review | Analysed lower environments for low utilisation and unused VMs |
| Waste reduction | Scheduled shutdowns and reviewed underused non-production systems before purchasing commitments |
| SKU standardisation | Reduced VM SKU spread from approximately 45 SKUs to around 10 VM families |
| Reservation planning | Built a reservation approach aligned to standard VM families and workload stability |
| Flexibility planning | Left approximately 15% of VMs on pay-as-you-go for operational flexibility |
| Governance | Established a process to review reservation utilisation and coverage |
| Team enablement | Trained the team on reservation management, views, and ongoing monitoring |
The key principle was to avoid committing to the existing state until waste and fragmentation had been addressed.
Business Outcome
The work delivered a six-figure compute saving for the agency.
By reducing SKU fragmentation, optimising non-production usage, and aligning reservations to stable workloads, the agency was able to reduce compute costs by up to 64% over a three-year period for the covered workloads.
The final model also preserved flexibility. Around 15% of VMs remained on pay-as-you-go, allowing the agency to support changing workloads, short-term requirements, and services that were not suitable for long-term commitment.
The outcome included:
| Area | Outcome |
|---|---|
| Cost reduction | Six-figure compute saving |
| Reservation impact | Up to 64% saving over a three-year reservation period for covered workloads |
| SKU rationalisation | Reduced approximately 45 VM SKUs into around 10 VM families |
| Flexibility | Maintained around 15% pay-as-you-go capacity |
| Non-production optimisation | Shutdown schedules and review process for lower environments |
| Governance | Ongoing reservation utilisation and coverage review |
| Team capability | Improved internal understanding of reservation management |
The saving was not achieved by simply purchasing reservations. It was achieved by preparing the environment so reservations could be used effectively.
The Mindset Shift
This case highlights a common compute cost problem.
Many organisations treat reservations as a finance or procurement decision. In reality, reservations are most effective when they are supported by engineering discipline.
The old mindset was:
The better approach was:
| Old mindset | Better mindset |
|---|---|
| “Buy reservations to reduce VM cost.” | “Optimise the estate before committing to reservations.” |
| “Any long-running VM should be reserved.” | “Only stable, right-sized, required workloads should be reserved.” |
| “VM SKU choice is a deployment detail.” | “SKU choice affects long-term cost and reservation efficiency.” |
| “Non-production cost is just part of delivery.” | “Lower environments should be scheduled, reviewed, and governed.” |
| “Advisor says buy reservations.” | “Advisor recommendations should be validated against real workload context.” |
| “Reservations are a one-off purchase.” | “Reservations require ongoing utilisation and coverage management.” |
This mindset helped the agency move from reactive cost reduction to structured compute cost governance.
Why This Matters
Virtual machines are often one of the largest and most persistent cloud cost areas in enterprise environments.
Without strong standards, VM estates can become fragmented over time. Different projects deploy different SKUs, non-production systems run continuously, and pay-as-you-go spend continues even for predictable workloads.
Reservations and savings plans can reduce costs significantly, but only when the environment is ready.
A mature compute optimisation review should ask:
- Which VMs are still pay-as-you-go?
- Which workloads are stable enough to reserve?
- Which VMs need flexibility?
- Are non-production VMs running when they do not need to?
- Are VM SKUs aligned to workload requirements?
- Can VM families be standardised?
- Are Advisor recommendations accurate in the real operational context?
- Who reviews reservation utilisation after purchase?
These questions help avoid the mistake of buying commitments against an inefficient or fragmented estate.
Conclusion
This case study demonstrates how structured FinOps and engineering review can deliver major compute savings without reducing operational flexibility.
A government agency had a fragmented Azure VM estate, with many workloads still running on pay-as-you-go pricing and approximately 45 different VM SKUs in use across the tenant.
CloudQbit analysed the spend, reviewed Advisor recommendations, validated workloads, optimised non-production environments, introduced shutdown schedules, rationalised VM families, and helped define an appropriate reservation and pay-as-you-go balance.
The agency reduced VM SKU complexity from approximately 45 SKUs to around 10 VM families, retained approximately 15% pay-as-you-go flexibility, and achieved a six-figure compute saving, with up to 64% savings over a three-year reservation period for covered workloads.
The lesson is simple:
This is the type of practical cloud cost optimisation CloudQbit focuses on: cost analysis, engineering validation, business alignment, and measurable financial outcomes.