Data Transfer Modeling: NAT, Endpoints, CloudFront, and Hybrid

Key Takeaways

  • Task 2.6 requires data-transfer modeling on new designs; Task 3.5 is reading CUR usage types when NAT, inter-AZ, or egress line items explode on an already-built network
  • Same-AZ private-IP traffic is the cheap intra-VPC path; inter-AZ replication is billed; inter-Region and internet egress are progressively more expensive patterns
  • NAT Gateway hourly plus per-GB processing is a classic private-subnet bill; gateway VPC endpoints for Amazon S3 and Amazon DynamoDB remove that processing for those prefixes at no extra endpoint charge
  • Amazon CloudFront is usually the professional answer for global internet egress of cacheable content; keep Amazon S3 in-Region for application data unless cross-Region replication is an explicit durability/latency requirement
  • AWS Direct Connect outbound is the volume hybrid path; Site-to-Site VPN is encrypted internet overlay and inherits internet-style transfer economics
Last updated: September 2026

Model the path before you buy the pipe

Task 2.6 on the official SAP-C02 outline explicitly lists data transfer costs and the skill of performing data transfer modeling. That is a new-solution activity: draw every packet path while the VPC is still a diagram. Task 3.5 is the opposite tempo: CUR already shows NatGateway-Bytes, DataTransfer-Regional-Bytes, or inter-Region AWS-Out-Bytes, and you must stop the hemorrhage. Task 1.5 still applies because those usage types are often shared-platform costs that tagging never captured—Cost Categories and a networking-account showback rule belong next to the technical fix.

Do not quote a memorized per-gigabyte figure on the exam unless the item prints one. Rates vary by Region pair and change. What does not change is the ranking of paths and which service removes which charge.

The qualitative cost ladder

Inbound data transfer into AWS is generally free. Almost every painful bill is outbound or inter-node.

PathTypical exam economicsWhen it shows up
Same AZ, private IP, same VPCNo data-transfer chargeApp to local cache, local EFS mount targets you kept AZ-local
Inter-AZ (same Region), private IPBilled each way for many EC2/VPC patterns; Multi-AZ HA is not freeSynchronous DB replication, chatty east-west microservices, cross-AZ load balancer to target
Same Region Amazon S3 to EC2In-Region S3 data transfer into EC2 is the cheap/free pattern relative to crossing RegionsApp reads of an in-Region bucket
Interface VPC endpoint (PrivateLink)Hourly per AZ plus per-GB data processing, traffic stays on the AWS networkPrivate access to AWS APIs other than S3/DynamoDB gateway endpoints
NAT GatewayHourly plus per-GB data processing, on top of the destination's transfer chargesPrivate subnet IPv4 to the internet or to AWS public endpoints if you did not use VPC endpoints
Inter-RegionOutbound from the source Region billed at inter-Region ratesS3 Cross-Region Replication, Aurora Global Database, backup copies, dual-Region active-active
Internet egress from Region public endpointsAmong the most expensive common pathsUsers pulling from ALB/EC2/S3 directly
Amazon CloudFront to viewersEdge cache; origin-to-CloudFront fetch is a preferential path compared with sending every byte from the origin to the internet; viewer egress is CloudFront regional transferPublic websites, APIs, software downloads
AWS Direct Connect outboundPort-hour plus DX data-transfer-out, typically lower than internet egress at steady high volumeHybrid data-center pipelines
AWS Site-to-Site VPNIPsec over the internet; transfer follows internet-style economics, not DX ratesBackup connectivity, low-volume admin

Public or Elastic IP hairpinning even inside a Region can attract regional data-transfer charges that private IP would not. Keep east-west traffic on private addresses.

NAT Gateway bills exploding: existing forensics and new design

The signature Task 3.5 stem is a private-subnet fleet whose NAT Gateway line item rivals compute. NAT Gateway charges per hour per AZ (you usually deploy one NAT per AZ for HA, which multiplies the hourly component) and per gigabyte processed. That processing fee applies to every byte the NAT sees: software updates, third-party APIs, and Amazon S3 or Amazon DynamoDB if the route to those public endpoints still goes 0.0.0.0/0 → NAT.

Gateway VPC endpoints for S3 and DynamoDB are the first architectural fix. They are route-table prefixes, they do not use PrivateLink ENIs, and AWS offers them with no additional hourly or per-GB endpoint charge. After you add the routes, S3 and DynamoDB traffic never hits the NAT, so NAT processing for that volume drops to zero. You may still pay inter-AZ transfer if the instance and the endpoint path cross AZs; place endpoints and workloads with AZ affinity where the volume is huge.

