Bridging the gap between academic research and real-world solutions

In the pursuit of scientific advancement, the journey from theoretical research to tangible solutions is often fraught with challenges.

Written by

Joshua Ashton

Insight

2 Oct 2026

4 min read

Post Image

Azure Cost Optimisation: 12 Common Areas of Wasted Spend

When an Azure bill rises, the most useful question is not always, “Can we get a better price?”

It is often:

“Which parts of this environment still deliver value — and which simply continue to generate charges?”

In our previous article, Azure Cost Optimisation Starts with Governance, Not Discounts, we explored why visibility, ownership and workload requirements should come before commercial commitments. Symposium IT

This article turns that principle into a practical review of 12 potential sources of unnecessary Azure expenditure.

These are areas to investigate, not automatic instructions to delete or downgrade resources. Low utilisation can be intentional, particularly where infrastructure supports disaster recovery or anticipated demand. Microsoft Learn

The objective is to remove genuine waste without weakening the services your business depends on.

1. Oversized virtual machines

A virtual machine may have been sized for an initial migration, an anticipated workload or a temporary increase in demand. That original specification should not become a permanent assumption.

Azure Advisor can recommend resizing or shutting down underutilised virtual machines. However, its recommendations still need to be assessed against the application’s requirements and any existing commercial commitments. Microsoft Learn

Review CPU, memory, disk performance and network demand over a representative period. Include month-end processing, scheduled jobs and seasonal peaks rather than relying on a quiet week.

First action: Select your highest-cost virtual machines and compare their provisioned capacity with actual workload demand. Test proposed changes with the application owner before implementing them.

2. Development and test environments running continuously

Ask whether every non-production environment genuinely needs to operate around the clock.

A development system used during working hours may not need the same operating schedule as a customer-facing production application. Equally, an environment may support overnight testing or international teams, so the schedule needs an owner.

For Azure virtual machines, there is an important billing distinction: shutting down the guest operating system can leave the VM Stopped (Allocated) and still billed. Deallocation stops the VM’s compute meter, although disks and some networking resources can continue to incur charges. Microsoft Learn

First action: Agree operating hours for suitable non-production workloads, automate their schedules and verify that the intended billing state is actually being reached.

3. Unattached disks and forgotten snapshots

Unattached managed disks can continue to generate storage costs. Snapshots can also remain after their original purpose, or even their source disk, has disappeared. Microsoft’s Cost Optimisation workbook includes checks for both. Microsoft Learn

However, unattached does not mean unnecessary. A disk or snapshot may still be required for recovery, investigation or a planned migration.

First action: Establish the owner, purpose and retention requirement for each candidate. Remove it only after confirming that the data is no longer required and obtaining the appropriate approval.

4. Data stored on the wrong access tier

Storage optimisation is not simply a question of how much data you hold. How frequently that data is accessed also matters.

Azure Blob Storage offers different access tiers. Cooler tiers can reduce storage costs, but introduce trade-offs around access charges, minimum retention periods and, for archived data, retrieval time. Moving data without understanding those trade-offs can create additional costs rather than savings. Microsoft Learn

An old export that is rarely accessed should not automatically have the same storage configuration as an actively used application dataset.

First action: Review access patterns, retention requirements and retrieval expectations. Model the total cost before introducing lifecycle rules or moving data between tiers.

5. Over-provisioned databases

Database capacity deserves the same scrutiny as virtual machines.

Start by questioning whether the current capacity and service tier still match the application’s normal and peak requirements. Review query performance before assuming that buying more infrastructure is the only answer.

For intermittent workloads, Azure SQL Database serverless may be appropriate. It can scale compute and, where supported and configured, pause during inactivity. However, minimum compute settings, application behaviour and resume delays affect suitability, while storage remains chargeable during a pause. Microsoft Learn

First action: Review workload patterns with the database or application owner. Compare the current configuration with a rightsized alternative, including performance and availability requirements.

6. Underused or empty App Service plans

With dedicated Azure App Service tiers, billing is based on the underlying plan instances rather than simply whether a particular application is receiving traffic. Stopping a web app does not, by itself, remove those plan charges. Microsoft Learn

Microsoft also identifies empty App Service plans as a cost optimisation opportunity. Microsoft Learn

Where several lightly used applications have separate plans, consolidation may be worth assessing. However, applications sharing a plan also share its compute resources, so performance and isolation requirements matter. Microsoft Learn

First action: Map applications to their plans. Check for empty plans, excessive instance counts and opportunities to consolidate without creating capacity or isolation problems.

7. Excess Kubernetes capacity

Azure Kubernetes Service can support flexible scaling, but an environment still needs appropriate capacity settings.

Node-pool minimums, oversized workload resource requests and ineffective scaling configurations can leave more infrastructure running than the applications require. Microsoft’s AKS guidance recommends reviewing workload sizing alongside node and application autoscaling. Microsoft Learn

Do not assume that reducing application replicas will automatically produce a proportional reduction in the underlying infrastructure.

First action: Compare workload requests with actual consumption, review node-pool utilisation and examine whether scaling settings allow unnecessary capacity to be released safely. Preserve the headroom required for availability, maintenance and demand peaks.

