Last updated: June 2026
Azure Container Apps is a serverless container platform billed by per-second consumption with scale-to-zero and a monthly free grant. AKS is managed Kubernetes billed by the VM nodes you run. The cheaper option depends on utilization, not on which platform is "better".
- Spiky, bursty, or low-traffic services: Container Apps usually wins, because idle time costs nothing.
- Steady, high-utilization fleets: AKS usually wins, especially on reserved or spot nodes.
- Container Apps free grant: 180,000 vCPU-seconds, 360,000 GiB-seconds, and 2 million requests per subscription per month.
- The break-even is the point where a workload runs busy enough that committed VM capacity beats per-second pricing.
Azure Container Apps is a fully managed serverless container service that bills by the vCPU-second and gibibyte-second your replicas actually consume, while Azure Kubernetes Service (AKS) is managed Kubernetes that bills by the virtual machine nodes in your cluster regardless of how busy they are. That single difference, pay for usage versus pay for capacity, drives the entire cost comparison. This article is part of our Azure cluster; start with the complete guide to Azure cost optimization, the pillar this piece links up to.
How does each one bill?
Container Apps bills consumption; AKS bills capacity. On the Container Apps consumption plan you pay per second for the vCPU and memory your replicas are allocated while running, and an application can scale to zero replicas when there are no requests or events, at which point it costs nothing. The first 180,000 vCPU-seconds, 360,000 GiB-seconds, and 2 million requests per subscription each month are free, per Azure Container Apps pricing. AKS, by contrast, charges for the VM nodes in your node pools by the hour or second, busy or idle, plus a small charge for the cluster control plane tier you select; see the AKS node pool documentation. With AKS you pay for the box; with Container Apps you pay for the work.
Which is cheaper, Container Apps or AKS?
For spiky and low-traffic workloads Container Apps is cheaper, and for steady high-utilization fleets AKS is cheaper. The reason is utilization. A service that handles bursts of traffic and sits idle the rest of the day wastes most of an always-on AKS node, while Container Apps simply stops billing when the service is quiet. A service that runs near full utilization around the clock is the opposite case: per-second consumption pricing adds up, and a reserved or spot AKS node delivering the same compute at a committed rate comes out ahead.
The scorecard
Here is the side-by-side on the criteria that actually move the bill.
| Criterion | Azure Container Apps | Azure Kubernetes Service (AKS) |
|---|---|---|
| Billing model | Per-second consumption (vCPU-s, GiB-s, requests) | Per VM node, plus control plane tier |
| Scale to zero | Yes, native, no charge while idle | Not per-workload by default; nodes bill while running |
| Free monthly grant | 180k vCPU-s, 360k GiB-s, 2M requests | None on compute |
| Commitment discounts | Limited; consumption-led | Reservations and savings plans on nodes |
| Spot pricing | Not exposed directly | Spot node pools up to 90% off |
| Operational overhead | Low; platform manages scaling | Higher; you run Kubernetes |
| Best cost fit | Bursty, intermittent, low-traffic | Steady, high-utilization, large fleets |
Running both and not sure which is bleeding money?
Our Azure cost audit profiles each containerized workload by its real traffic shape, models Container Apps consumption against AKS committed-node cost, and moves each service to the cheaper platform. On the performance model, you pay only from realized savings. No savings, no fee.
Book an Azure cost audit →Where is the break-even between them?
The break-even is the utilization level at which committed AKS node capacity costs less than the equivalent Container Apps consumption. Below that line, idle time is the dominant cost and Container Apps wins by not charging for it. Above it, the workload is busy enough that buying raw VM capacity at a reserved or spot rate beats paying per-second. There is no universal percentage, because it shifts with region pricing, instance family, and how aggressively you reserve, so the honest answer is to model both for your specific traffic profile rather than trust a rule of thumb. For the node-cost side of that model, the levers are in Azure Kubernetes Service spot node pools: a cost guide.
Can you mix them to cut cost?
Yes, and the cheapest estate often does. A common pattern is to run the steady core services, ingress, and stateful workloads on AKS with reserved and spot nodes, while pushing the bursty event handlers, scheduled jobs, and low-traffic internal tools to Container Apps so they cost nothing when idle. Splitting workloads by traffic shape rather than forcing everything onto one platform is usually how the lowest total bill is reached. This is the same portfolio thinking we apply across the Azure cost optimization program.
Pricing models, the free grant, and spot discounts reflect Azure as of June 2026. Verify current consumption rates, the free grant, and node pricing in the linked Azure documentation before sizing a migration, because container and compute pricing changes.
The Azure Cost Optimization Field Guide includes the container platform decision worksheet and the consumption-versus-committed model we use to place each workload. It is the downloadable companion to this article.
Frequently asked questions
Is Azure Container Apps cheaper than AKS?
For spiky, bursty, or low-traffic workloads, Container Apps is usually cheaper because it scales to zero and bills per second of actual usage, including a monthly free grant. For steady, high-utilization workloads running around the clock, AKS on reserved or spot nodes is usually cheaper because you pay for raw VM capacity at committed rates.
Does Azure Container Apps scale to zero?
Yes. A Container Apps application can be configured to scale to zero replicas when there are no requests or events, and no usage charges apply while it is at zero. AKS does not scale node pools to zero for a single workload in the same automatic, per-request way without additional tooling.
What is the Azure Container Apps free grant?
On the consumption plan, the first 180,000 vCPU-seconds, 360,000 GiB-seconds, and 2 million requests per subscription each calendar month are free. Many small or intermittent services fit inside this grant and cost nothing to run.
When should I choose AKS over Container Apps for cost?
Choose AKS when you run many services at steady high utilization, need full Kubernetes control, or can commit nodes to reservations and spot to drive the per-unit rate down. At sustained scale, paying for raw committed VM capacity beats per-second consumption pricing.
The short version
Container Apps bills usage and scales to zero, so it wins on bursty and low-traffic services; AKS bills capacity and discounts it through reservations and spot, so it wins on steady, high-utilization fleets. Most estates are cheapest with a mix, placing each workload by its traffic shape. When you want every container moved to the platform that costs least, that is exactly what our Azure cost optimization service delivers.
Cloud pricing and service behavior change frequently. Verify the specifics in this guide against the providers’ own current documentation and the FinOps Foundation: Azure pricing ↗, Azure documentation ↗ and FinOps Foundation Framework ↗. This article also reflects Cloud Cost Room’s hands-on, vendor-neutral engagement experience.