AZ-900Chapter 112 of 127Objective 3.1

Azure Budgets and Cost Alerts

This chapter covers Azure Budgets and Cost Alerts, two critical tools for managing cloud spending in Microsoft Azure. They fall under the 'Azure Management Governance' domain, which carries approximately 10-15% of the AZ-900 exam weight. Understanding these tools is essential for controlling costs and avoiding unexpected bills, a key responsibility for cloud administrators and architects. By the end of this chapter, you'll know how to create budgets, set alerts, and interpret cost data to keep your Azure usage within financial limits.

25 min read
Beginner
Updated May 31, 2026

Your Cloud Budget Like a Business Trip

Imagine you're planning a business trip and your company gives you a $5,000 travel budget. You don't want to accidentally spend $6,000, so you set a rule: 'If my spending hits $4,500, send me an email alert.' That's a budget with a cost alert. Now imagine you also set a hard cap: 'If I ever try to book a flight that would push total spending to $5,000, block the booking.' That's a budget with an action threshold. In Azure, a budget is a spending limit you define for a subscription, resource group, or service. Behind the scenes, Azure checks actual costs against your budget on a daily basis (or monthly, quarterly, yearly). When costs reach a percentage you set (e.g., 80%, 100%), Azure can trigger an email alert, invoke an action group, or even automate a response like shutting down resources. This mechanism is similar to a credit card's spending alert – but with more flexibility. The key is that Azure budgets are predictive, not just reactive: they use historical data to forecast your spend and alert you before you exceed your budget. Just like you'd want to know when you're near your travel budget limit before you're at the airport, Azure budgets give you early warnings so you can adjust your cloud usage before costs run away.

How It Actually Works

What Are Azure Budgets and Why Do You Need Them?

Azure Budgets are a feature within Azure Cost Management that allows you to set spending limits for Azure services. Think of them as financial guardrails: you define a maximum amount you're willing to spend over a specific period (monthly, quarterly, or yearly), and Azure monitors your actual and forecasted costs against that limit. When costs approach or exceed the budget, Azure can send alerts or trigger automated actions.

The business problem budgets solve is simple: cloud costs can spiral out of control if left unchecked. Without budgets, a developer might spin up expensive VMs, leave them running, and cause a surprise bill at the end of the month. Budgets give finance teams and administrators visibility and control, enabling proactive cost management rather than reactive damage control.

How Azure Budgets Work – Step by Step

1.

Define a budget scope: You can create a budget at the subscription, resource group, or management group level. You can also filter by specific services (e.g., only Virtual Machines) or tags (e.g., "Department: Marketing").

2.

Set the budget amount and period: Choose a monthly, quarterly, or yearly period. The budget amount is the total cost (or usage) you expect to stay under for that period.

3.

Configure alerts: You can set up to 5 alert thresholds per budget. Each threshold is a percentage of the budget (e.g., 50%, 80%, 100%, 120%). When actual costs or forecasted costs reach that percentage, Azure triggers an action.

4.

Define actions: Alerts can send email notifications to a list of recipients, or invoke an action group. Action groups can send SMS, voice calls, or trigger an Azure Automation runbook, Azure Function, or webhook. For example, you could have a budget alert that automatically shuts down non-critical VMs when spending hits 90%.

5.

View budget status: In the Azure portal, you can see a budget's current spend, forecasted spend, and alert history. You can also export budget data to a storage account or Power BI for further analysis.

Key Components and Tiers

Budget scopes: Subscription, resource group, management group. You cannot create a budget at the resource level (like a single VM) directly – you must use filters.

Budget types: Cost budgets (monitor spending) and usage budgets (monitor consumption like VM hours or storage GB). For AZ-900, focus on cost budgets.

Alert thresholds: Up to 5 per budget. Thresholds are based on percentage of budget (e.g., 50%, 80%, 100%, 120%). You can also set alerts based on forecasted cost.

Action groups: A reusable set of notification preferences (email, SMS, voice, webhook, Azure Automation, etc.). Action groups are shared across Azure Monitor alerts and budget alerts.

Budget reset: Monthly budgets reset at the start of each month. Quarterly and yearly budgets reset accordingly.

Azure Budgets are a free feature within Azure Cost Management – there is no additional cost to create or use budgets. However, action groups that send SMS or voice messages may incur charges based on your communication service plan.

On-Premises Equivalent

