Azure

Azure Terraform Resources

Cost estimation reference for 104 Azure resources supported by C3X. Each page covers pricing dimensions, Terraform examples, and optimization tips.

Analytics

azurerm_analysis_services_server

A managed tabular analytics engine billed per hour by tier. An S0 is ~$591/month if left running — but it can be paused, which stops the charge entirely.

Azure Analysis Services
azurerm_data_factory

Managed ETL/ELT and data integration. Pipeline orchestration ($1/1K runs), data flow execution ($0.193-$0.34/vCore-hour for General Purpose), and Integration Runtime hours. Data movement billed separately ($0.25/DIU-hour Azure-hosted).

Azure Data Factory
azurerm_databricks_workspace

Managed Spark and Delta Lake. Bills DBU (Databricks Units) at $0.15-$0.55/DBU-hour depending on workload type plus underlying VM costs. Photon engine adds ~30% to DBU rate for ~2-3x performance.

Azure Databricks
azurerm_eventhub_cluster

A single-tenant dedicated Event Hubs cluster billed per Capacity Unit-hour. One CU is ~$6,847/month — only worth it at very high, sustained throughput.

Azure Event Hubs
azurerm_hdinsight_hadoop_cluster

A managed Hadoop/Hive cluster on HDInsight, billed per node-hour for head and worker VMs. A 2-head + 3-worker cluster is ~$1,894/month, and it doesn't auto-pause.

Azure HDInsight
azurerm_hdinsight_hbase_cluster

A managed Apache HBase (NoSQL wide-column) cluster on HDInsight, billed per node-hour for head and worker (region server) VMs. A 2-head + 3-worker cluster is ~$1,894/month.

Azure HDInsight
azurerm_hdinsight_interactive_query_cluster

A managed Hive LLAP (Interactive Query) cluster on HDInsight, billed per node-hour for head and worker VMs. A 2-head + 3-worker cluster is ~$1,894/month.

Azure HDInsight
azurerm_hdinsight_kafka_cluster

A managed Apache Kafka cluster on HDInsight, billed per node-hour for head and worker (broker) VMs. A 2-head + 3-broker cluster is ~$1,894/month, running continuously.

Azure HDInsight
azurerm_hdinsight_spark_cluster

A managed Apache Spark cluster billed per node-hour for head and worker VMs. A 2-head + 3-worker cluster is ~$1,894/month, running continuously.

Azure HDInsight
azurerm_kusto_cluster

A managed analytics engine (Kusto) for fast queries over telemetry and logs. Priced on the underlying VM instances plus an Azure Data Explorer markup per vCPU-hour.

Azure Data Explorer
azurerm_powerbi_embedded

Dedicated Power BI capacity for embedding analytics in apps, billed per hour by A-SKU. An A1 is ~$736/month — but it can be paused when not in use.

Power BI Embedded
azurerm_purview_account

A data-governance and catalog account billed per always-on Data Map capacity unit, plus scanning. One capacity unit is ~$300/month before scans.

Microsoft Purview
azurerm_search_service

Managed full-text and vector search. Free tier for development. Basic at $75/month, Standard from $250/month per Search Unit. Semantic ranking and vector search included on Standard+.

Azure AI Search
azurerm_stream_analytics_job

A real-time stream-processing job billed per Streaming Unit-hour. Three streaming units run ~$241/month, and the job bills while it's running whether or not events flow.

Azure Stream Analytics
azurerm_synapse_spark_pool

An Apache Spark pool in Synapse billed per vCore-hour of active nodes. Three Small nodes running full-time are ~$1,253/month — but auto-pause makes the real cost usage-driven.

Azure Synapse Analytics
azurerm_synapse_sql_pool

A dedicated, provisioned data-warehouse pool. Priced per cDWU-hour by performance level, plus separately-billed storage, and pausable to stop compute charges.

Azure Synapse Analytics
azurerm_synapse_workspace

