EKS pricing has a deceptive simplicity: $0.10/hour per cluster. That's $73/month for the control plane. Simple, right? Except the control plane is usually the smallest part of your bill. The real costs are the nodes running your pods, the load balancers routing traffic, the EBS volumes storing data, and the NAT Gateways connecting private subnets to the internet.
A "simple" EKS cluster with 3 worker nodes, an ALB, and standard networking easily costs $400-600/month — and production clusters with autoscaling typically run $2,000-10,000/month.
TL;DR: EKS control plane: $73/month per cluster. Worker nodes: depends on EC2 instances or Fargate pricing. Real monthly cost for a small production cluster: $500-800. Main savings levers: Graviton nodes (20% cheaper), Spot instances for stateless workloads (60-90% off), Karpenter for intelligent autoscaling, and right-sizing pods to avoid wasted node capacity.
EKS Pricing Components
Control Plane
| Feature | Price |
|---|---|
| Standard cluster | $0.10/hour ($73/month) |
| Extended support (K8s versions) | $0.60/hour ($438/month) after end of standard support |
| EKS Auto Mode | $0.10/hour + managed node markup |
The control plane is fully managed — API server, etcd, scheduler. You don't choose its size; AWS scales it automatically. See the EKS pricing page for the latest rates.
Compute (Worker Nodes)
This is where 50-70% of your EKS bill comes from. You have three options:
| Option | How It Works | Best For |
|---|---|---|
| EC2 Managed Node Groups | You choose instance types, AWS manages ASG | Full control, Savings Plans eligible |
| Fargate | AWS provisions compute per pod | No node management, variable workloads |
| EKS Auto Mode | AWS selects and manages instances automatically | Simplicity, hands-off |
EC2 node pricing examples (3 nodes):
| Instance | vCPU | Memory | Monthly (3 nodes) |
|---|---|---|---|
| m7g.large (Graviton) | 2 | 8 GiB | $178 |
| m7i.large (Intel) | 2 | 8 GiB | $223 |
| m7g.xlarge (Graviton) | 4 | 16 GiB | $314 |
| c7g.xlarge (Graviton) | 4 | 8 GiB | $268 |
Fargate pricing per pod:
| Resource | Price |
|---|---|
| vCPU | $0.04048/hour |
| Memory | $0.004445/GB-hour |
| Storage | $0.000111/GB-hour (beyond 20GB) |
A pod with 1 vCPU and 2GB RAM costs ~$36/month on Fargate vs ~$15-25 on EC2 (depending on bin-packing efficiency). Fargate is simpler but 40-60% more expensive per pod.
Networking
| Component | Typical Monthly Cost |
|---|---|
| Application Load Balancer | $22 + $5.60/LCU-hour |
| NAT Gateway (2 AZs) | $65 + data processing |
| VPC Endpoints (ECR, S3, etc.) | $15-30 |
| Data transfer (cross-AZ pod communication) | $10-50 |
Add-Ons
| Add-On | Price |
|---|---|
| CoreDNS, kube-proxy, VPC CNI | Free (EKS manages) |
| EBS CSI Driver | Free |
| AWS Load Balancer Controller | Free |
| GuardDuty for EKS | $1.00/million audit events |
| CloudWatch Container Insights | $0.30/hour/node |
EKS vs ECS: Cost Comparison
| Factor | EKS | ECS |
|---|---|---|
| Control plane | $73/month per cluster | Free |
| EC2 compute | Same pricing | Same pricing |
| Fargate compute | Same pricing | Same pricing |
| Kubernetes ecosystem | Full K8s API, Helm, etc. | ECS-specific API |
| Complexity | Higher (K8s expertise needed) | Lower |
| Multi-cloud portability | Yes (standard K8s) | No (AWS-only) |
Bottom line: ECS saves $73/month per cluster and is simpler. Choose EKS only if you need Kubernetes specifically — for portability, ecosystem tools (Helm, ArgoCD, Istio), or team expertise.
Cost Optimization Strategies
1. Use Graviton Nodes (20% Savings)
Switch node groups from Intel (m7i) to Graviton (m7g). Same workload, 20% less per node. Most container images support ARM64 via multi-arch builds.
2. Spot Instances for Stateless Pods (60-90% Savings)
Run stateless workloads (web servers, workers, batch jobs) on Spot nodes. Use Karpenter to automatically provision the cheapest available Spot instances. Keep stateful workloads (databases, queues) on On-Demand.
3. Karpenter for Intelligent Autoscaling
Karpenter (AWS's open-source autoscaler) provisions the right instance types based on pod requirements. Refer to the EKS user guide for setup instructions. It bin-packs pods more efficiently than Cluster Autoscaler, reducing node waste by 20-30%.
4. Right-Size Pod Requests
Over-requesting CPU and memory is the biggest source of Kubernetes waste. If a pod requests 1 vCPU but uses 0.2, you're wasting 80% of that reserved capacity. Use Vertical Pod Autoscaler (VPA) recommendations to right-size.
5. Consolidate Clusters
Each EKS cluster costs $73/month for the control plane. Many organizations run separate clusters for each environment when namespaces would suffice. Consolidate dev, staging, and QA into a single cluster with namespace isolation.
6. Savings Plans for Baseline Nodes
Apply Compute Savings Plans to your baseline On-Demand node capacity. A 1-year No Upfront plan saves 30-40% on the instances that always run.
Related Guides
- ECS vs EKS vs Fargate Comparison
- Kubernetes Cost Optimization Guide
- AWS Fargate Pricing Guide
- AWS EC2 Pricing Guide
Frequently Asked Questions
How much does EKS cost per month?
The EKS control plane costs $73/month per cluster. Total cost depends on worker nodes: a small production cluster with 3 m7g.large Graviton nodes, an ALB, and standard networking costs approximately $500-800/month. Large clusters with autoscaling typically run $2,000-10,000/month.
Is EKS more expensive than ECS?
Yes, by $73/month per cluster (the control plane fee). ECS has no control plane charge. Compute costs (EC2 or Fargate) are identical between the two. Choose EKS for Kubernetes ecosystem benefits, not cost savings.
Should I use Fargate or EC2 for EKS nodes?
EC2 managed node groups are 40-60% cheaper per pod due to bin-packing efficiency and Savings Plans eligibility. Use Fargate for workloads that are small, variable, or where you want zero node management overhead. Most production clusters use EC2 for baseline capacity and Fargate for burst.
How do I reduce EKS costs?
The biggest levers: Graviton nodes (20% off), Spot instances for stateless pods (60-90% off), right-sizing pod requests (20-30% waste reduction), Karpenter for efficient bin-packing, and Savings Plans for On-Demand baseline nodes.
Control Your Kubernetes Costs
EKS bills are 80% compute and networking — the control plane fee is just the entry ticket. Focus optimization on:
- Graviton nodes — 20% cheaper, same performance
- Spot for stateless workloads — 60-90% savings via Karpenter
- Right-size pod requests — Eliminate the 30-40% waste hidden in over-provisioned pods
- Consolidate clusters — One cluster with namespaces vs multiple clusters
- Savings Plans for baseline — 30-40% off nodes that always run
Lower Your EKS Costs with Wring
Wring helps you access AWS credits and volume discounts to lower your EKS costs. Through group buying power, Wring negotiates better rates so you pay less per cluster hour.
