I think there is a bug in the consumption api (https://docs.microsoft.com/en-us/rest/api/consumption/budgets/createorupdate) regarding budgets. When I create a budget at management group level, with filtering by tags, the budget ignores the tags and applies to entire management group. Example REST request:
URL:
https://management.azure.com/providers/Microsoft.Management/managementGroups/<management group id>/providers/Microsoft.Consumption/budgets/<some budget name>?api-version=2019-01-01
BODY:
{
"properties":{
"category":"Cost",
"amount":
15000,
"timeGrain":"Monthly",
"timePeriod":{
"startDate":"2019-07-01T00:00:00Z",
"endDate":"2020-10-31T00:00:00Z"
},
"filters":
{
"tags":{
"SomeTag":[
"SOME VALUE THAT DOES NOT EXIST"
]
}
}
}
}