In an on-premises data center, you have a fixed capital expenditure for hardware and a predictable operational expenditure for power, cooling, and staff. There is no concept of a budget alert because costs are largely fixed. The equivalent would be a manual spreadsheet where you track purchase orders and invoices. Azure Budgets automate this tracking and provide real-time visibility, which is a major advantage of cloud cost management.

Azure Portal and CLI Touchpoints

Azure Portal:

Navigate to Cost Management + Billing > Cost Management > Budgets.

Click +Add to create a new budget.

You'll walk through a wizard: Scope, Name/Amount, Alert Thresholds, Actions.

Azure CLI:

# Create a budget with a monthly limit of $1000 and an email alert at 80%
az consumption budget create \
  --budget-name "MyMonthlyBudget" \
  --category cost \
  --amount 1000 \
  --time-grain monthly \
  --start-date 2024-01-01 \
  --end-date 2024-12-31 \
  --scope "/subscriptions/12345678-1234-1234-1234-123456789012" \
  --notifications '{"Notification1":{"enabled":true,"operator":"GreaterThan","threshold":80,"contact-emails":["admin@contoso.com"]}}'

PowerShell:

New-AzConsumptionBudget -Name "MyMonthlyBudget" -Amount 1000 -Category Cost -TimeGrain Monthly -StartDate 2024-01-01 -EndDate 2024-12-31 -Scope "/subscriptions/12345678-1234-1234-1234-123456789012" -Notification @{Notification1=@{Enabled=$true;Operator="GreaterThan";Threshold=80;ContactEmail=@("admin@contoso.com")}}

Concrete Business Scenarios

Startup with limited funding: A startup has a $5,000 monthly Azure credit. They create a monthly budget of $5,000 with alerts at 80% and 100%. At 80%, the CTO gets an email. At 100%, an action group sends an SMS to the finance team and triggers an Azure Automation runbook that stops all non-production VMs.

Enterprise department chargeback: A large company wants each department to stay under a monthly budget. They create budgets at the resource group level, filtered by department tag. Alerts are sent to department heads when they hit 90% of their budget.

Common Mistakes and How to Avoid Them

Not setting forecasted alerts: Many people only set alerts on actual costs, but actual costs might be updated daily. Forecasted alerts give earlier warnings. Azure calculates forecast based on past usage.

Forgetting to add action groups: A budget without an action group is just a passive monitor. To get proactive alerts, you must configure notifications or actions.

Using wrong scope: If you create a budget at the subscription level, it covers all resources in that subscription. If you want to monitor only a specific project, use a resource group scope with filters.

Summary

Azure Budgets are a powerful, free tool to monitor and control cloud spending. By setting budgets with alert thresholds and action groups, you can avoid cost overruns and automate responses. For the AZ-900 exam, know the scope options, alert thresholds (up to 5), and that budgets can be based on cost or usage. Remember that budgets are proactive, not just reactive.

Walk-Through

1

Navigate to Cost Management

In the Azure portal, go to 'Cost Management + Billing' then select 'Cost Management' and finally 'Budgets'. This is the central hub for creating and managing budgets. If you have multiple subscriptions, ensure you're in the correct directory and subscription context. The portal will show a list of existing budgets, if any, and a button to add a new one.

2

Create a new budget

Click '+Add' to start creating a new budget. You'll first choose the scope: subscription, resource group, or management group. Then give your budget a name and set the amount. For example, 'MonthlyDevelopmentBudget' with $2,000. Choose the time grain: monthly, quarterly, or yearly. Also set start and end dates. Note that monthly budgets reset on the first day of each month.

3

Configure alert thresholds

You can set up to 5 alert conditions. Each condition has a threshold percentage (e.g., 50%, 80%, 100%, 120%). You can choose to alert on actual cost, forecasted cost, or both. For example, set an alert at 80% of budget to get an early warning. The forecasted cost alert is particularly useful because it predicts end-of-period costs based on current spending patterns.

4

Define action groups

For each alert threshold, you can specify an action group. Action groups are reusable sets of notification methods. You can create a new action group or use an existing one. Options include email, SMS, push notifications, voice calls, webhooks, Azure Functions, Logic Apps, and Automation runbooks. For AZ-900, know that you can send email alerts and that action groups can be shared across multiple budgets and Azure Monitor alerts.

5

Review and create

