Skip navigation

Create a Budget

Last updated: 15/03/2018

This template shows how to create a budget under a resource group. This feature is available to enterprise customers only

This Azure Resource Manager (ARM) template was created by a member of the community and not by Microsoft. Each ARM template is licensed to you under a licence agreement by its owner, not Microsoft. Microsoft is not responsible for ARM templates provided and licensed by community members and does not screen for security, compatibility or performance. Community ARM templates are not supported under any Microsoft support programme or service, and are made available AS IS without warranty of any kind.


Parameter Name Description
budgetName Name of the Budget. It should be unique within a resource group.
amount The total amount of cost or usage to track with the budget
budgetCategory The category of the budget, whether the budget tracks cost or usage.
timeGrain The time covered by a budget. Tracking of the amount will be reset based on the time grain.
startDate The start date must be first of the month in YYYY-MM-DD format. Future start date should not be more than three months. Past start date should be selected within the timegrain preiod.
endDate The end date for the budget in YYYY-MM-DD format. If not provided, we default this to 10 years from the start date.
operator The comparison operator.
threshold Threshold value associated with a notification. Notification is sent when the cost exceeded the threshold. It is always percent and has to be between 0 and 1000.
contactEmails The list of email addresses to send the budget notification to when the threshold is exceeded.
contactRoles The list of contact roles to send the budget notification to when the threshold is exceeded.
contactGroups The list of action groups to send the budget notification to when the threshold is exceeded. It accepts array of strings.
resourcesFilter The list of filters on resources.
metersFilter The list of filters on meters, mandatory for budgets of usage category.

Use the template


New-AzureRmResourceGroupDeployment -Name <deployment-name> -ResourceGroupName <resource-group-name> -TemplateUri
Installing and configuring Azure PowerShell

Command line

azure config mode arm
azure group deployment create <my-resource-group> <my-deployment-name> --template-uri
Installing and configuring the Azure cross-platform command-line interface