Interface VPC endpoints cover most other AWS APIs (Amazon SQS, Amazon SNS, Amazon ECR, AWS Systems Manager, Amazon CloudWatch, and so on). They do charge hourly per AZ and per-GB processing, but for high-volume AWS API traffic they still often beat NAT because you avoid NAT processing and internet egress to the public AWS endpoint. For a new VPC (Task 2.6), decide the endpoint set on day one. For an existing VPC (Task 3.5), read CUR: if NatGateway-Bytes correlates with S3 GetObject from private subnets, add the gateway endpoint before you buy a bigger NAT.

Do not “fix” NAT cost by adding more NAT Gateways unless you have AZ-by-AZ throughput or resiliency evidence. Extra NATs add hourly charges. Compute Optimizer can now recommend NAT Gateway rightsizing on existing gateways; that is a 3.5 overlay, not a substitute for endpoints.

CloudFront, S3 same-Region versus cross-Region

If humans on the public internet download cacheable bytes, Amazon CloudFront is usually cheaper and faster than opening the bucket or the ALB to the world. Origin fetches from S3 or EC2 to CloudFront do not use the same internet-egress economics as serving every viewer from the origin. Cache hit ratio is the cost control: cache POSTs? No. Cache versioned software artifacts and media? Yes. Lambda@Edge / CloudFront Functions add compute at the edge; they are performance tools that can reduce origin load, not a blank check.

Same-Region S3 is the default for application data sitting next to compute. S3 Cross-Region Replication (CRR) adds inter-Region data transfer out plus duplicate storage. Use CRR when the requirement is distance, sovereignty, or Region isolation—not as a casual cost-optimization. S3 Transfer Acceleration is a performance path via edge locations for long-haul uploads; it is an extra transfer component, not a discount plan.

Direct Connect versus VPN, and inter-AZ honesty

AWS Direct Connect is the professional answer for steady, high-volume hybrid transfer: a dedicated (or hosted) port billed per hour, plus data-transfer-out over DX that is typically lower than sending the same bytes out the internet through a NAT or a VPN. AWS Site-to-Site VPN remains the right backup or low-volume overlay: it is quick to stand up and it encrypts over the internet, so it does not inherit DX transfer rates. A 50 TB/month nightly warehouse feed on VPN is an exam smell; the same feed on DX with VPN as failover is the pattern.

Inter-AZ cost is the HA tax. Multi-AZ RDS, Aurora storage replication, and three-AZ Kubernetes are still the reliability default. The cost lever is chatty application traffic: session stores, mesh sidecars, and chatty microservices that replicate every request across AZs. AZ-aware routing, local caches (Amazon ElastiCache with same-AZ readers where consistency allows), and not forcing every byte through a central inspection VPC unless a security requirement says so, are Task 2.6 modeling choices. After the fact, CUR regional transfer line items plus VPC Flow Logs tell you which pair of subnets is talking.

Transit Gateway and inspection hubs add data processing of their own. Centralizing NAT or inspection for dozens of VPCs is a valid security architecture; it is also how a networking account becomes the largest bill in showback. Pair the technical design with Task 1.5 Cost Categories so product teams see the allocated TGW/NAT bytes rather than treating the networking account as a mystery tax.

ScenarioNew-solution move (2.6)Existing-bill move (3.5)
Private subnets, heavy S3/DynamoDBGateway endpoints in the VPC templateAdd gateway endpoints; confirm NAT bytes fall
Global static and videoCloudFront in front of S3/ALBMeasure origin egress versus CloudFront; raise cache hit ratio
50 TB/month to on-premisesDX primary, VPN backupShift bulk prefixes to DX; leave VPN for failover
Chatty 3-AZ meshSame-AZ affinity for east-west; keep Multi-AZ for HAFind regional-bytes in CUR; reduce cross-AZ chatter
Dual-Region active-activeBudget inter-Region replication as a first-class costVerify CRR/global DB transfer, not only storage class
Test Your Knowledge

CUR shows that NAT Gateway data processing in a production VPC now rivals Amazon EC2 cost. Private-subnet workloads read and write heavily to Amazon S3 and Amazon DynamoDB in the same Region, and they also call a third-party HTTPS API on the internet. What should the architect do first to cut the NAT processing that is specific to AWS storage?

A
B
C
D
Test Your Knowledge

A new consumer app will serve cacheable media to global viewers, keep application objects in Amazon S3 next to Amazon EC2 in one Region, and run a Multi-AZ service tier. Product wants Multi-AZ HA but has seen inter-AZ bills explode on a previous chatty mesh. Which data-transfer model is appropriate at design time?

A
B
C
D
Test Your Knowledge

Each night an analytics account copies about 50 TB from Amazon S3 in us-east-1 to an on-premises warehouse. A Site-to-Site VPN already exists for administration. Finance wants the recurring bulk copy to cost less than internet-style egress without waiting on a new application rewrite. Which connectivity choice should the architect recommend?

A
B
C
D