aws_ route_ table cost estimation
A route table is free. It is a set of routing rules for a VPC, and AWS charges nothing for the table, its routes, or its associations. Cost lives in the targets those routes point at.
An aws_
The cost is entirely in what the routes send traffic toward. A route to a NAT Gateway funnels outbound traffic through a resource that bills hourly plus per-GB processing. A route to a peering connection or transit gateway can incur cross-AZ or inter-region data transfer. A route to an interface VPC endpoint points at a component with its own hourly and per-GB charge. The route table is just the map; the destinations are what appear on the bill.
This makes the route table a useful audit surface. If a private subnet's default route (0.0.0.0/0) points at a NAT Gateway, every byte of internet-bound traffic from that subnet carries NAT processing cost, which a targeted S3 or DynamoDB gateway endpoint route can bypass for free. c3x prices the NAT Gateways, endpoints, and gateways your routes reference, and treats the route table itself as free.
Terraform example
A minimal but realistic configuration that C3X can estimate.
resource "aws_route_table" "private" {
vpc_id = aws_vpc.main.id
route {
cidr_block = "0.0.0.0/0"
nat_gateway_id = aws_nat_gateway.main.id
}
tags = {
Name = "private"
}
}Pricing dimensions
What you actually pay for when you provision aws_.
| Dimension | Unit | What's being charged |
|---|---|---|
| Route table and routes | free | The table, its routes, and subnet associations have no charge. $0 |
| NAT Gateway target | per hour + per GB | A default route to a NAT Gateway sends outbound traffic through a paid component. ~$0.045/hour + $0.045/GB processed |
| Peering / endpoint targets | per GB | Routes to peering connections or interface endpoints can add cross-AZ, inter-region, or endpoint data-processing charges. Cross-AZ: $0.01/GB each way |
Optimization tips
Common ways to reduce aws_ cost without changing the workload.
Add gateway endpoint routes to bypass NAT
Removes NAT processing on S3/DynamoDB trafficA route to a free S3 or DynamoDB gateway endpoint keeps that traffic off the NAT Gateway, removing the per-GB processing fee on it.
Audit default routes for expensive targets
A 0.0.0.0/0 route pointing at a NAT Gateway means every internet-bound byte is billed. Confirm the subnet actually needs outbound internet before keeping it.
Prefer same-region peering targets
Routes across inter-region peering carry inter-region transfer rates. Keep peered traffic in-region where the architecture allows.
FAQ
Does an AWS route table cost money?
No. Route tables, the routes inside them, and subnet associations are all free. You pay only for the paid targets the routes point at, such as NAT Gateways or interface endpoints.
Is there a charge per route or per association?
No. There is no per-route or per-association fee. There are account quotas on routes per table, but no price attached to them.
How can a route table increase my bill?
Only indirectly, through its targets. A default route to a NAT Gateway makes outbound traffic incur NAT processing, while a route to a free gateway endpoint would avoid it. The table is the map, not the charge.
Related resources
More AWS resources
Further reading
- VPC gateway vs interface endpoint cost: free vs per-hour PrivateLink
Gateway VPC endpoints for S3 and DynamoDB are completely free, while interface endpoints cost about $0.01 per hour per AZ plus $0.01 per GB. Knowing which services use which endpoint type, and how the fees stack across AZs, keeps PrivateLink affordable. Here is the breakdown.
- AWS NAT Gateway costs: 3 alternatives that actually save money
NAT Gateway is the second-most-expensive AWS resource for many production workloads. Here's how to cut its cost by 60-90% using free VPC Gateway Endpoints, paid Interface Endpoints, and NAT instances.
- AWS data transfer costs explained
The most opaque part of the AWS bill, broken down. Internet egress, cross-region, cross-AZ, NAT processing, CloudFront, VPC endpoints. The five biggest cost surprises and how to fix them.
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_.