DEV Community

Cover image for EKS vs GKE vs AKS in 2026: The Real Cost of 100 Nodes
Muskan
Muskan

Posted on

EKS vs GKE vs AKS in 2026: The Real Cost of 100 Nodes

The hidden complexity of Kubernetes pricing

We measured a production 100-node Kubernetes cluster. Compute was 62% of the bill. The other 38% came from line items no one priced in. Here's what EKS, GKE, and AKS actually cost in 2026, line by line, and which one wins for your workload.

The compute price is the only one you see on the pricing page.

The control plane fee, egress bandwidth, persistent volumes, load balancers, IP allocations, and observability ingestion are not. We measured a real production 100-node cluster and that hidden 38% wrecked the original forecast.

Each provider structures the layers differently:

  • EKS — flat control plane fee per cluster
  • GKE — cluster-hour billing with tiered modes
  • AKS — free control plane on standard clusters, paid for SLA

Why egress creates the biggest variance

Egress moved one team's bill the most. A cluster pushing 10TB/month outbound pays wildly different rates depending on whether the data crosses zones, regions, or hits the internet.

One team migrated from Provider A to Provider B and cut egress spend by 43% — same workload, just a better-matched billing model.

Storage compounds quietly

Persistent volumes bill independently of compute. We tracked one cluster where storage costs grew 3x in six months while node count rose only 15%.

The seven cost layers that stack up under any Kubernetes cluster
All seven layers stack — pricing only compute underestimates total cost by 30–50% in Q1.


The 100-node benchmark: what we're comparing

Why 100 nodes

  • Below 20 nodes: control plane fees dominate
  • Above 500 nodes: enterprise discounts distort list pricing
  • At 100 nodes: list pricing applies and architecture drives the cost differences

Node specification

Each node is a 4-vCPU / 16GB RAM general-purpose instance:

Provider Instance type Region tested
EKS m5.xlarge us-east-1
GKE n2-standard-4 us-central1
AKS D4s v5 East US

Spot, reserved, and savings plans are excluded — the goal is list-price parity.

The 100-node benchmark: equivalent 4 vCPU / 16GB instance on each provider, six cost components compared
Six cost components compared per provider on a matched 4-vCPU node.

Six components in the model

  1. Compute instance hours
  2. Control plane fees
  3. Inter-zone data transfer
  4. Persistent disk provisioning
  5. Load balancer runtime
  6. NAT gateway charges

Observability ingestion and registry storage are excluded because they depend on application behavior, not the platform.


Compute and control plane

Compute (100 nodes, 730 hours/month)

Provider Per node/month 100 nodes/month
EKS — m5.xlarge USD 140.16 USD 14,016
GKE — n2-standard-4 USD 141.62 USD 14,162
AKS — D4s v5 USD 134.32 USD 13,432

AKS comes in cheapest on raw compute. Don't celebrate yet — control plane and disk pricing flip the rankings.

Control plane — the biggest structural difference

  • EKS: USD 0.10/cluster hour → USD 73/month flat, idle or not
  • GKE Standard: USD 0.10/cluster hour → USD 73/month (Autopilot bills per vCPU instead)
  • AKS: free without SLA, USD 0.10/hour only if you enable the 99.95% uptime guarantee

This matters most for ephemeral and non-prod clusters:

Pattern: 8 staging clusters, 72 hours/sprint each
EKS  → USD 219/month in control plane fees alone
AKS  → USD 0 (best-effort SLA acceptable for staging)
Enter fullscreen mode Exit fullscreen mode

Control plane pricing diverges sharply — EKS flat fee, GKE flat fee, AKS free unless SLA enabled
Control plane pricing is the single biggest structural divergence between the three platforms.


Networking: where the bill gets weird

Cross-zone traffic

Kubernetes spreads pods across zones for resilience, then every cross-zone call costs you.

Volume crossing zones EKS GKE AKS
15 TB/month USD 150 USD 140 USD 150