Unified data warehouse + Spark + serverless SQL + Data Factory pipelines. Dedicated SQL pool from $1.20/DWU-hour. Spark pool $0.143/vCore-hour. Serverless SQL $5/TB scanned. Workspace itself is free.

Azure Synapse Analytics

Application Integration

Compute

azurerm_batch_pool

A pool of compute nodes for batch/HPC jobs, billed the underlying VM rate per node. Two Standard_D2s_v5 dedicated nodes are ~$140/month — but autoscale and Spot make it usage-driven.

Azure Batch
azurerm_dedicated_host

A physical server dedicated to your VMs for isolation and licensing. Priced per host-hour by host SKU, independent of how many VMs you place on it.

Azure Virtual Machines
azurerm_linux_virtual_machine

A single Linux VM. Billed per hour for the chosen size plus a separate managed OS disk. A Standard_D2s_v5 runs ~$70/month before the disk.

Azure Virtual Machines
azurerm_linux_virtual_machine

A Linux VM on Azure. Priced per hour by VM size, region, and license. Managed disks and bandwidth billed separately.

Azure Virtual Machines
azurerm_linux_virtual_machine_scale_set

A group of identical Linux VMs that scales as a unit. Priced per instance-hour by VM size times the instance count, plus per-instance managed OS disks.

Azure Virtual Machines
azurerm_machine_learning_compute_cluster

An autoscaling cluster for ML training and batch jobs. Priced on the underlying VM rate per node-hour, scaling between min and max nodes with the workload.

Azure Machine Learning
azurerm_orchestrated_virtual_machine_scale_set

A Flexible-orchestration VM scale set, billed per instance-hour at the VM rate. Two Standard_D2s_v5 instances are ~$140/month, scaling with the instance count.

Azure Virtual Machine Scale Sets
azurerm_service_plan

The compute plan that hosts Web Apps and Function Apps, billed per instance-hour by tier × worker count. A B1 plan with one worker is ~$12/month.

Azure App Service
azurerm_service_plan

A compute plan for web apps, API apps, and function apps. Priced per hour by SKU and number of instances.

Azure App Service
azurerm_spring_cloud_service

A managed platform for Spring Boot apps. The Standard tier carries a per-hour base fee (~$578/month) on top of per-app vCPU/memory usage.

Azure Spring Apps
azurerm_static_web_app

Managed hosting for static sites with serverless API backends. Priced as a flat monthly plan fee, with a genuinely free tier for small projects.

Azure Static Web Apps
azurerm_windows_virtual_machine

A single Windows VM. Bills per hour for the size — including a Windows license surcharge — plus a managed OS disk. A Standard_D2s_v5 runs ~$137/month before the disk.

Azure Virtual Machines
azurerm_windows_virtual_machine_scale_set

A fleet of identical Windows VMs that scales as a unit, billed per instance-hour (Windows rate). Three Standard_D2s_v5 instances are ~$412/month.

Azure Virtual Machine Scale Sets

Containers

Database

azurerm_cosmosdb_account

A globally-distributed multi-model database. Priced by Request Units (RU/s) and storage, with provisioned and serverless options.

Azure Cosmos DB
azurerm_cosmosdb_cassandra_cluster

A managed Apache Cassandra cluster billed per node-hour by VM SKU. Three Standard_DS14_v2 nodes run ~$4,419/month — node count and SKU drive the whole bill.

Azure Cosmos DB for Apache Cassandra
azurerm_healthcare_fhir_service

A managed FHIR (healthcare data) service billed by structured storage plus optional provisioned throughput. 100 GB of storage is ~$25/month.

Azure Health Data Services
azurerm_mariadb_server

A managed MariaDB server billed per vCore plus storage. A 2-vCore server with 50 GB is ~$182/month — but the service is retiring, so plan a migration.

Azure Database for MariaDB
azurerm_mssql_database

Managed SQL Server in Azure. DTU model from $4.90/month (Basic 5 DTU) or vCore model from $0.18/vCore-hour (General Purpose Serverless). Hyperscale tier scales beyond 4 TB. License-included or BYOL via Hybrid Benefit.

