Explanation
Why the waste happens and who it affects.
Running these workloads on Business Critical unnecessarily inflates costs. Choosing a lower-cost tier like General Purpose typically provides sufficient performance and availability for non-production use cases, significantly reducing ongoing database expenses.
Billing model
The pricing dimensions that drive this cost.
Azure SQL Database instances are billed based on the selected service tier, compute size (vCores), and storage consumption. The Business Critical tier provides the highest availability and performance, using additional replicas and premium storage, but comes at a significantly higher cost compared to lower tiers like General Purpose. Selecting an unnecessarily high tier for non-production workloads leads to elevated expenses without proportional business value.
How to detect
5 checks to find it in your estate.
- Identify Azure SQL Database instances deployed in the Business Critical service tier
- Review associated workload environments to determine if the instance supports production or non-production use
- Assess application performance and availability requirements to confirm if Business Critical features are necessary
- Evaluate whether General Purpose or Hyperscale tiers would adequately meet workload needs
- Validate findings with application owners, development teams, or database administrators before making changes
How to fix
4 ways to remove the waste.
- Migrate non-production SQL instances from the Business Critical tier to a lower-cost alternative, such as General Purpose.
- Use downtime windows or database copy strategies to minimize risk during tier transitions, depending on instance size and availability requirements.
- Monitor performance after migration to ensure the workload remains stable and meets operational needs.
- Update deployment templates and provisioning practices to avoid defaulting non-production instances to the Business Critical tier going forward.
Documentation
Vendor references for pricing and configuration.