GKE's per-GB rate drops from USD 0.01 to USD 0.008 after 10TB — only data-heavy workloads see the break.

Internet egress (20 TB/month outbound)

Provider First 10TB Beyond 20TB total
EKS USD 0.09 / GB USD 0.085 USD 1,750
GKE USD 0.085 / GB down to USD 0.08 USD 1,650
AKS USD 0.087 / GB USD 0.083 USD 1,697

Egress scales with users, not with infrastructure. That's the part that keeps growing after launch.


The hidden costs that diverge most

Persistent disk — the silent budget eater

This one shocked me when I ran the numbers.

Provider Disk type USD/GB/month 10TB cluster
EKS gp3 USD 0.08 USD 800
AKS Premium SSD USD 0.12 USD 1,200
GKE Balanced PD USD 0.17 USD 1,700

GKE's disk pricing is 2.1x EKS. But GKE bundles 6 IOPS/GB — on EKS you pay extra per provisioned IOPS, which adds ~USD 1,500/month at 100 nodes for equivalent performance. The headline number lies in both directions.

Load balancers

  • EKS: USD 0.0225/ALB hour + USD 0.008 per LCU
  • GKE: USD 0.025/forwarding rule hour + USD 0.008 per GB
  • AKS: USD 0.025/hour first 5 rules + USD 0.005 per GB (cheapest data rate)

Microservice architectures with dozens of endpoints feel the rule-count difference fastest.

NAT gateway — the image-pull tax

Every container image pull and external API call routes through NAT.

A 100-node cluster pulling 500GB of images and pushing 300GB to external logging = USD 134.55/month in NAT charges on EKS. You pay this even if the cluster does literally nothing else.


Real-world scenarios change the math

Batch processing (80% CPU, 12 hours/day)

Compute identical to 24/7 — idle hours bill at full rate. Cloud providers charge for provisioned capacity, not consumed CPU cycles.

Logging aggregation (500 GB/day → 15 TB/month)

Provider Storage cost Storage as % of bill
EKS USD 1,200 8%
AKS USD 1,800 11%
GKE USD 2,550 15%

Same workload, 2x storage cost variance depending on platform.

Video transcoding (100 TB egress/month)

Egress alone exceeds compute by 60%. GKE wins here because volume tiers kick in past 10TB. AKS has no volume tier — flat USD 0.087/GB hurts at scale.

Burstable CI/CD

Provisioning 100 nodes 24/7 for a workload that uses 20 baseline + 80 burst-for-8-hours = USD 14,016/month wasted. Autoscaling cuts that to USD 6,086. Skipping the AKS SLA drops control plane to zero on top.


Which one should you pick?

This is the part where most comparisons hand-wave. Here's the rule I use:

Identify which cost component will grow fastest as your workload scales — pick the platform that prices that component cheapest.

Pick EKS if…

  • Your stack lives inside AWS (S3, RDS, Lambda) — keeps egress cross-service free
  • You already own reserved instances or savings plans → 30% off node groups instantly
  • Storage stays under 5 TB/month

Pick GKE if…

  • Workload runs 24/7 year-round — sustained-use discount auto-applies, ~30% off compute, no commit
  • Storage exceeds 10 TB/month and needs high IOPS — bundled 6 IOPS/GB beats EKS's IOPS surcharge
  • Egress is high (50TB+) — volume tiers kick in

Pick AKS if…

  • You run lots of non-prod clusters — free control plane saves USD 876/year per 12 dev environments
  • Egress stays under 5TB/month
  • Ingress data processing is heavy — USD 0.005/GB through load balancers is the cheapest on the market

One-line decision matrix

Your bottleneck Pick
AWS service integration EKS
24/7 predictable runtime GKE
Storage growth > 10 TB/month GKE
Non-prod cluster sprawl AKS
Egress > 50 TB/month GKE

Top comments (0)