aws_ vpn_ connection cost estimation
A site-to-site IPsec VPN connection between your VPC and on-premises network. $0.05/hour per active connection plus data transfer.
An aws_
First, connection-hours: $0.05/hour per active VPN connection ($36.50/month per connection). Each VPN attaches to either a Virtual Private Gateway (aws_
Second, data transfer. Bytes flowing through the VPN are billed at standard AWS egress rates. There's no per-GB VPN-specific fee on top of egress.
High availability typically requires two VPN connections in active/standby. That's $73/month minimum for production VPN infrastructure before any traffic flows through.
Compared to alternatives: - AWS Direct Connect: dedicated physical connection. Higher fixed cost ($300+/month for 1 Gbps port) but no per-hour VPN fee. Right for high-throughput steady traffic. - AWS Client VPN: per-endpoint-hour and per-connected-user pricing. Right for remote workers connecting to AWS, not site-to-site. - VPC peering or Transit Gateway: for AWS-to-AWS connectivity, not on-premises.
c3x reads the VPN connection and any attached transit gateway from Terraform. Data transfer through the VPN is usage-based via c3x-usage.yml.
Terraform example
A minimal but realistic configuration that C3X can estimate.
resource "aws_vpn_gateway" "main" {
vpc_id = aws_vpc.main.id
}
resource "aws_customer_gateway" "office" {
bgp_asn = 65000
ip_address = "203.0.113.1"
type = "ipsec.1"
}
resource "aws_vpn_connection" "office" {
vpn_gateway_id = aws_vpn_gateway.main.id
customer_gateway_id = aws_customer_gateway.office.id
type = "ipsec.1"
static_routes_only = false
tags = {
Name = "office-to-aws"
}
}Pricing dimensions
What you actually pay for when you provision aws_.
| Dimension | Unit | What's being charged |
|---|---|---|
| VPN connection hours | per connection per hour | Active connection fee. Billed continuously while the connection is configured, regardless of traffic. $0.05/hour ≈ $36.50/month |
| Data transfer through VPN | per GB | Bytes transferred between AWS and on-premises via the VPN. Standard AWS egress rates apply. |
| Transit Gateway attachment (when applicable) | per hour + per GB processed | If the VPN attaches to a Transit Gateway instead of VPN Gateway, TGW attachment fees apply separately. |
| Virtual Private Gateway | free | The aws_ $0 |
Optimization tips
Common ways to reduce aws_ cost without changing the workload.
Consolidate VPNs with Transit Gateway
$36.50/connection/monthMultiple VPCs each with their own site-to-site VPN multiplies connection-hours. Routing through a single Transit Gateway with one VPN connection per office saves $36.50/month per eliminated connection.
Use Direct Connect for high-throughput steady traffic
Volume-dependentVPN is right for occasional or moderate traffic. For sustained high throughput (>500 Mbps), Direct Connect becomes cost-effective because there's no per-GB VPN data charge.
Remove dormant VPN connections
$36.50/month per removedVPN connections from old offices, decommissioned customer gateways, or test setups continue to bill. Audit aws_
Single VPN for non-production
$36.50/month per non-prodProduction needs two VPN connections for HA. Non-production environments often don't need that resilience. Single-VPN cuts cost in half.
FAQ
Is the VPN Gateway free?
The Virtual Private Gateway (aws_
How does Transit Gateway change VPN pricing?
When VPN connections attach to a Transit Gateway instead of a VPN Gateway, you pay both: the VPN connection-hour ($0.05) plus the Transit Gateway attachment fee ($0.05/hour) plus TGW data processing ($0.02/GB). Total is higher per connection but TGW lets you connect more VPCs and accounts together.
Does c3x estimate VPN data transfer?
Connection-hours are estimated directly. Data transfer is usage-based; specify monthly_
Site-to-site VPN vs Client VPN?
Site-to-site is for permanent connections between AWS and an on-premises network. Client VPN is for individual users connecting laptops to AWS. Different resources, different pricing models. Client VPN is aws_
Related resources
More AWS resources
Further reading
- AWS Site-to-Site VPN cost: cheap per connection, plus egress
Site-to-Site VPN bills about $0.05 per connection-hour (roughly $36/month) plus standard data transfer out. It is a cheap, quick way to connect on-premises to AWS over the internet. Here is the model and when to prefer Direct Connect.
- Direct Connect vs VPN cost: dedicated links versus encrypted tunnels
AWS Direct Connect gives a dedicated private link with lower, predictable data-transfer rates but port and setup costs. A Site-to-Site VPN is cheap to start but runs over the internet at standard egress rates. Here is the cost comparison.
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 aws_.