When teams compare managed Kubernetes, they fixate on the control-plane fee — but that’s rarely what blows the budget. The hidden costs live in networking and storage.
Load balancers
Every Service of type LoadBalancer usually provisions a cloud load balancer, and they’re billed separately from the control plane:
| Provider | Load balancer |
|---|---|
| Vultr | from $10/mo |
| DigitalOcean | from $12/mo |
| Linode/Akamai | from $10/mo |
| OVHcloud | ~$11.52/mo |
| AWS EKS | ALB/NLB ~$16–$22/mo + LCU usage |
Snapshot captured June 2026 — verify on each vendor’s pricing page. Consolidating Services behind a single ingress controller cuts the count (and cost).
Data egress — the silent killer
Egress (data leaving the cloud) is the cost teams most underestimate. Hyperscalers charge roughly $0.09/GB after a small monthly free tier, so a busy API or media app can rack up serious bills. Contrast that with:
- OVHcloud: unlimited free egress on instances.
- Civo: no egress fees on most plans.
- Oracle OKE: 10 TB/month free, then low per-GB.
- Hetzner: 20 TB/month included per server.
If you serve a lot of traffic, egress policy can matter more than every other line item combined.
The rest of the iceberg
- NAT gateways (AWS especially) bill per hour and per GB processed.
- Persistent volumes (block storage) are billed per GB-month.
- Cross-AZ / cross-zone traffic between nodes can be charged on hyperscalers.
- Support plans and extended/LTS Kubernetes versions add surcharges ($0.60/hr on EKS/AKS).
How to keep them down
- Use one ingress controller instead of many LoadBalancer Services.
- Pick a provider with free/generous egress if you’re traffic-heavy.
- Watch NAT and cross-AZ traffic on hyperscalers.
- Right-size persistent volumes and clean up orphaned ones.
Model the controllable parts (control plane + nodes + load balancers) in the calculator, then add your expected egress on top.