Azure SQL
azurerm_mssql_elasticpool

A shared pool of resources for many Azure SQL databases. Priced per pool vCore-hour (or DTU) plus pool storage, amortizing capacity across databases.

Azure SQL Database
azurerm_mssql_managed_instance

A fully managed SQL Server instance with near-100% engine compatibility. Priced per vCore-hour by service tier and hardware generation, plus included and overage storage.

Azure SQL Managed Instance
azurerm_mysql_flexible_server

Managed MySQL with vCPU-based pricing. Burstable B1ms at $13.87/month, General Purpose D2ds_v4 at ~$140/month. Storage $0.115/GB-month. HA doubles compute cost; zone-redundant adds 25% on top.

Azure Database for MySQL
azurerm_mysql_server

The legacy MySQL Single Server, billed per vCore plus storage. A 2-vCore GP server with 50 GB is ~$70/month — but Single Server is retired, so migrate to Flexible Server.

Azure Database for MySQL
azurerm_postgresql_flexible_server

A managed PostgreSQL server. Priced by compute SKU, storage size, and high-availability mode.

Azure Database for PostgreSQL
azurerm_postgresql_server

The legacy PostgreSQL Single Server, billed per vCore plus storage. A 2-vCore GP server with 50 GB is ~$70/month — but Single Server is retired, so migrate to Flexible Server.

Azure Database for PostgreSQL
azurerm_redis_cache

A managed Redis cache. Priced per hour by tier (Basic, Standard, Premium, Enterprise) and cache size.

Azure Cache for Redis
azurerm_redis_enterprise_cluster

The Enterprise tier of Azure Cache for Redis, billed a flat hourly rate by SKU. An Enterprise_E10-2 runs ~$609/month — the capacity (E-number) drives the cost.

Azure Cache for Redis

Developer Tools

Integration

IoT

Machine Learning

Management

Messaging

Networking

azurerm_api_management

Full API gateway with developer portal, rate limiting, transformations. Consumption ($3.50/M calls), Developer ($48/month, no SLA), Basic ($147/month), Standard ($686/month), Premium ($2,795/month per unit).

Azure API Management
azurerm_application_gateway

A Layer 7 load balancer with WAF support. Priced by gateway hours, capacity units, and optional WAF tier.

Azure Application Gateway
azurerm_bastion_host

Managed, browser-based RDP/SSH access to VMs without public IPs. Priced per gateway-hour by SKU, plus outbound data transfer and scale-unit hours.

Azure Bastion
azurerm_cdn_endpoint

A CDN endpoint that caches and serves content from an origin, billed per GB of egress by zone. 1 TB of Zone 1 egress is ~$81/month.

Azure CDN
azurerm_cdn_frontdoor_profile

Global CDN + WAF + load balancer. Standard at $35/month base + $0.17/GB outbound. Premium at $165/month base + $0.225/GB outbound. WAF rules and Private Link add fees. Anycast routing across 192+ POPs.

Azure Front Door
azurerm_ddos_protection_plan

A network DDoS protection plan billed a flat ~$2,944/month — but it covers up to 100 public IPs across all your VNets, so the cost is meant to be shared.

Azure DDoS Protection
azurerm_dns_zone

A public DNS zone hosted on Azure's name servers. Priced per zone per month plus per-million queries, both at low flat rates.

Azure DNS
azurerm_express_route_circuit

A private, dedicated connection between on-premises and Azure. Priced as a monthly circuit fee by bandwidth and billing model, plus outbound data on the metered plan.

Azure ExpressRoute
azurerm_lb

Layer-4 (TCP/UDP) load balancer. Standard SKU at $0.025/hour + $0.005 per processed GB. Basic SKU is free but deprecated for production (retiring 2025). Outbound rules and inbound NAT count toward the rule limit.

Azure Load Balancer
azurerm_nat_gateway

