AWSAmazon MSKAnalytics

aws_msk_serverless_cluster cost estimation

A serverless Apache Kafka cluster that scales automatically. Priced per cluster-hour plus partition-hours, storage, and data in/out.

An aws_msk_serverless_cluster runs Apache Kafka without provisioning brokers: capacity scales with your throughput and you pay for what you use. The cost has a small always-on base plus several usage meters, which makes it cheaper than provisioned MSK for spiky or low-throughput workloads.

The base is a cluster-hour fee of roughly $0.75/hour (about $548/month) that applies while the cluster exists. On top of that you pay per partition-hour (each partition you create bills hourly), per GB-month of storage, and per GB of data in and data out. For a steady high-throughput pipeline, partition-hours and data charges dominate; for a quiet cluster, the base fee does.

c3x prices the cluster-hour base at 730 hours/month and treats partition-hours, storage, and data transfer as usage-based dimensions supplied in c3x-usage.yml. The serverless model avoids the broker-sizing guesswork of provisioned MSK, but the ~$548 base means it's not free at idle; compare against aws_msk_cluster for sustained heavy workloads where provisioned brokers can be cheaper.

Terraform example

A minimal but realistic configuration that C3X can estimate.

resource "aws_msk_serverless_cluster" "events" {
  cluster_name = "events"

  vpc_config {
    subnet_ids         = aws_subnet.private[*].id
    security_group_ids = [aws_security_group.msk.id]
  }

  client_authentication {
    sasl {
      iam {
        enabled = true
      }
    }
  }
}

Pricing dimensions

What you actually pay for when you provision aws_msk_serverless_cluster.

DimensionUnitWhat's being charged
Cluster hoursper hourAlways-on base fee while the cluster exists. c3x assumes 730 hours/month.
$0.75/hour (~$548/month)
Partition hoursper partition-hourEach partition billed per hour. Usage-based; scales with topic/partition design. Define in c3x-usage.yml.
Storageper GB-monthData retained in the cluster. Usage-based.
Data in / outper GBThroughput written to and read from the cluster. Usage-based.

Sample C3X output

Example output from c3x estimate (base cluster fee only):

aws_msk_serverless_cluster.events
└─ Cluster hours              730  hours    $547.50

OVERALL TOTAL                              $547.50
(partition-hours, storage, throughput usage-based)

Optimization tips

Common ways to reduce aws_msk_serverless_cluster cost without changing the workload.

Compare against provisioned MSK for steady high throughput

Workload-dependent

Serverless wins for spiky or low-throughput workloads. For sustained heavy streaming, provisioned aws_msk_cluster brokers can be cheaper per GB. Estimate both at your real throughput.

Control partition count

Partition-hour reduction

Each partition bills per hour. Over-partitioning topics for hypothetical future scale inflates partition-hours. Size partitions to current throughput and repartition when you actually need to.

Tune retention to cut storage

Storage on long retention

Storage bills per GB-month of retained data. Shorter retention or tiered storage for cold data lowers the storage meter for high-volume topics.

FAQ

How does c3x estimate MSK Serverless cost?

It prices the cluster-hour base at 730 hours/month and treats partition-hours, storage, and data in/out as usage-based dimensions supplied in c3x-usage.yml.

Why does an idle MSK Serverless cluster still cost ~$548/month?

There's a base cluster-hour fee (~$0.75/hour) that applies while the cluster exists, independent of throughput. Only the partition, storage, and data meters scale with usage.

Is serverless cheaper than provisioned MSK?

For spiky or low-throughput workloads, usually yes, you avoid broker over-provisioning. For sustained high throughput, provisioned aws_msk_cluster brokers can be cheaper per GB. It depends on your traffic shape.

What drives cost for a busy cluster?

Partition-hours and data in/out. A cluster with many partitions and heavy throughput accrues far more than the base fee. Model expected partitions and GB in the usage file.

Is the VPC networking included?

MSK Serverless runs in your VPC. Any cross-AZ data and VPC endpoints it uses bill under networking. The Kafka meters above are the cluster's own charges.

Related resources

Estimate this resource in your own Terraform

Free, open source, no API key. C3X parses your Terraform and shows line-item cost for every resource, including aws_msk_serverless_cluster.