Azure Cost Management: Estimate, Monitor, and Reduce Cloud Spend
Azure cost management is how you estimate, track, and lower what you spend running resources in the cloud. Because Azure bills on consumption, your monthly cost depends on choices you make: which services and tiers you run, how long they run, which region you deploy to, how much data leaves a region, what your subscription offer includes, and whether you clean up what you no longer need. For AZ-900 you need to recognize those cost factors and match each tool to the right moment: the Azure pricing calculator estimates a design before anything is deployed, and Microsoft Cost Management reports on and controls actual spend once resources are running, through cost analysis, budgets, and cost alerts. You also need to know the main ways to pay less (reservations, savings plans for compute, Spot Virtual Machines, Azure Hybrid Benefit, right-sizing) and how tags let you allocate spending to the teams and projects that own it. Note that the older Total Cost of Ownership (TCO) calculator has been retired and is no longer part of the skills outline.
On this page8 sections
- What affects your Azure costs
- How network traffic is billed
- Estimate before you deploy: the Pricing Calculator
- Pricing Calculator vs Microsoft Cost Management
- Track actual spend with Microsoft Cost Management
- Ways to reduce your Azure bill
- Organize costs with tags
- Worked example: pricing and controlling a workload
- Identify the factors that affect Azure costs: resource type, consumption, maintenance, geography, network traffic, subscription type, and Azure Marketplace.
- Explain what the pricing calculator does and why using it never deploys or charges anything.
- Describe how Microsoft Cost Management uses cost analysis, budgets, and cost alerts to monitor and control actual spend.
- Distinguish a budget from a spending limit and explain how a budget can trigger automation.
- Choose between reservations, savings plans for compute, Spot VMs, Azure Hybrid Benefit, and right-sizing for a given workload.
- Describe how tags allocate costs, why they are not inherited, and how Azure Policy applies them consistently.
What affects your Azure costs
Several factors decide what an Azure workload costs, chiefly the resource type, consumption, maintenance, geography, network traffic, the subscription type, and any Azure Marketplace purchases. Azure uses a consumption-based model, so the bill reflects what you provision and use rather than a fixed fee.
- Resource type. Each service is metered differently, and its settings change the price: a larger VM size, a premium storage tier, or a higher database tier costs more than a smaller or lower one.
- Consumption. You pay for how much and how long you run. When you stop and deallocate a VM, its compute charges stop, but its disks keep billing because the storage still exists. A VM shut down only from inside the operating system is still allocated and keeps incurring compute charges. Committing to usage in advance (reservations, savings plans) lowers the unit price of consumption.
- Maintenance. Resources left behind keep costing money. Deleting a VM does not necessarily delete everything created with it: depending on the delete options chosen, its managed disks, network interface, and Standard public IP address may be left behind, and the disks and public IP continue to bill until you remove them. (The portal can delete the OS disk, NIC, and public IP with the VM, but command-line deletes and older VMs often detach them instead.) By contrast, network interfaces, network security groups, and the resource group itself carry no charge. Reviewing and removing orphaned resources is how you control this factor.
- Geography. Prices for the same service differ between regions, because power, labour, taxes, and fees differ by location. The same VM size can cost more in one region than another.
- Network traffic. See the next section: inbound data is generally free, outbound data is billed by billing zone.
- Subscription type. The offer you are on sets usage allowances and credits. An Azure free account, for example, comes with a starting credit and a period of limited free usage for popular services, while pay-as-you-go, enterprise, and CSP offers bill at their own rates, so two identical workloads can produce different bills.
- Azure Marketplace. Third-party solutions bought through the Marketplace, such as appliances or preconfigured software, add charges set by the vendor on top of the Azure resources they run on.
| Factor | What changes the cost |
|---|---|
| Resource type | Service, size, tier, and settings |
| Consumption | How much and how long it runs; commitments lower the rate |
| Maintenance | Leftover resources (disks, public IPs) that may outlive a deleted VM and keep billing |
| Geography | The region's price for the same service |
| Network traffic | Outbound transfer, priced by billing zone |
| Subscription type | Allowances, credits, and the offer's rates |
| Azure Marketplace | Vendor-set charges for third-party solutions |
Some things do not change what you pay: the number of tags on a resource and the resource group it sits in are organizational choices, not billable items.
How network traffic is billed
Inbound data transfer into Azure datacenters is generally free, while outbound data transfer (egress) is billed, and the outbound price depends on the billing zone the traffic leaves from. A billing zone is a geographical grouping of Azure regions used only for pricing; it is not an availability zone, which is a group of datacenters inside one region used for resilience.
Where the data goes matters too. Data moving within a single availability zone, or between services in the same region (for example a VM reading from a database next to it), generally carries no data transfer charge, although some networking features, such as virtual network peering, have their own per-GB charges. Data moving between regions is billed, and transfer between regions on the same continent costs less than transfer between continents. Data sent out to users on the internet is billed as egress.
| Transfer | Data transfer charge |
|---|---|
| Internet or on-premises into Azure | Generally free |
| Within one availability zone, or between services in one region | Generally none |
| Between regions on the same continent | Billed, at a lower rate |
| Between regions on different continents | Billed, at a higher rate |
| Azure out to the internet | Billed by billing zone |
The practical consequence: if a design needs a second region, choosing one on the same continent keeps replication traffic cheaper, and a cheaper VM price in a distant region can be offset by the cost of moving data there.
Estimate before you deploy: the Pricing Calculator
The Azure pricing calculator is a free web tool that estimates the cost of a planned configuration before you deploy it; using it never creates resources or charges your subscription. You add the services you intend to use, such as virtual machines, storage, and databases, then set options like region, tier, size, operating system, hours of use, and quantity. The calculator totals an estimated monthly cost.
Because the estimate is built from values you type in, it is a modelling tool: you can compare two designs, see how changing a region, tier, or purchase option (pay-as-you-go versus a reservation or savings plan) changes the price, and export or share the estimate for approval. Exporting an estimate does not save anything to your subscription, deploy resources, or lock in a price; prices are shown for planning only, and your actual rates depend on your agreement.
The older Total Cost of Ownership (TCO) calculator has been retired, and the AZ-900 skills outline now covers only the pricing calculator. For comparing an existing on-premises estate with Azure during a migration, Azure Migrate can build a business case.
Pricing Calculator vs Microsoft Cost Management
The pricing calculator and Microsoft Cost Management sit at opposite ends of the deployment timeline: the calculator estimates the cost of resources that do not exist yet, and Cost Management reports and controls the cost of resources that are already running.
| Aspect | Pricing calculator | Microsoft Cost Management |
|---|---|---|
| When you use it | Before deployment | After deployment |
| What it shows | Estimated cost of a proposed design | Actual and forecast cost of running resources |
| Data source | Values you enter by hand | Real usage and billing data from your subscriptions |
| Main purpose | Plan and budget a workload | Analyze, monitor, and control spend |
| Key features | Service picker, monthly estimate, export | Cost analysis, budgets, cost alerts, recommendations |
Read a scenario for whether the resources already exist: a design still on paper needs an estimate, while a running workload has real spend to analyze. Neither tool locks resources or enforces tagging rules; those are governance features (resource locks and Azure Policy).
Track actual spend with Microsoft Cost Management
Microsoft Cost Management is the Azure portal tool for analyzing, monitoring, and controlling actual Azure spend. Its three core capabilities are cost analysis, budgets, and cost alerts.
Cost analysis breaks spend down by subscription, resource group, service, region, or tag, and shows it over time, so you can see which services or groups drove a change in the bill and compare months side by side. This differs from Azure Advisor, which recommends savings such as resizing underused VMs, and from Azure Monitor, which reports performance metrics rather than cost.
Budgets set a spending amount for a scope such as a subscription or resource group, with alert thresholds (for example 80 or 90 percent). A budget on its own only notifies: when spend crosses a threshold, people are emailed, and resources keep running and charges keep accruing. To act automatically, attach an action group to the budget alert; the action group can run automation (for example an Azure Automation runbook or a function) that shuts down or resizes resources.
Cost alerts come in three types:
| Alert type | Fires when |
|---|---|
| Budget alert | Spend reaches a threshold you set on a budget |
| Credit alert | An Enterprise Agreement's prepaid credit (Azure Prepayment) is being consumed, at set percentages |
| Department spending quota alert | A department's spending reaches a quota set for it under an Enterprise Agreement |
A budget is not the same as a spending limit. A spending limit exists only on credit-based offers, such as the Azure free account and Visual Studio subscription credits; it is not available on pay-as-you-go. When the credit is used up, Azure disables the whole subscription (deployed resources are stopped and VMs deallocated) until the next billing period or until you remove the limit. A budget never disables anything by itself.
Ways to reduce your Azure bill
The ways to pay less fall into two groups: buy capacity more cheaply (reservations, savings plans, Spot, Azure Hybrid Benefit) or stop paying for capacity you do not need (right-sizing, autoscaling, deallocating, cleaning up). Each fits a different workload pattern.
| Option | What you commit or accept | Best fit |
|---|---|---|
| Azure Reservations | A 1- or 3-year commitment to specific resource capacity (for example one VM size in one region) | Stable, predictable, fixed capacity |
| Azure savings plan for compute | A 1- or 3-year commitment to a fixed hourly spend, applied automatically across eligible compute | Steady spend that shifts between sizes, regions, and compute services |
| Spot Virtual Machines | Use of unused capacity at a deep discount, but Azure can evict the VM when it needs the capacity | Interruptible work such as batch jobs, testing, rendering |
| Azure Hybrid Benefit | Reuse of Windows Server or SQL Server licenses you already own with Software Assurance (or qualifying subscriptions) | Windows or SQL workloads where you hold licenses |
A savings plan for compute covers more than VMs: eligible services include Azure Virtual Machines, Azure Container Instances, Azure App Service (Premium v3 and Isolated v2), Azure Functions Premium, and Azure Dedicated Host. Microsoft's guidance is to use reservations for stable, fixed capacity (they usually give the deeper discount), a savings plan when steady spend moves between compute services or sizes, and Spot for work that tolerates interruption.
Discounts can stack. Azure Hybrid Benefit and a reservation reduce different parts of a Windows or SQL Server VM's price: Hybrid Benefit removes the software licence charge, and the reservation discounts the underlying compute. Using both together gives a lower price than either alone, without the interruption risk of Spot.
Right-size before you commit. A reservation, savings plan, or cheaper region lowers the price of capacity but still pays for capacity you do not use. If VMs sit at very low utilisation, only resizing them to fit the load removes that waste, so resize first, then buy a commitment for what remains. Other levers that reduce the bill: autoscaling so capacity is added only under load, deallocating VMs when they are idle, and deleting leftover disks and public IPs. Tags and budgets make spend visible but do not by themselves lower it.
Worked example: pricing and controlling a workload
A typical cost workflow runs estimate, deploy, analyze, then optimize. Suppose your team plans a web app on two VMs with a managed database, and leadership wants the cost before approving it. You build the design in the pricing calculator, choosing the VM sizes, database tier, storage, region, and hours, and export the estimate for approval. Nothing exists in Azure yet, and nothing is charged.
After approval you deploy and assign an Azure Policy that copies the resource group's Project and CostCenter tags onto every resource. In Microsoft Cost Management you create a budget on the resource group with alerts at 80 and 100 percent, and attach an action group that shuts down the test VMs if spend crosses the higher threshold.
A month later, cost analysis grouped by the Project tag shows the VMs averaging low CPU. You resize them first, then buy a 1-year reservation for the steady baseline, enable Azure Hybrid Benefit for the Windows VMs because you hold licences with Software Assurance, and delete the disks left behind by a VM you removed during testing.
Tip. Scenarios ask you to name a cost factor from a symptom (leftover disks still billing, a free-account credit, a regional price difference, egress), to separate estimating a planned design from analyzing real spend, and to know what a budget does and does not do compared with a spending limit. Pricing-option items turn on the workload pattern: fixed capacity versus shifting compute spend versus interruptible work, licences you already own, and fixing oversized VMs before committing. Tag items test allocating cost when resource groups are shared and the fact that tags are not inherited without Azure Policy.
- Azure costs depend on resource type, consumption, maintenance (leftover resources), geography, network traffic, subscription type, and Azure Marketplace purchases.
- Deallocating a VM stops its compute charges, but its disks keep billing; deleting a VM can leave disks and public IPs behind (depending on delete options), and they keep billing until removed.
- Inbound data is generally free; outbound data is billed by billing zone, and transfer between continents costs more than within one.
- The pricing calculator estimates a planned design and never deploys or charges anything; the TCO calculator is retired.
- Microsoft Cost Management provides cost analysis, budgets, and cost alerts (budget, credit, department spending quota) for actual spend.
- A budget only notifies unless an action group runs automation; a spending limit exists only on credit-based offers and disables the subscription.
- Reservations suit fixed capacity, savings plans suit steady spend across compute services, Spot suits interruptible work; Hybrid Benefit stacks with reservations.
- Tags allocate costs but are not inherited; Azure Policy can add a resource group's tag to its resources.
Frequently asked questions
What does the Azure pricing calculator do?
The Azure pricing calculator estimates the monthly cost of a planned set of Azure services from options you choose, such as region, tier, size, and hours of use. It is a planning tool only: nothing is deployed, nothing is charged, and exporting an estimate does not lock prices or save anything to a subscription.
Is the Azure TCO calculator still available?
No. Microsoft has retired the Total Cost of Ownership (TCO) calculator, and the AZ-900 skills outline now covers only the pricing calculator. For comparing an on-premises estate with Azure during a migration, Azure Migrate can build a business case.
Does an Azure budget stop resources when it is exceeded?
Not by itself. An Azure budget in Microsoft Cost Management sends alerts when spend crosses its thresholds, and resources keep running and accruing charges. To shut down or resize resources automatically, attach an action group to the budget alert that runs automation, such as a runbook or function.
What is the difference between an Azure budget and a spending limit?
A budget is a Cost Management threshold that sends alerts and can trigger automation, and it can be set on any subscription. A spending limit exists only on credit-based offers such as the Azure free account and Visual Studio credits, not pay-as-you-go; when the credit runs out it disables the whole subscription until the next billing period or until the limit is removed.
When should I use Azure Reservations instead of a savings plan for compute?
Use Azure Reservations for stable, fixed capacity, such as one VM size in one region running for one or three years, because they usually give the deeper discount. Use an Azure savings plan for compute when steady hourly spend moves between VM sizes, regions, or services such as Azure Container Instances and App Service Premium v3.
Do I still pay for a stopped Azure virtual machine?
If the VM is stopped and deallocated, its compute charges stop, but its managed disks keep billing because the storage still exists. A VM shut down only from inside its operating system remains allocated and keeps incurring compute charges. Deleting the VM may leave its disks and Standard public IP behind, depending on the delete options chosen, and those keep billing until you remove them.
Do Azure resources inherit tags from their resource group?
No. Tags on a subscription or resource group are not automatically applied to the resources inside it. Azure Policy, for example the built-in policy that inherits a tag from the resource group if missing, adds the tag to the resources themselves. Cost Management's tag inheritance setting applies the tags to usage records for reporting only.
How does network traffic affect Azure costs?
Inbound data transfer into Azure is generally free, and traffic within one availability zone or between services in the same region generally has no transfer charge. Outbound data transfer is billed by billing zone, a pricing grouping of regions, and moving data between continents costs more than moving it between regions on the same continent.
Source
This lesson covers the "Describe Azure management and governance" domain of the official AZ-900 exam guide. Vendors revise their guides — check the source for the current version.
- Microsoft AZ-900 study guide — Microsoft Learn
Sign up free to mark lessons complete, bookmark topics and track your exam readiness.