Most teams set up budgets and cost alerts in Azure, but often nobody is responsible for acting on them. When an alert arrives, everyone assumes someone else is looking into it, and the cost only gets attention when the Product Owner asks about the bill.
That's why every project should have a FinOps owner - one named person who is responsible for the project's cloud costs.
❌ Figure: Bad example - The alert only goes to a shared mailbox, so nobody is responsible for it
✅ Figure: Good example - The alert goes to the project's Teams channel and to the FinOps owner by name
Note: FinOps is the name Microsoft and the FinOps Foundation use for managing cloud costs. The word is "a blend of Finance and DevOps".
Warning: This matters even more for AI apps. AI models are usually billed per token, so the cost depends on how much the app is used and can jump from one week to the next.
Pick one person, not a team. The Tech Lead is usually the right choice: they know what every resource is for, and monitoring the budget is already part of the role. The Product Owner still approves the spend.
They don't need to be an Owner of the subscription. Cost Management Reader is enough to see costs and budgets, and Cost Management Contributor lets them create budgets and anomaly alerts.
Put the FinOps owner's name in a FinOpsOwner tag on the project's resource group. Anyone who opens the resource group in Azure then knows who to ask about the cost. See Do you apply Tags to your Azure Resource Groups?
❌ Figure: Bad example - The FinOps owner is a team, so nobody is responsible
✅ Figure: Good example - The FinOpsOwner tag names one person