Azure Container Apps vs AKS cost: serverless or a managed cluster?
Container Apps bills per resource-second and scales to zero; AKS bills node VMs 24/7 and gives full Kubernetes. Here's the crossover and when each is the cheaper, simpler choice.
Quick answer
Container Apps bills per active resource-second and scales to zero — cheaper for spiky or low-traffic services with no cluster to manage. AKS bills node VMs 24/7 and is cheaper for steady, densely-packed workloads, plus gives full Kubernetes. Use Container Apps for standard microservices with variable load; use AKS when you need raw Kubernetes or run flat-out enough to pack nodes.
Azure gives you two ways to run containers, and they sit at opposite ends of the manage-it-yourself spectrum. The cost difference follows the same rule as every serverless-vs-nodes comparison: pay-per-use wins when load is uneven, pay-for-capacity wins when it's steady and dense.
Two billing models
- Container Apps (Consumption): active vCPU-seconds + GiB-seconds while replicas run, scaling to zero when idle, plus a per- request charge. No node management, no cluster fee. See the Container App pricing page for the per-second rates.
- AKS: the node Virtual Machine Scale Set bills per hour, 24/7, plus an optional ~$73/month control-plane SLA fee. The nodes are the bill — see AKS cost optimization.
The crossover
- Container Apps wins: spiky, low-traffic, or scale-to-zero workloads. You pay for the seconds you serve and nothing when idle — and you skip node management entirely.
- AKS wins: steady, high-utilization workloads you can pack densely onto nodes, where the lower per-unit node price beats the per-second premium. Reservations and Spot pools widen the gap.
It's not only about price
Container Apps deliberately hides Kubernetes. If you need DaemonSets, custom operators, service meshes, GPUs, or specific networking, AKS is the answer regardless of the cost comparison — Container Apps simply can't express those. Conversely, if your workload is "run this container, scale it on HTTP traffic," paying for and operating a full AKS cluster is overhead you don't need.
A decision rule
- Standard microservices/APIs with variable load, no raw-Kubernetes needs? Container Apps.
- Steady, dense workloads or full Kubernetes requirements? AKS, with autoscaling and Spot pools.
- Mixed? Container Apps for the bursty front-end services, AKS for the steady stateful core.
This is the Azure version of Cloud Run vs GKE and Fargate vs EC2 — same trade, different cloud.
FAQ
Is Azure Container Apps cheaper than AKS?
For spiky, low-traffic, or scale-to-zero workloads, yes — Container Apps bills per active resource-second and drops to zero when idle, while AKS pays for node VMs 24/7. For steady, high-utilization workloads that keep nodes packed, AKS is usually cheaper per unit. The crossover is utilization and whether you need full Kubernetes.
How does Container Apps billing differ from AKS?
Container Apps (Consumption) bills active vCPU-seconds and GiB-seconds while replicas run, scaling to zero when idle. AKS bills the underlying Virtual Machine Scale Set nodes per hour, continuously, regardless of pod activity. One is pay-per-use serverless; the other is pay-for-capacity.
When should I use AKS over Container Apps?
When you need full Kubernetes: custom controllers, DaemonSets, GPUs, service meshes, fine-grained networking, or specific operators. Also when you run enough steady workload to keep nodes densely packed, where AKS's lower per-unit node price beats Container Apps' per-second premium.
When is Container Apps the better choice?
For microservices and APIs that don't need raw Kubernetes, especially with variable or low traffic. Scale-to-zero means idle apps cost nothing, and there's no cluster or node management. It's the simpler, cheaper option for most standard container workloads that aren't running flat-out 24/7.
Can I avoid the AKS control-plane fee with Container Apps?
Container Apps has no separate cluster fee — you pay for the environment and the resource-seconds your apps use. AKS charges $0 (Free tier) or ~$73/month (Standard SLA tier) for the control plane plus the node VMs. For a handful of small services, Container Apps avoids both the fee and the node minimum.
How does C3X compare them?
C3X prices an azurerm_container_app from its CPU/memory and an azurerm_kubernetes_cluster from its node pools, so you can put serverless containers next to a node-based cluster on your real Terraform before choosing.
What to do next
Put both on the same page at your real workload size. C3X prices an azurerm_container_app and an azurerm_kubernetes_cluster so the serverless-vs-nodes cost is concrete before you commit the architecture. The quickstart runs it in minutes.
Share this post
Try C3X on your own Terraform
Free and open source. No API key required. One command to install, one command to estimate.