EKS Pricing
Understanding EKS pricing is critical before you create your first cluster. Unexpected costs are the #1 complaint from new EKS users. This page breaks down every cost component.
EKS Cost Components
EKS Total Cost
┌────────────────────────────────────────────────────┐
│ │
│ ┌──────────────┐ You always pay this │
│ │ EKS Cluster │ $0.10/hr = $73/month │
│ │ Fee │ │
│ └──────────────┘ │
│ + │
│ ┌──────────────┐ Depends on node type │
│ │ Compute │ EC2: instance pricing │
│ │ (Nodes) │ Fargate: per vCPU/GB/sec │
│ └──────────────┘ │
│ + │
│ ┌──────────────┐ Often overlooked! │
│ │ Networking │ NAT GW: $32/month/AZ │
│ │ │ Data transfer: varies │
│ └──────────────┘ │
│ + │
│ ┌──────────────┐ Per GB-month │
│ │ Storage │ EBS gp3: $0.08/GB/month │
│ │ │ EFS: $0.30/GB/month │
│ └──────────────┘ │
└────────────────────────────────────────────────────┘
1. EKS Cluster Fee
| Plan |
Cost |
When It Applies |
| Standard Support |
$0.10/hr ($73/month) |
K8s versions in standard support window |
| Extended Support |
$0.60/hr ($438/month) |
K8s versions past standard support (e.g., 1.27) |
Important: The cluster fee is per cluster, regardless of how many nodes you run (even zero). You pay this even when no workloads are running.
2. Compute Costs
EC2 Nodes (On-Demand)
| Instance Type |
vCPU |
Memory |
Cost/hr |
Cost/month |
Max Pods |
| t3.medium |
2 |
4 GB |
$0.0416 |
$30 |
17 |
| t3.large |
2 |
8 GB |
$0.0832 |
$61 |
35 |
| m5.large |
2 |
8 GB |
$0.0960 |
$70 |
29 |
| m5.xlarge |
4 |
16 GB |
$0.1920 |
$140 |
58 |
| m5.2xlarge |
8 |
32 GB |
$0.3840 |
$280 |
58 |
EC2 Nodes (Spot — up to 90% cheaper)
| Instance Type |
On-Demand |
Spot (typical) |
Savings |
| m5.large |
$0.096/hr |
$0.035/hr |
64% |
| m5.xlarge |
$0.192/hr |
$0.070/hr |
64% |
| c5.xlarge |
$0.170/hr |
$0.055/hr |
68% |
Fargate
| Resource |
Cost/hr |
| Per vCPU |
$0.04048 |
| Per GB memory |
$0.004445 |
Example: A pod requesting 0.5 vCPU and 1 GB memory costs ~$0.025/hr = $18/month.
3. Networking Costs (The Hidden Killer)
| Component |
Cost |
Notes |
| NAT Gateway |
$0.045/hr + $0.045/GB |
~$32/month per AZ (even with zero traffic) |
| Data Transfer (cross-AZ) |
$0.01/GB each way |
Pods talking across AZs add up |
| Data Transfer (internet) |
$0.09/GB out |
First 100 GB/month free |
| Elastic IP |
Free (if attached) |
$0.005/hr if unattached |
⚠️ Warning: If you deploy NAT Gateways in 3 AZs (recommended for HA), that’s $96/month just for NAT — more than the EKS cluster fee itself!
4. Storage Costs
| Storage Type |
Cost |
Use Case |
| EBS gp3 |
$0.08/GB/month |
Default for most workloads |
| EBS io2 |
$0.125/GB/month |
High-performance databases |
| EFS |
$0.30/GB/month (standard) |
Shared storage across pods |
| FSx for Lustre |
$0.14/GB/month |
HPC workloads |
Real-World Cost Examples
Development Cluster
Dev Cluster (minimal)
├── EKS cluster fee: $73/month
├── 2x t3.medium (On-Demand): $60/month
├── NAT Gateway (1 AZ): $32/month
├── EBS (20 GB gp3): $1.60/month
└── TOTAL: ~$167/month
Production Cluster
Production Cluster (typical)
├── EKS cluster fee: $73/month
├── 6x m5.xlarge (3 On-Demand + 3 Spot): ~$630/month
├── NAT Gateways (3 AZs): $96/month
├── ALB: ~$22/month
├── EBS (500 GB gp3): $40/month
├── Data transfer: ~$50/month
└── TOTAL: ~$911/month
Cost Optimization Tips
- Use Spot instances for stateless workloads — save 60-90%
- Use Fargate for bursty workloads — pay only when pods run
- Use 1 NAT Gateway for dev (accept single AZ risk to save $64/month)
- Right-size nodes — don’t use m5.2xlarge when m5.large is enough
- Use Karpenter — automatically picks the cheapest instance type
- Delete unused clusters —
eksctl delete cluster when done
- Stay on standard support — extended support costs 6x more
- Use topology-aware routing — reduce cross-AZ data transfer
Common Mistakes
| Mistake |
Cost Impact |
| Forgetting to delete test clusters |
$167+/month per forgotten cluster |
| NAT Gateways in all 3 AZs for dev |
Extra $64/month for no benefit |
| Using On-Demand for everything |
60-90% more than needed |
| Oversized instances |
Paying for unused CPU/memory |
| Not monitoring costs |
Bills snowball without visibility |
Quick Reference
| Component |
Typical Monthly Cost |
| EKS cluster (standard) |
$73 |
| t3.medium node (On-Demand) |
$30 |
| m5.large node (On-Demand) |
$70 |
| NAT Gateway (per AZ) |
$32 |
| ALB |
$22 + data processed |
| EBS gp3 (100 GB) |
$8 |
What’s Next?
Now let’s compare EKS with other AWS container services in EKS vs ECS vs Fargate.