dataonaws
— Stack · Streaming

Amazon MSK

Apache Kafka as a managed service. You keep the Kafka API, clients and ecosystem; AWS runs the brokers, patching and storage. Producers write events, consumers read them, and MSK keeps the log. How you run it, on provisioned brokers or serverless, decides how you pay.

How it fits

Events in from producers, out to consumers. AWS runs the log in between.

PRODUCERSAMAZON MSKCONSUMERSYour appsKafka producer APIMSK Connectsource connectorsKafka elsewhereon-prem, ConfluentAuth + VPCIAM, SCRAM, mTLSMSK Replicatormigrate + sync offsetsBrokers + topicsthe log, by partitionProvisioned: StandardProvisioned: Expressor ServerlessTiered storageolder data, low costMSK Connectsink connectorsManaged Flinkstream processingYour consumersany Kafka clientS3, databases, searchwritten by connectorsIAM, SASL/SCRAM or mTLS auth · multi-VPC via PrivateLink · metrics and logs to CloudWatch

Clients talk the standard Kafka protocol, so existing producers, consumers, Connect and Streams code works unchanged. MSK handles broker provisioning, patching and storage. Tiered storage moves older log segments to a cheaper tier that clients still read through the Kafka API. MirrorMaker 2 still works for migration, but MSK Replicator is the managed path: it replicates topic data and metadata, synchronises consumer offsets, and supports bidirectional replication for phased cutover from on-prem, Confluent, Aiven, RedPanda, WarpStream or AutoMQ. S3 delivery (streaming tables as Iceberg, or raw files) is a native Express-broker capability, not a separate connector.

Three ways to run it

Same Kafka API, three deployment shapes.

Standard brokers

Provisioned, full control

You pick the broker instance type and count, set partitions and retention, and tune Kafka configs. The most control for steady, large or latency-sensitive workloads.

Express brokers

Provisioned, less to manage

Up to 3x more throughput per broker than Standard, according to AWS, with faster scaling and recovery. Storage is unlimited and managed, and you pay per GB written in on top of the instance hours.

Serverless

No brokers to size

You create a cluster and topics; MSK scales capacity. You pay per cluster-hour, per partition-hour, and per GB in and out. Fits bursty or unpredictable traffic.

The three choices that matter

A few decisions set the bill and the operating load.

01

Which MSK flavour

Standard gives the most control for large steady workloads. Express raises throughput per broker and manages storage, with a per-GB data-in charge. Serverless skips sizing entirely and bills per partition and per GB.

02

How clients authenticate

IAM authenticates clients and authorises Kafka actions with AWS policies, so there are no Kafka credentials to rotate. SASL/SCRAM and mTLS stay available for clients that cannot use IAM; Serverless supports IAM only.

03

Migrating off self-managed or Confluent

MSK Replicator moves topic data and metadata with no infrastructure to run, synchronises consumer offsets so you cut over producers and consumers at your own pace, and replicates both ways for rollback. MirrorMaker 2 still works if you want to run the tooling yourself.

Tag values describe mechanisms, not measured figures.

What you pay

An MSK bill, in one line.

Provisioned brokers
per broker-hour
Standard kafka.m7g.large $0.204/hr; Express express.m7g.large $0.408/hr, plus $0.01 per GB data-in; US East N. Virginia
+
Serverless
cluster + partition + data
$0.75 per cluster-hour, $0.0015 per partition-hour, $0.10/GB in, $0.05/GB out; US East
+
Storage
GB-months + tier
Primary $0.10 per GB-month; tiered storage $0.060 per GB-month plus $0.0015 per GB retrieved; US East
+
MSK Connect
per MCU-hour
$0.11 per MCU-hour (1 vCPU, 4 GB) per worker; US East N. Virginia
+
MSK Replicator
hourly + per GB
$0.30 per Replicator-hour plus $0.08 per GB processed; cross-region adds data transfer; US East
+
Private connectivity
hourly + per GB
Multi-VPC $0.0225 per hour per auth scheme plus $0.006 per GB processed; standard data transfer applies
What we see in production
Over-partitioned topics on Serverless.Serverless bills per partition-hour; a topic sized for a peak you never hit runs up the bill at idle.
Full retention kept on primary broker storage.Turn on tiered storage so older segments move to the cheaper tier; clients still read them through the Kafka API.
Standard brokers sized for the peak, idle most of the time.Express brokers give more throughput per broker and faster scaling; reprice before adding Standard capacity.
Hand-rolled MirrorMaker 2 for a one-time migration.MSK Replicator removes the cluster you would otherwise run and tune, and synchronises consumer offsets for you.
Kafka SASL/SCRAM credentials left to rotate by hand.Use IAM access control where clients allow it, so Kafka authorisation rides on AWS policies with nothing to rotate.
Cross-region replication costing more in transfer than compute.MSK Replicator adds standard cross-region data transfer on top of the per-GB processed charge; size it before enabling.
How we help

Industrial-grade data pipelines

Use cases in production, not POCs: tests, CI/CD, lineage, on-call that sleeps at night.

Read the approach →
PDF · coming soon

The one-page Amazon MSK field guide.

Best practices, cost traps and performance checks, in the order you should run them. Printable, no fluff.

One email when the PDF is ready. Nothing else unless you tick the box.