Azure bandwidth pricing charges per GB that leaves a region for the internet or for another region, and around it sit hourly prices for the network devices in between: private endpoints, NAT Gateway, Standard Load Balancer, Application Gateway, VPN Gateway and ExpressRoute gateways, each with its own GB meter for data processed, plus public IP addresses by the hour. What dominates the bill is rarely the devices themselves but the GB meters attached to them: every GB through a NAT gateway, a private endpoint or a load balancer is processed and billed there, and a GB that then leaves the region is billed once more on the bandwidth meter.
Pricing dimensions
| What is metered | Unit | What drives it | Optional |
|---|---|---|---|
| Internet egress | per GB by zone of the source region, tiered: the first 100 GB per month free, then four tiers up to 500 TB; Germany West Central sits in Zone 1 (North America and Europe) | Responses to users, downloads, replication outside Azure; two price lists depending on routing preference (Microsoft global network or internet) | No, inbound is free |
| Transfer between regions | per GB; one price within Europe, a higher one to other continents | Replication, backups and service calls across regions; global VNet peering meters ingress and egress separately | Yes, through region choice |
| Transfer between availability zones | On the read date the documentation says Microsoft does not charge for data transfer between availability zones of the same region, with private or public addressing; the price list still carries the meters Standard Inter-Availability Zone Data Transfer Out and In | Zone-redundant architectures | No |
| Private endpoint | per endpoint and hour plus per GB processed, inbound and outbound separately, tiered from 1 PB and 5 PB per month | Number of endpoints per PaaS resource and virtual network, data volume; the Private Link service itself is free | Yes |
| NAT Gateway | per gateway and hour from creation, even without a subnet or IP, plus per GB processed (outbound and return traffic); Standard and StandardV2 cost the same | Outbound connections of private subnets; since 2026-03-31 new virtual networks have no default outbound access | Yes |
| Standard Load Balancer | per hour for the first five rules, per additional rule and hour, plus per GB processed inbound and outbound; inbound NAT rules free, no charge without rules; the global tier has no data charge; the gateway SKU per gateway, chain and GB | Number of load-balancing and outbound rules, data volume | Yes |
| Application Gateway v2 | a fixed price per hour while the gateway exists plus capacity units per hour; one CU covers 2,500 persistent connections, 2.22 Mbps or one compute unit, and every instance set manually or as the autoscale minimum reserves 10 CUs; WAF v2 with a higher fixed and CU price, Basic v2 below | Connections, throughput, TLS handshakes, WAF rules; a partial hour counts in full | Yes |
| VPN Gateway | per gateway SKU and hour (VpnGw1 to VpnGw5 and the AZ variants), per site-to-site tunnel and hour, per point-to-site connection and hour, plus egress at bandwidth rates | Throughput class, number of tunnels and clients; Microsoft is moving the non-AZ SKUs to AZ SKUs | Yes |
| ExpressRoute | circuit per month by bandwidth and plan (metered or unlimited), Standard or the Premium add-on; metered circuits add egress per GB by zone; Local circuits include egress; gateway per hour by SKU; provider charges separate | Bandwidth, reach (Local, Standard, Premium), data volume | Yes |
| Public IP addresses | per address and hour by SKU: Standard static, global, prefix per address; the Basic SKU was retired on 2025-09-30; IPv6 carries no charge | Number of frontends, gateways and VMs with their own address | Yes |
| Purchase option | No reservations and no savings plans for networking services; EA and MCA discounts apply to the list prices, see on-demand pricing |
The bandwidth meters bracket everything else: data transfer within a region is free, inbound traffic is free, and a GB pays only when it leaves the region. A private endpoint, a NAT gateway or a load balancer bills its GB as data processed in addition to the transfer, not instead of it; the pricing pages of NAT Gateway, Load Balancer and Private Link say so explicitly. Which tier a GB lands in is tiered pricing per subscription and month.
How it appears in your billing data
In the cost export ConsumedService is Microsoft.Network for all of these lines, but MeterCategory differs per service. Bandwidth carries the products Rtn Preference: MGN and Bandwidth - Routing Preference: Internet with the meters Standard Data Transfer Out, Standard Data Transfer In, Standard Inter-Region Data Transfer and the two inter-availability-zone meters; the ResourceId of a bandwidth line is the resource whose data leaves the region, such as the VM or the storage account, not a network device. Virtual Network bundles the products IP Addresses (Standard IPv4 Static Public IP, Global IPv4 Static Public IP), Public IP Prefix, Global Virtual Network Peering (Inter-Region Egress, Inter-Region Ingress) and Virtual Network Private Link with Standard Private Endpoint, Standard Data Processed - Ingress, Standard Data Processed - Egress and Standard Service Endpoint Virtual Network. NAT Gateway carries Standard Gateway, Standard Data Processed and StandardV2 Log Enabled; Load Balancer carries Standard Included LB Rules and Outbound Rules, Standard Overage LB Rules and Outbound Rules, Standard Data Processed and the gateway meters; Application Gateway separates the products Application Gateway Standard v2, WAF v2 and Basic v2, each with a Fixed Cost and a Capacity Units meter; VPN Gateway carries the SKU as the meter (VpnGw1AZ) beside S2S Connection and P2S Connection; ExpressRoute carries the circuit (Standard Metered Data 1 Gbps Circuit), Metered Data - Data Transfer Out and the gateway (ErGw1AZ Gateway).
Two quirks confuse allocation. First, the meters of NAT Gateway, Load Balancer and Private Link are listed without a region in the price list (armRegionName Global), and the export's field reference names such meters explicitly: MeterRegion otherwise matches the resource location, but not for meters shared across regions; the region then sits only in ResourceLocation. Second, ExpressRoute is billed per circuit and month while every other line runs by the hour or by the GB, and circuit prices apply per zone of the peering location, not per Azure region. The export's fields are described on the page about Azure cost exports; in the FOCUS export ServiceName carries the meter's service name, ServiceCategory is Networking, and ChargeCategory is Usage for every networking line (FOCUS columns). Billed on other meters are the flow logs and diagnostic logs of the gateways (Azure Monitor and Log Analytics), egress from storage accounts (Blob Storage) and the load balancers an AKS cluster creates for its services (Azure Kubernetes Service).
Levers
Configuration:
- Routing preference. The internet variant of the bandwidth meter sits below the Microsoft global network variant in every tier in Germany West Central; it is chosen per public IP and trades path for price. The trade-off belongs to data transfer optimisation.
- NAT only for traffic that has to go outside. Traffic to a PaaS service in the same region costs per GB processed through a NAT gateway; the same traffic through a private endpoint costs less than a quarter in the example below.
- Rules and instances count. A Standard Load Balancer without rules costs nothing, every rule beyond five costs per hour; an Application Gateway with manual scaling reserves 10 CUs per instance, autoscale with a minimum of zero bills only the CUs used plus the fixed price.
- Gateway SKU by throughput. VPN Gateway and the ExpressRoute gateway cost per SKU and hour; a SKU above the measured throughput is rightsizing as with a VM.
Purchase option:
- Metered against unlimited. ExpressRoute circuits come with egress per GB or with a flat rate; the crossover is the data volume at which the difference of the monthly prices divided by the GB price is reached, and Local circuits include egress for one or two regions in the same metro. No networking service has a reservation.
Architecture:
- Regions and zones. Transfer within a region is free, between zones free according to the documentation, between regions not; replication to a second region is a permanent GB line that architecture choices and cost should set deliberately. What a pair of EU regions costs is on the page about EU regions and price differences.
- Pool endpoints. Every private endpoint costs per hour; one endpoint per resource and virtual network in every environment adds up faster than the data through it.
- Orphaned devices. A NAT gateway without a subnet, a public IP without an association, a VPN gateway after the project keep billing by the hour and belong among idle and orphaned resources.
Where it goes wrong
- Two lines for one GB. Symptom: data transfer appears twice. Cause: a GB through NAT Gateway, Load Balancer or a private endpoint is billed there as data processed and again on the bandwidth meter when it leaves the region; both lines are correct.
- NAT data for Azure services. Symptom: high
Standard Data Processedlines on the NAT gateway without notable internet egress. Cause: backups, container images or storage access run through the NAT gateway to the public endpoint of an Azure service; a private endpoint or a service endpoint takes that traffic off the NAT meter. - A fixed price without traffic. Symptom: an Application Gateway costs the same every month although it sees hardly any requests. Cause: the fixed price runs from creation, and a manually scaled instance reserves 10 CUs per hour.
- Meters without a region. Symptom: NAT, load balancer and Private Link lines drop out of an analysis by
MeterRegion. Cause: these meters are shared across regions; group byResourceLocationinstead. - Peering traffic between regions. Symptom: lines under
Global Virtual Network Peeringalthough no internet egress takes place. Cause: global VNet peering meters every GB as egress and ingress on each side; only peering within the region is free of it. - Tunnels and clients by the hour. Symptom: VPN cost above the SKU price. Cause: every site-to-site tunnel and every point-to-site connection costs per hour on top of the gateway, and egress through the tunnel runs on the bandwidth meter.
Example
List prices from the Azure Retail Prices API in EUR, read on 2026-10-21; the regional meters for Germany West Central, the region-less meters of NAT Gateway and Private Link from the list without a region: a NAT gateway costs EUR 0.039599 per hour and EUR 0.039599 per GB processed, a private endpoint EUR 0.0088 per hour and EUR 0.0088 per GB inbound or outbound, a Standard IPv4 address EUR 0.0044 per hour. For 10,000 GB a month to a storage account in the same region the path through the NAT gateway costs EUR 28.91 in hours plus EUR 395.99 in data plus EUR 3.21 for the public IP, EUR 428.11 in total; the path through a private endpoint costs EUR 6.42 in hours plus EUR 88.00 in data, EUR 94.42 in total. If the same traffic left the region for the internet, EUR 0.076558 per GB in the first tier after the free 100 GB would come on top over the Microsoft global network, EUR 757.92 for 9,900 GB; between two European regions a GB costs EUR 0.017599. The figures show that for traffic to Azure services the private endpoint undercuts the NAT gateway by a wide margin, and that internet egress exceeds any device price many times over.
Sources
Read on 2026-10-21. Microsoft: Bandwidth pricing, Availability zones, NAT Gateway, NAT Gateway pricing, Private Link, Private Link pricing, Load Balancer SKUs, Load Balancer pricing, Application Gateway pricing model, VPN Gateway SKUs, ExpressRoute FAQ, Public IP addresses, Cost details fields, FOCUS cost export schema. Prices: Azure Retail Prices API, EUR, queries for Bandwidth, Virtual Network, Application Gateway, VPN Gateway and ExpressRoute gateways in Germany West Central, ExpressRoute circuits (Zone 1), NAT Gateway, Load Balancer and Private Link among the region-less networking meters.