After configuring alerts and actions, review your budget settings. Ensure the scope, amount, and time period are correct. Then click 'Create'. The budget will start monitoring costs from the start date. You can view the budget's status in the list – it shows current spend, forecast, and whether any alerts have fired. You can also edit or delete budgets later if needed.

What This Looks Like on the Job

Scenario 1: FinOps for a SaaS Company

A SaaS company runs hundreds of VMs and databases in Azure. The finance team wants to ensure each development team stays within a monthly budget of $10,000. They create a separate budget for each resource group, each with a $10,000 monthly limit. Alerts are set at 80% (send email to team lead) and 100% (trigger an Automation runbook that stops all non-production VMs). One team accidentally leaves a large GPU VM running over the weekend. On Monday, the budget hits 80%, the team lead gets an email, and they shut down the VM manually. Without the budget, the cost would have exceeded $15,000. The budget also provides a forecast that helps the team plan resource allocation.

Scenario 2: Enterprise Cloud Center of Excellence

A large enterprise has a central cloud team that manages multiple subscriptions. They create a management group budget for the entire organization with a monthly limit of $500,000. Alerts are set at 50%, 75%, 90%, and 100%. At 90%, a webhook is called that posts a message to a Microsoft Teams channel for the cloud team. At 100%, an Automation runbook is triggered that sends a report to the CFO and disables the ability to create new resources (by revoking permissions via a runbook). This proactive approach prevents surprise bills and ensures accountability.

What Goes Wrong When Set Up Incorrectly?

No forecasted alerts: A team sets only actual cost alerts, but actual costs are updated once daily. By the time they hit 100%, they might have already overspent. Forecasted alerts give earlier warnings.

Wrong scope: A budget created at the subscription level but intended for a single resource group will include all costs in the subscription. This can cause false alarms and confusion.

Missing action group: A budget without an action group is effectively useless – it won't send any notifications or trigger any actions.

Too many alerts: Setting alerts at 10% increments can cause alert fatigue. Best practice is to set 3-5 meaningful thresholds (e.g., 50%, 80%, 100%).

How AZ-900 Actually Tests This

Exactly What AZ-900 Tests

AZ-900 objective 3.1: 'Describe the tools for managing and governing Azure resources.' This includes Azure Budgets and Cost Alerts as part of cost management. You need to know:

What budgets are and why they are used.

The scope options: subscription, resource group, management group.

Alert thresholds: up to 5 per budget, based on percentage of budget.

That budgets can be based on cost or usage.

That action groups can send email, SMS, or trigger automated actions.

That budgets are a feature of Azure Cost Management.

Common Wrong Answers and Why

1.

'Budgets can be set at the resource level' – Wrong. Budget scope is limited to subscription, resource group, or management group. You cannot create a budget for a single VM directly.

2.

'Budgets are a paid feature' – Wrong. Azure Budgets are free. Only certain action group communication channels (like SMS) may incur charges.

3.

'You can set unlimited alert thresholds' – Wrong. Maximum is 5 thresholds per budget.

4.

'Budgets automatically stop resources when exceeded' – Not by default. You must configure an action group to trigger an Automation runbook or similar to stop resources.

5.

'Budgets are only for cost, not usage' – Wrong. You can create usage budgets to monitor consumption metrics like VM hours or storage GB.

Specific Terms and Values

Scope: Subscription, resource group, management group.

Alert thresholds: Up to 5 per budget.

Time grains: Monthly, quarterly, yearly.

Budget types: Cost budget, usage budget.

Action group: Reusable notification set (email, SMS, voice, webhook, etc.).

Edge Cases and Tricky Distinctions

Forecasted vs. actual cost alerts: The exam may ask which alert type gives earlier warning. Forecasted alerts use historical data to predict end-of-period cost, so they can trigger before actual costs reach the threshold.

Budget reset: Monthly budgets reset on the first day of the month. If you create a budget mid-month, it will only cover the remaining days.

Multiple budgets overlapping: You can have multiple budgets at different scopes. For example, a subscription-level budget and a resource group-level budget. Both will monitor and alert independently.

Memory Trick

Use B.A.S.A. for budget creation: Budget name, Amount, Scope, Alerts. Remember: up to 5 alerts per budget, and alerts can be based on actual or forecasted cost.

Decision Tree for Eliminating Wrong Answers

Is the question about scope? → Only subscription, resource group, management group.

Is it about number of alerts? → Maximum 5.

Is it about cost? → Budgets are free.

Is it about automatic action? → Not automatic unless you configure an action group with a runbook.

