How Are Azure Cloud Services Priced?
Azure pricing refers to the cost structure associated with using Microsoft Azure, a global cloud computing service. Azure offers a variety of pricing models to accommodate different types of workloads and usage patterns. Pricing can vary based on factors such as the type and size of resources, the region in which the resources are deployed, and the duration of usage.
Understanding Azure pricing is crucial for organizations looking to optimize their cloud spend. It involves evaluating the cost of individual services as well as considering the broader financial implications of workflow, scaling, and long-term commitments. Azure offers flexible pricing options to meet the needs of both small businesses and large enterprises.
This is part of a series of articles about Azure cost.
In this article:
- Azure Pricing Models
- Key Factors Affecting Azure Pricing
- Pricing Examples of Key Azure Services
- Best Practices for Azure Cost Optimization
Azure Pricing Models
Here’s an overview of the pricing options available in Azure.
Azure Free Tier
The Azure Free Tier provides complimentary access to select Azure services for 12 months, including 750 hours of B1S virtual machines, 5GB of blob storage, and 32GB of SQL database storage. This offering is suitable for developers and organizations looking to experiment with Azure services without incurring costs.
After the 12-month period, services used beyond the free allocation will be billed at standard pay-as-you-go rates.
Dev/Test Pricing
The Dev/Test pricing allows organizations to take advantage of reduced rates for non-production workloads. This model is suitable for development teams that need to quickly spin up environments without incurring the full cost associated with production-level services.
The Dev/Test pricing is available for customers with Azure Dev/Test individual subscriptions or through an enterprise agreement, offering a discount of up to 57% for standard web application development or testing environments used to run SQL Database or App Service.
Pay-as-You-Go
The pay-as-you-go model charges users based on actual usage, making it suitable for dynamic workloads that can vary in intensity. This model requires no upfront commitment and allows for scaling resources up or down as needed, providing flexibility and cost control.
This pricing model is useful for startups or projects with unpredictable workloads. However, costs can escalate quickly with high usage, requiring regular monitoring and cost management to prevent unexpected expenses.
Azure Reservations
Azure reservations offer significant cost savings for customers willing to commit to one or three-year plans. By pre-paying for services such as virtual machines or SQL databases, customers can save up to 72% compared to pay-as-you-go rates.
This model suits stable and predictable workloads, providing budget predictability. Additionally, reservations can be exchanged or canceled, though some conditions and limitations apply, offering a compromise between long-term commitment and flexibility.
Azure Spot Virtual Machines
Azure Spot Virtual Machines allow users to take advantage of unused compute capacity at discounts of up to 90%. These VM instances can be evicted when Azure needs the capacity back, making them suitable for batch processing, development, and testing.
Cost savings can be substantial, but users need to design workloads to tolerate interruptions. This model is less suited for mission-critical applications that require consistent uptime.
Azure Savings Plans
Azure Savings Plans enables customers to save money by committing to consistent usage of Azure services over one or three years. Unlike reservations, which require upfront payment and are specific to certain services, savings plans offer broader coverage across a range of services. This plan allows users to commit to a fixed hourly spend, which can be applied across various services, including virtual machines, containers, and other compute options.
These savings plans are suitable for organizations with variable workloads that still need cost predictability. By locking in a lower rate, customers can benefit from up to 65% savings compared to pay-as-you-go pricing.
Azure Hybrid Benefit
The Azure Hybrid Benefit allows organizations to use their existing on-premises Windows Server, Microsoft SQL Server, Red Hat Enterprise Linux, or SUSE Linux Enterprise Server
licenses to save on Azure costs. This benefit can substantially reduce the cost of running workloads in Azure, offering savings of up to 40% or more.
To leverage this benefit, organizations must assess their current license inventory and identify which licenses can be transferred to Azure. This assessment involves understanding the terms of the Software Assurance and determining the most cost-effective way to migrate workloads.
Related content: Read our guide to Azure VM pricing
Key Factors Affecting Azure Pricing
Here are some of the main factors involved in calculating costs in Azure.
Compute
Compute costs in Azure are determined by several factors, including the type and size of virtual machines (VMs) and the duration of use. Different VM types cater to varying requirements; for example, general-purpose VMs cost less than compute-optimized or memory-optimized models.
Storage
Azure storage pricing is determined by the type of storage service, data redundancy level, and the total volume of stored data. Options include blob storage, disk storage, and file storage. Frequently accessed (hot) and infrequently accessed (cold) data have different storage costs. Customers can manage expenses by selecting the appropriate storage tier and minimizing redundant data through lifecycle policies and archiving.
Networking
Networking costs involve data transfer rates both within and outside of Azure. Inbound data is typically free, while outbound data incurs charges. Using services like Azure Virtual Network or ExpressRoute can add to costs. Bandwidth usage should be closely monitored to control networking costs.
Region
Azure pricing varies significantly across different geographical regions. Deploying resources in regions with lower costs can lead to substantial savings, while some specialized regions may have higher rates due to localized expenses or taxes.
Tips from the expert: – Leverage Azure Spot VMs with Orchestration Tools: Use tools like Kubernetes or Azure Batch to manage Azure Spot VMs. These tools can automatically handle the interruptions of Spot VMs by rescheduling tasks or using regular VMs as fallbacks, ensuring workloads are both cost-effective and resilient. – Combine Reserved Instances with Auto-Scaling: While Azure Reservations offer savings, combining them with auto-scaling ensures you don’t overcommit to capacity. Use reserved instances for baseline usage and auto-scaling for unpredictable spikes, optimizing both cost and performance. – Enable Just-in-Time VM Access: Azure’s Just-in-Time (JIT) VM access minimizes the attack surface and also helps reduce costs by ensuring that VMs are powered off when not in use. This approach is especially useful for development and testing environments. – Implement Storage Account Tiering Across Regions: Store less frequently accessed data in lower-cost regions where Azure offers the same tier (e.g., Cool or Archive). This strategy can yield substantial savings, especially for globally distributed data that doesn’t require low-latency access. – Use Managed Disks and Storage Efficiency Features: Opt for managed disks with the Premium SSD tier for production workloads and use Standard SSD for dev/test. Additionally, enable disk encryption and compress data where applicable to lower storage costs. |
Pricing Examples of Key Azure Services
Azure pricing is complex and subject to frequent change. Below we show only a few examples of pricing, correct as of the time of this writing. For more details and up-to-date pricing, see the official pricing page.
Azure Virtual Machines
Azure offers a range of VM options for different workloads and requirements. Here are some examples, showing pricing for the East US Region and leveraging Azure Hybrid Benefit (AHB).
Bs v2-Series
The Bs v2 VM series, utilizing Ampere® Altra® Arm-based processors, is cost-effective for workloads that usually run at low to moderate CPU utilization but can burst to higher usage when needed.
B2ats v2:
- vCPUs: 2
- RAM: 1 GiB
- Pay-as-you-go: $6.862/month
- 1-year savings plan: $4.599/month (32% savings)
- 3-year savings plan: $3.0879/month (55% savings)
- Spot: $1.8871/month (72% savings)
B4als v2:
- vCPUs: 4
- RAM: 8 GiB
- Pay-as-you-go: $97.09/month
- 1-year savings plan: $65.05/month (33% savings)
- 3-year savings plan: $43.69/month (55% savings)
- Spot: $26.7/month (72% savings)
Bs-Series
The Bs-series VMs, powered by Intel Xeon processors, are economical options suitable for development and test servers, low-traffic web servers, and small databases.
B1s:
- vCPUs: 1
- RAM: 1 GiB
- Pay-as-you-go: $7.592/month
- 1-year savings plan: $5.11/month (32% savings)
- 3-year savings plan: $3.424/month (54% savings)
B4ms:
- vCPUs: 4
- RAM: 16 GiB
- Pay-as-you-go: $121.18/month
- 1-year savings plan: $81.61/month (32% savings)
- 3-year savings plan: $54.60/month (54% savings)
Av2 Standard
Av2 Standard VMs are the latest generation of A-series virtual machines, suitable for development workloads, build servers, and low-traffic websites.
A1 v2:
- vCPUs: 1
- RAM: 2 GiB
- Pay-as-you-go: $31.39/month
- 1-year savings plan: $21.22/month (32% savings)
- 3-year savings plan: $14.15/month (54% savings)
- Spot: $3.15/month (89% savings)
A8 v2:
- vCPUs: 8
- RAM: 16 GiB
- Pay-as-you-go: $291.27/month
- 1-year savings plan: $196.92/month (32% savings)
- 3-year savings plan: $131.28/month (54% savings)
- Spot: $32.04/month (89% savings)
Azure Blob Storage
Azure Blob Storage handles large amounts of unstructured data and offers various pricing tiers and options to suit different needs and usage patterns. The pricing is influenced by the storage tier, data redundancy level, and volume of stored data. Pricing below is for the East US Region, using Locally Redundant Storage (LRS).
Storage Tiers
Premium Storage: Provides low latency and high transaction rates, optimized for scenarios requiring consistent performance. This tier supports only block and append blobs and does not allow tiering to or from other tiers.
Standard (GPv2) Storage: Offers the most recent Azure Storage features and is recommended for general-purpose use.
Both Premium and Standard tiers have three sub-tiers:
- Hot: Suitable for data that is accessed frequently.
- Cool: Suitable for data that is infrequently accessed and stored for at least 30 days.
- Archive: Suitable for data that is rarely accessed and stored for a minimum of 180 days, offering the lowest storage cost but higher access costs.
Pricing
Data storage prices are calculated per GB per month and vary by tier. For the first 50 TB per month:
- Premium: $0.15 per GB
- Hot: $0.021 per GB
- Cool: $0.015 per GB
- Cold: $0.0036 per GB
- Archive: $0.001 per GB
For large volumes of data, slight discounts apply for hot storage:
- Next 450 TB/month: $0.02 per GB
- Over 500 TB/month: $0.0191 per GB
Reserved Capacity
Azure Storage Reserved Capacity offers cost savings for long-term commitments. Users can reserve capacity for one or three years, with options to purchase in increments of 100 TB and 1 PB.
1-year Reserved:
- Hot: $1,747 per 100 TB/month
- Cool: $1,277 per 100 TB/month
- Archive: $91 per 100 TB/month
3-year Reserved:
- Hot: $1,406 per 100 TB/month
- Cool: $1,028per 100 TB/month
- Archive: $84 per 100 TB/month
Operations and Data Transfer Costs
Costs for operations and data transfers are additional to storage costs:
Write operations (per 10,000):
- Premium: $0.0228
- Hot: $0.065
- Cool: $0.13
- Cold: $0.234
- Archive: $0.13
Read operations (per 10,000):
- Premium: $0.0019
- Hot: $0.005
- Cool: $0.013
- Cold: $0.13
- Archive : $6.50
- Archive High Priority Read: $65
Data Retrieval (per GB):
- Hot: Free
- Cool: $0.01
- Cold: $0.0369
- Archive: $0.02
- Archive High Priority Retrieval: $0.1
Azure SQL Database
Azure SQL Database provides various pricing models to cater to different needs, including vCore-based models for flexibility and control over resource consumption, and provisioned compute options for consistent performance. Here are some detailed examples of pricing for the Central US Region:
vCore-Based Model
Note that storage is priced at $0.308 per GB/month.
Standard-series (Gen 5):
- 2 vCores: 320.02/month (pay-as-you-go), $208.01/month (1-year reserved), $144/month (3-year reserved)
- 4 vCores: 640.04/month (pay-as-you-go), $416.01/month (1-year reserved), 288.00/month (3-year reserved)
- 8 vCores: 1,280.08/month (pay-as-you-go), $832.03/month (1-year reserved), 576.00/month (3-year reserved)
Serverless Compute
Serverless compute automatically scales based on workload requirements, billing per second of usage:
- Minimum vCores: 0.5
- Maximum vCores: 80
- Price: $0.0001292/vCore-second ($0.465/vCore-hour)
Hyperscale
Combines compute and storage auto-scaling up to 100 TB:
- 2 vCores: 320.02/month (pay-as-you-go), $208.01/month (1-year reserved), 144.00/month (3-year reserved)
- 4 vCores: 640.04/month (pay-as-you-go), $416.01/month (1-year reserved), 288.00/month (3-year reserved)
- 16 vCores: 2,560.16/month (pay-as-you-go), $1,664.05/month (1-year reserved), 1,152.00/month (3-year reserved)
Premium-series, Memory-Optimized:
- 2 vCores: 448.03/month (pay-as-you-go), $291.17/month (1-year reserved), 201.61/month (3-year reserved)
- 4 vCores: 896.06/month (pay-as-you-go), $582.34/month (1-year reserved), 403.22/month (3-year reserved)
Backup Storage (Point-in-Time Restore)
Redundancy options:
- Locally Redundant Storage (LRS): $0.096/GB/month
- Zone-Redundant Storage (ZRS): $0.12/GB/month
- Read-Access Geo-Redundant Storage (RA-GRS): $0.24/GB/month
- Geo-Zone-Redundant Storage (RA-GZRS): $0.408/GB/month
Long-Term Retention
Redundancy options:
- LRS: $0.03/GB/month
- ZRS: $0.0375/GB/month
- RA-GRS: $0.06/GB/month
- RA-GZRS: $0.101/GB/month
Azure Functions
Azure Functions is a serverless compute service which offers flexible pricing plans, including consumption-based and premium options.
Flex Consumption Plan
The Flex Consumption plan provides scalable and cost-effective options with two modes of operation: On Demand and Always Ready.
On Demand
This mode scales instances based on the configured concurrency per instance. Billing occurs only when instances execute functions, with no minimum instance count. The charges are based on the total memory provisioned during execution and the number of executions. Here’s an example of pricing for the East US Region:
- Execution time: $0.000016 per GB-s (after 400,000 GB-s free grant per month)
- Total executions: $0.20 per million executions (after 1 million executions free grant per month)
Always Ready
This mode allows for a predefined number of instances to be constantly available and ready to handle triggers and functions. Billing is based on the memory provisioned during both idle and execution times, as well as the number of executions:
- Baseline memory: $0.000004 per GB-s
- Execution time: $0.000009 per GB-s
- Total executions: $0.20 per million executions
Consumption Plan
The Consumption plan charges based on per-second resource consumption and the number of executions, making it suitable for sporadic workloads with unpredictable traffic:
- Execution time: $0.000016 per GB-s (after 400,000 GB-s free grant per month)
- Total executions: $0.20 per million executions (after 1 million executions free grant per month)
Note: A storage account is created by default for each Functions app, and standard storage rates apply separately.
Premium Plan
The Premium plan enhances performance with no cold start, includes VNET access, and maintains at least one instance allocated at all times. Billing is based on the number of core seconds and memory allocated across instances:
- vCPU duration: 126.29 per vCPU per month (with savings plans: 104.83 per vCPU per month for 1 or 3 years, ~17% savings)
- Memory duration: 8.979 per GB per month (with savings plans: 7.453 per GB per month for 1 or 3 years, ~17% savings)
Best Practices for Azure Cost Optimization
Here are some of the ways that organizations can optimize their costs in Azure.
1. Right-Size Resources
Right-sizing involves aligning the type and size of Azure resources with actual workload needs, helping avoid over-provisioning and unnecessary expenses. This practice involves regularly monitoring and analyzing the utilization metrics of virtual machines, storage, databases, and other resources to ensure they match the demands of the applications.
For example, if a particular VM is consistently underutilized, it can be downsized to a smaller instance, reducing costs. If an application requires more resources during peak times, scaling up temporarily can ensure performance without overcommitting resources long-term. Azure Advisor is useful in this process, offering personalized recommendations.
2. Implement Auto-Scaling
Auto-scaling in Azure automatically adjusts the number of running instances based on real-time demand, ensuring the company is only billed for the resources used. This dynamic scalability is particularly beneficial for applications with variable workloads, such as eCommerce sites during sales events or applications with fluctuating user activity.
To implement auto-scaling, configure applications to scale out by adding more instances when demand increases and scale in by removing instances when demand decreases. Azure offers several tools and services, such as Azure Monitor and Azure Scale Sets, to support this process. These tools can monitor application performance and automatically adjust resources.
3. Choose Appropriate Storage Tiers
Azure provides multiple storage tiers—Hot, Cool, and Archive—each intended for different access patterns and cost profiles. To optimize storage costs, it is essential to choose the appropriate tier based on how frequently data is accessed and how long it needs to be stored.
The Hot tier is suitable for data that is accessed frequently, such as active databases or files used in real-time applications. The Cool tier offers lower storage costs for data that is infrequently accessed but still needs to be available, such as backups or archival data that is occasionally retrieved. The Archive tier provides the lowest storage cost for data that is rarely accessed and can tolerate higher retrieval times.
Implementing data lifecycle management policies can automate the movement of data between these tiers based on access patterns. For example, admins can set policies to move data from the Hot tier to the Cool tier after 30 days of inactivity and then to the Archive tier after 180 days.
Use Azure Cost Management Tools
Azure Cost Management + Billing is a suite of tools to help manage and optimize Azure spending. These tools provide comprehensive insights into an organization’s Azure costs, helping identify spending trends, monitor budget adherence, and uncover cost-saving opportunities.
Start by setting up budgets and alerts to monitor spending against predefined thresholds. This ensures that the organization is aware of potential overspending before it becomes a significant issue. Use cost analysis reports to break down spending by resource, department, or project, enabling the company to pinpoint areas where costs can be reduced.