azurerm_virtual_hub cost estimation
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.
An azurerm_virtual_hub is the core of an Azure Virtual WAN — a managed regional networking hub that interconnects VNets, branches, and remote users in a hub-and-spoke topology. Cost has two parts: a per-hour hub fee (~$0.25/hour, ~$182.50/month) plus a per-GB data-processing charge for traffic routed through the hub (~$0.02/GB).
The hub fee is the standing cost, and it's just the entry ticket — a Virtual WAN deployment also bills the gateways inside the hub (VPN gateway by scale unit, ExpressRoute gateway, Azure Firewall if Secured Hub) and the data processed. So the hub base is the floor; the real Virtual WAN bill is hub + gateways + data.
Virtual WAN makes sense for large, multi-region, many-spoke topologies where its managed routing and any-to-any connectivity earn the cost. For a simple two- or three-VNet setup, traditional VNet peering plus a single VNet gateway is far cheaper than standing up a Virtual WAN hub.
c3x prices the hub from its hourly fee; data processing and the gateways inside the hub are separate.
Terraform example
A minimal but realistic configuration that C3X can estimate.
resource "azurerm_virtual_wan" "main" {
name = "global-wan"
resource_group_name = azurerm_resource_group.main.name
location = azurerm_resource_group.main.location
}
resource "azurerm_virtual_hub" "east" {
name = "eastus-hub"
resource_group_name = azurerm_resource_group.main.name
location = "eastus"
virtual_wan_id = azurerm_virtual_wan.main.id
address_prefix = "10.100.0.0/23"
}Pricing dimensions
What you actually pay for when you provision azurerm_virtual_hub.
| Dimension | Unit | What's being charged |
|---|---|---|
| Virtual hub unit | per hour | Per-hour hub fee, charged continuously regardless of traffic. $0.25/hour ≈ $182.50/month |
| Data processing | per GB | Per-GB charge for traffic routed through the hub. Usage-based. ~$0.02/GB |
Sample C3X output
A Virtual WAN hub, 24/7 (base fee only; add gateways + data):
azurerm_virtual_hub.east
└─ Virtual hub unit 730 hours $182.50
Monthly $182.50Optimization tips
Common ways to reduce azurerm_virtual_hub cost without changing the workload.
Use Virtual WAN only for large multi-spoke topologies
The whole Virtual WAN overhead for small topologiesThe hub base (~$182.50/month) plus gateways and data processing only pays off for large, multi-region, many-spoke networks needing managed any-to-any routing. For 2-3 VNets, VNet peering plus a single VNet gateway is far cheaper.
Account for the full hub cost (gateways + data)
Gateway and data-processing portionThe hub fee is just the floor — VPN/ExpressRoute gateways inside the hub (by scale unit) and data processed add substantially. Size gateway scale units to need and route only necessary traffic through the hub.
Consolidate regions deliberately
~$182.50/month per avoided hubEach hub is regional and carries its own base fee. Deploy hubs only in the regions your topology genuinely needs, not one per region by default.
FAQ
How is an Azure Virtual WAN hub billed?
A per-hour hub fee (~$0.25/hour, ~$182.50/month) plus ~$0.02/GB of data processed through the hub. That's just the base — the full Virtual WAN bill also includes the VPN/ExpressRoute gateways inside the hub (by scale unit) and Azure Firewall for a Secured Hub.
Is Virtual WAN worth it over VNet peering?
For large, multi-region, many-spoke topologies needing managed any-to-any routing, yes. For simple 2-3 VNet setups, traditional VNet peering plus a single VNet gateway is far cheaper than the hub base fee plus gateways.
How does c3x estimate the cost?
It prices the hub's hourly base fee. Data processing and the gateways inside the hub (azurerm_vpn_gateway, etc.) are separate resources/usage, so add them for the full Virtual WAN cost.
Related resources
Estimate this resource in your own Terraform
Free, open source, no API key. C3X parses your Terraform and shows line-item cost for every resource, including azurerm_virtual_hub.