Is it about what can be monitored? → Cost or usage, not just cost.

By understanding these points, you'll be well-prepared for any AZ-900 question on Azure Budgets and Cost Alerts.

Key Takeaways

Azure Budgets are free and part of Azure Cost Management.

Budget scope can be subscription, resource group, or management group.

You can set up to 5 alert thresholds per budget, based on percentage of budget.

Budgets can monitor either cost or usage (e.g., VM hours).

Alert thresholds can be based on actual or forecasted costs.

Action groups are reusable and can send email, SMS, or trigger automated actions.

Budgets do not automatically stop resources; you must configure an action group to do so.

Easy to Mix Up

These come up on the exam all the time. Here's how to tell them apart.

Azure Budgets

Defines a spending limit for a specific scope (subscription, RG, MG).

Can be set for cost or usage (e.g., VM hours).

Supports up to 5 alert thresholds per budget.

Alerts can trigger action groups (email, SMS, runbook, etc.).

Provides a visual status of spend vs. budget in the portal.

Azure Cost Alerts (via Cost Management)

Alerts can be created without a budget (e.g., on cost anomalies).

Only cost-based alerts, not usage-based.

No limit on number of alerts, but each alert is separate.

Alerts can also trigger action groups, similar to budgets.

Alerts are part of Azure Monitor; budgets are part of Cost Management.

Watch Out for These

Mistake

Azure Budgets automatically stop resources when the budget is exceeded.

Correct

Budgets do not automatically stop resources. They only send alerts. To take automated action, you must configure an action group that triggers an Azure Automation runbook, Azure Function, or similar to stop resources.

Mistake

You can create a budget for a single virtual machine.

Correct

Budgets can only be created at the subscription, resource group, or management group level. To monitor a single VM, you would create a budget at the resource group level and filter by the VM's resource ID or tag.

Mistake

Azure Budgets are a paid add-on service.

Correct

Azure Budgets are a free feature within Azure Cost Management. There is no additional cost to create budgets. However, action groups that send SMS or voice messages may incur charges based on your communication service plan.

Mistake

You can set an unlimited number of alert thresholds per budget.

Correct

You can set up to 5 alert thresholds per budget. Each threshold is a percentage of the budget amount (e.g., 50%, 80%, 100%).

Mistake

Budget alerts are only based on actual costs, not forecasted costs.

Correct

Budget alerts can be based on either actual costs or forecasted costs. Forecasted alerts use historical data to predict end-of-period costs and can provide earlier warnings.

Frequently Asked Questions

Can I create a budget for a single resource like a specific VM?

No, you cannot create a budget directly for a single resource. Budgets are scoped at the subscription, resource group, or management group level. To monitor a specific VM, you would create a budget at the resource group level and apply a filter (e.g., by resource ID or tag) to isolate that VM's costs.

How many alert thresholds can I set per budget?

You can set up to 5 alert thresholds per budget. Each threshold is a percentage of the budget amount. For example, you could set thresholds at 50%, 80%, 100%, and 120%.

Are Azure Budgets free or paid?

Azure Budgets are completely free. There is no cost to create or manage budgets. However, if you configure action groups that send SMS messages or make voice calls, those communications may incur charges based on your Azure subscription's communication service plan.

What is the difference between actual cost alert and forecasted cost alert?

An actual cost alert triggers when the cumulative actual costs reach a percentage of the budget. A forecasted cost alert triggers when the predicted end-of-period cost (based on historical usage) reaches a percentage of the budget. Forecasted alerts provide earlier warnings because they anticipate future spending.

Can budgets be used to automatically shut down resources?

Budgets themselves cannot shut down resources. However, you can configure an action group that triggers an Azure Automation runbook or an Azure Function, which can then stop or deallocate resources. This requires additional setup beyond the budget creation.

What scopes are available for Azure Budgets?

Azure Budgets can be created at the subscription, resource group, or management group level. You cannot create a budget at the resource level (e.g., a single VM or database).

How often do monthly budgets reset?

Monthly budgets reset on the first day of each month. If you create a budget mid-month, it will only cover the remaining days of that month. Quarterly and yearly budgets reset at the start of the quarter or year, respectively.

Terms Worth Knowing

Ready to put this to the test?

You've just covered Azure Budgets and Cost Alerts — now see how well it sticks with free AZ-900 practice questions. Full explanations included, no account needed.

Done with this chapter?