Estimate cloud networking costs from data transfer, NAT gateway and load balancer usage.
Cloud networking cost is rarely a single line item — it's the sum of metered data transfer (usually egress-only, since most providers don't charge for inbound traffic), hourly charges for always-on NAT gateways that let private-subnet resources reach the internet, and hourly charges for VPN gateways and load balancers that typically run continuously (730 hours/month). Data transfer costs scale with actual usage while the hourly-billed services accrue cost simply by existing, which is why idle or over-provisioned NAT gateways, VPNs, and load balancers are a common source of unexpected cloud networking spend.
Monthly cost
monthly = data_transfer_GB × $/GB + nat_hrs × $/hr + (vpn_hrs + lb_hrs) × $/hr
Cloud providers want to make it easy to bring data into their platform (encouraging adoption and stickiness) but the ongoing cost of running the network is recovered on outbound traffic, since egress is what actually traverses expensive internet peering/transit links — this asymmetric pricing model is standard across major providers.
NAT gateways are billed with an hourly charge for simply existing/running (in addition to a smaller per-GB data processing charge), reflecting the managed, highly-available infrastructure the provider maintains for it — this hourly cost accrues whether or not the gateway is actively processing significant traffic, so idle or redundant NAT gateways are a common cost optimization target.
Common levers include using VPC endpoints/private links to avoid NAT gateway traffic for provider-internal services (e.g. object storage), consolidating NAT gateways across availability zones where the availability tradeoff is acceptable, using a CDN to reduce origin egress for cacheable content, and right-sizing or consolidating load balancers rather than running one per small workload.