8. Logging and telemetry nobody has reviewed

Logging is essential, but the collection and retention configuration should reflect a clear operational or security need.

Azure Monitor charges can include data ingestion, retention and export. Microsoft recommends reviewing collection volumes, table plans and retention settings as part of cost optimisation. Microsoft Learn

Useful questions include whether verbose diagnostic logging is still required, whether the same events are being collected unnecessarily in multiple places and whether every dataset needs the same retention period.

First action: Identify the highest-volume data sources and review them with the people responsible for monitoring, incident response and compliance.

Do not remove security visibility simply because a log source is expensive. Optimise unnecessary collection without undermining detection, investigation or evidence requirements.

9. Backup policies that no longer match the requirement

Backup expenditure should be assessed against an agreed recovery and retention requirement, not an arbitrary target for a smaller bill.

Review which systems are protected, how long recovery points are retained and whether the policies still reflect the importance and lifecycle of each workload. Microsoft provides guidance for reviewing retention as business requirements change. Microsoft Learn

Changes need particular care: reducing a retention period can cause older recovery points to be marked for deletion. Microsoft Learn

First action: Reconcile backup policies with recovery objectives, contractual obligations and approved retention requirements. Obtain approval before removing protection or reducing retention, and confirm that recovery remains achievable.

A cheaper backup configuration is not an improvement if it cannot restore what the business needs.

10. Network infrastructure left behind after a change

Network resources deserve a place in the review, particularly after migrations or application retirement.

Microsoft’s Cost Optimisation workbook highlights candidates such as Application Gateways and Standard Load Balancers with empty backend pools, unattached public IP addresses and idle virtual network gateways. Microsoft Learn

These are investigation signals, not proof that removal is safe. A resource might be reserved for recovery or referenced by another system.

First action: Trace each candidate’s dependencies and business purpose. Check DNS, connectivity and recovery requirements before approving any removal.

11. Unnecessary data movement

Cloud costs are influenced by where data travels as well as where it is stored.

Inter-region transfers and internet egress can incur charges. The applicable costs depend on the service, route and volume involved. Microsoft Azure

Review whether applications repeatedly transfer large datasets unnecessarily, whether processing could take place closer to the data, and whether a revised integration pattern could reduce avoidable movement.

This is an architectural review, not a reason to abandon a justified multi-region design.

First action: Identify significant data-transfer charges and map them to application flows. Assess alternatives against security, data residency, performance and resilience requirements before changing the architecture.

12. Underused commitments and overlooked licence benefits

Commercial optimisation needs regular attention after the purchase.

Review Reservation and Savings Plan utilisation, benefit scope and the consumption expected over the remaining term. A Savings Plan is an hourly commitment: unused benefit for an hour expires rather than rolling forward. Microsoft Learn

Separately, check whether existing licences qualify for Azure Hybrid Benefit. For Windows Server, eligibility depends on the applicable licensing programme and active Software Assurance or qualifying subscription licences. It should not be enabled without verifying entitlement. Microsoft Learn

First action: Reconcile commitments and licence benefits with the workloads that remain after usage optimisation. Review future demand before renewing or purchasing additional commitments.

Removing a resource does not automatically remove an existing commitment payment. That distinction matters when calculating the saving you expect to see on the invoice.

Turn the findings into an action plan

A list of recommendations is not the same as a reduction in expenditure.

For each opportunity, record the workload owner, current cost, proposed change, expected saving, implementation effort and operational risk. Identify who must approve the action and how the result will be verified.

Start with high-confidence opportunities where dependencies and business requirements are understood. Treat architecture changes, retention reductions and production rightsizing as controlled changes rather than quick housekeeping.

Be careful with projected savings. Microsoft notes that Azure Advisor’s VM savings estimates can use retail rates and may not account for existing Reservations or Savings Plans. The headline recommendation therefore needs to be reconciled with your actual commercial position. Microsoft Learn

Measure the outcome after implementation, accounting for changes in demand. A recommendation becomes a realised saving only when the relevant expenditure has genuinely been reduced.

Prevent the same waste from returning

Use each finding to identify a gap in normal operations.

An unnecessary disk should prompt a review of workload retirement. An oversized database should prompt a review of capacity management. A test environment running indefinitely should prompt a conversation about ownership and operating schedules.

Build these checks into deployment, change management and service retirement, rather than relying on occasional clean-up exercises.

The objective is not simply to produce a lower bill once.

It is to make unnecessary expenditure easier to detect, explain and prevent.

Understand where your Azure spend is going

Symposium IT’s Smart Cloud Health Check provides insight into cloud usage, wastage, security and optimisation opportunities, with findings and recommendations to help prioritise improvements. Symposium IT

That provides a starting point for deciding which resources need attention, which changes deserve further investigation and where better operational controls are required.

The aim is not to cut expenditure indiscriminately. It is to understand what the organisation needs, what it is paying for and where the two no longer align.

Speak to Symposium IT about reviewing your Azure environment.

Run better. Govern better. Spend deliberately.

Continue reading