Comparison · Kafka

Managed Kafka Options Compared

When a team decides it does not want to run every part of Kafka itself, the answer takes one of four shapes. This page puts them side by side on the same criteria. AceMQ sells two of them, and the page still says where the other two win.

Tyler Eastridge

By Tyler Eastridge, Head of Operations

LinkedIn · Updated

5 min read6 sections
On this page
Short answer

Short answer

If the workload is standard, already in a public cloud and not bound by data residency, a hosted service is the fastest route: Confluent Cloud for the fullest Kafka feature set and connectors, Amazon MSK for AWS-native billing and IAM. If the data cannot leave your account, the estate is customised, or you run components the platform does not offer, self-managed Kafka with a support contract keeps control and adds an engineer when it breaks. Operated for you on your infrastructure sits between: your account, your topology, someone else's pager. Running it yourself with no contract is right only for teams that have done it before and have the on-call rota to prove it.

Four ways to run Kafka, on the same criteria

Four ways to run Kafka, on the same criteria
Confluent CloudAmazon MSKSelf-managed with a support contractOperated for you (AceMQ managed operations)
Where the cluster livesConfluent's account, in your chosen cloud and regionYour AWS account, as a managed serviceWherever you put itYour infrastructure or cloud account
Who chooses the versionConfluentAWS, from its supported listYouYou, with an upgrade path planned and executed for you
Connectors and componentsConfluent's catalogue and Schema Registry, ksqlDB, Stream GovernanceMSK Connect and the open-source ecosystem; check each connectorAnything Apache Kafka supportsAnything Apache Kafka supports
Who answers an incidentConfluent support tiersAWS support tiers for the service; your team for topics, consumers and connectorsYour on-call, with the contract as escalation to a senior engineerNamed senior engineer, 24/7, 15-minute emergency SLA
Cost shapeUsage-based; throughput, storage, connectors and partitions billed separatelyBroker-hours and storage on the AWS invoiceInfrastructure plus a contract priced on cluster count and response tierEngineer time; more than a support contract, without infrastructure leverage
Data residency and complianceConfluent's account; check region and attestationsYour account and regionUnchangedUnchanged
ExitMirror out; connectors and governance features do not travelMirror out; MSK-specific IAM auth does not travelNothing to exitRunbooks and monitoring stay yours; exit is a handover
Wins whenYou want the fullest managed feature set and are not residency-boundAll-AWS estate, standard workload, procurement simplicityCustom estate, residency constraint, or a capable platform teamNo Kafka specialist to spare and the data cannot move
Table · Four ways to run Kafka, on the same criteria. Scroll sideways on small screens.

Confluent Cloud

The fullest managed Kafka: Confluent runs the cluster in its account in your chosen cloud and region, and sells the surrounding platform with it: Schema Registry, a connector catalogue, ksqlDB, stream governance, and tiered storage. Support follows the product and is authoritative on it. Cost is usage-based, which is easy to start and hard to forecast; throughput, storage, connectors and partitions are billed on separate lines. It wins when you want the platform, not just the broker, and are not bound by where the data lives.

Amazon MSK

Kafka as an AWS service inside your own account: brokers on a supported version list, IAM authentication, CloudWatch metrics, and billing on the AWS invoice. AWS supports the service; your topics, consumers, connectors and the incidents that come from them are yours, which is why MSK estates so often carry an independent support contract at the Kafka layer. It wins for an all-AWS estate with a standard workload and a procurement team that prefers one vendor.

Self-managed Kafka with a support contract

You run the cluster; a senior engineer is on the other end of the contract when it breaks, and alongside you for upgrades, KRaft migration and capacity. Open-source Apache Kafka is fully supportable this way, and so is Confluent Platform. It keeps version choice, connector freedom and data residency entirely yours, at a cost well below a managed service. It fits a platform team that can hold the pager and wants expertise rather than outsourcing.

Operated for you, on your infrastructure

The cluster stays in your account, on your VMs or Kubernetes, and a specialist takes over monitoring, patching, upgrades, capacity and on-call. Nothing about data residency changes. It costs more than a support contract, because it is engineer time with no infrastructure leverage, and it exists for estates where nobody on the team wants to own Kafka and the data cannot move to a hosted platform.

Self-hosted Kafka vs cloud: what actually decides it

The self-hosted versus cloud question is usually framed as cost, and cost is the least reliable way to answer it. Four things decide it more cleanly. Where the data must live: a residency or air-gap obligation rules out a vendor-account service before price is discussed. Who holds the pager: self-hosting is cheap until the first multi-hour incident with nobody who has seen that failure before. How predictable the load is: usage-billed cloud Kafka is cheapest for spiky or small workloads and gets expensive on steady high throughput, which is where self-hosted hardware is at its best. How much of the platform you use: if you need Schema Registry, managed connectors and governance, you are buying a platform and cloud wins; if you need brokers, you are renting machines at a markup.

There is a middle that the question hides: self-hosted Kafka with someone else operating it, or with a support contract behind your own team. Both keep the data and the version choice in your account and remove the 3am problem.

How to decide in one pass

  1. Can the data leave your account? If not, Confluent Cloud is out; MSK stays in if you are on AWS.
  2. Do you need Confluent's platform components, or just Kafka? If the platform, Confluent Cloud or Confluent Platform. If just Kafka, any of the other three.
  3. Is there a platform team that can hold the pager? If yes, self-managed with a support contract. If no, a hosted service or operated-for-you.
  4. Is the estate customised, or on a version a platform will not run? If yes, self-managed or operated-for-you.

Frequently asked questions

Is self-hosted Kafka better than cloud Kafka?

Neither is better in general. Self-hosted Kafka wins when data must stay in your own account, when throughput is high and steady, or when you need version and connector freedom. Managed cloud Kafka wins for small or spiky workloads, for teams with nobody to hold the pager, and when you want the surrounding platform such as Schema Registry and managed connectors. A third option is self-hosted Kafka that a specialist operates or supports for you.

Is Confluent Cloud or Amazon MSK better?

Confluent Cloud for the fullest managed feature set, connector catalogue and stream governance, in any major cloud. MSK for an all-AWS estate that wants Kafka on the AWS invoice with IAM. If the data cannot leave your account, MSK or self-managed; if you need Confluent's components, Confluent.

Does AWS support cover Kafka problems on MSK?

AWS supports the MSK service: broker availability, the managed control plane. Your topics, consumer groups, connectors and the incidents they cause are outside that boundary, which is why MSK estates commonly add independent Kafka support.

Can I get support for self-managed open-source Kafka?

Yes. Apache Kafka is fully supportable as open source under an independent contract, AceMQ's included, with 24/7 cover and a 15-minute emergency SLA, and the same contract can cover MSK and Confluent Platform clusters.

What does it cost to have Kafka operated for you?

More than a support contract, because it is engineer time with no infrastructure leverage, and it is priced on cluster and broker count plus the response tier. The trade is a named engineer holding the pager on an estate that stays in your account.

Kafka services

Where this gets done

The work behind this page, run by the same engineers who wrote it.

More resources

Other Kafka guides, comparisons and research

From the blog

Recent Kafka articles

Next step

Need this done on your Kafka estate?

Named senior Kafka engineers, 24/7, with a 15-minute emergency SLA — self-managed, MSK or Confluent Platform.