Managed outbound SNAT for a subnet. Priced per gateway-hour plus per-GB of data processed, with the attached public IP billed separately.

Azure NAT Gateway
azurerm_point_to_site_vpn_gateway

A user (point-to-site) VPN gateway in a Virtual WAN hub, billed per scale unit-hour plus per connected user. One scale unit is ~$264/month.

Azure Virtual WAN
azurerm_private_dns_resolver

A managed DNS resolver for hybrid name resolution between Azure and on-prem, billed per inbound/outbound endpoint-hour. Two endpoints are ~$365/month.

Azure DNS
azurerm_private_dns_zone

A private DNS zone for name resolution within VNets, billed a flat ~$0.50/zone/month plus per-million queries. 1M queries is ~$0.90.

Azure DNS
azurerm_private_endpoint

A private IP into a PaaS service over Private Link. ~$0.01/hour per endpoint (~$7.30/month) plus $0.01/GB processed — small individually, large in aggregate.

Azure Private Link
azurerm_public_ip

Public IPv4 or IPv6 address. Standard SKU at $0.005/hour ($3.65/month). Basic SKU is deprecated and retiring. Per-IP charges apply whether the IP is attached or unattached.

Azure Virtual Network
azurerm_traffic_manager_profile

DNS-based global load balancing billed per million DNS queries plus per monitored endpoint. 10M queries with 2 endpoints is ~$6/month.

Azure Traffic Manager
azurerm_virtual_hub

The central hub of an Azure Virtual WAN, billed per hour for the hub plus per GB of data processed. The hub base is ~$182.50/month before data and gateways.

Azure Virtual WAN
azurerm_virtual_network_gateway

A VPN (or ExpressRoute) gateway billed per hour by SKU. A VpnGw1 runs ~$139/month just to exist, before any data processing.

Azure VPN Gateway
azurerm_vpn_gateway

A scalable VPN gateway in a Virtual WAN hub, billed per scale unit-hour. One scale unit is ~$264/month, plus data processed through the hub.

Azure Virtual WAN

Observability

Other

Security

Security & Identity

Serverless

Storage

azurerm_backup_protected_vm

A VM enrolled in Azure Backup, billed a per-instance protection fee by VM size plus backup storage. A ≤500 GB VM with 100 GB of backups is ~$12/month.

Azure Backup
azurerm_data_protection_backup_vault

A vault for backups of disks, blobs, databases, and AKS, billed per GB of backup storage. 500 GB of vaulted LRS backup is ~$50/month — retention drives the bill.

Azure Backup
azurerm_image

A custom VM image stored as managed-disk snapshots, billed per GB-month. A 127 GB image is ~$6.35/month.

Azure Managed Disks
azurerm_managed_disk

A block storage disk for Azure VMs. Priced by disk type and tier (per-disk for Premium SSD, per-GB for Standard).

Azure Managed Disks
azurerm_managed_lustre_file_system

A high-performance Lustre file system for HPC/ML, billed per GiB of provisioned capacity by throughput tier. 4 TB at the 250 MB/s/TiB tier is ~$696/month.

Azure Managed Lustre
azurerm_netapp_pool

A provisioned capacity pool for high-performance NFS/SMB file storage. Priced per provisioned TiB by service level, billed on allocated (not used) capacity.

Azure NetApp Files
azurerm_site_recovery_replicated_vm

A VM protected by Azure Site Recovery (DR replication), billed ~$25/protected instance/month plus the storage and egress the replica consumes.

Azure Site Recovery
azurerm_snapshot

A point-in-time copy of a managed disk, billed per GB-month. A 128 GB Standard LRS snapshot is ~$6.40/month.

Azure Managed Disks
azurerm_storage_account

A storage account for Blob, File, Queue, and Table services. Priced by service type, redundancy, access tier, and operations.

Azure Storage
azurerm_storage_share

A managed SMB/NFS file share billed by tier and capacity. A 100 GiB standard share is ~$6/month; Premium provisions capacity at a higher rate.

Azure Files