Apache Kafka End of Life —
Version EOL Dates & KRaft Migration Guide
Apache Kafka is the backbone of real-time data pipelines for thousands of organizations. It processes billions of events per day at companies ranging from startups to the largest financial institutions in the world. And because Kafka is so deeply embedded in infrastructure — often handling compliance-critical financial, health, or audit data — its version lifecycle deserves careful attention.
This guide covers every Apache Kafka version's end-of-life date, EOL Risk Score™, and what running an unsupported version means for a platform handling real-time, often irreplaceable data streams.
Key Dates at a Glance
- Apache Kafka 4.3: released 2026-05-20
- Apache Kafka 4.2: released 2026-02-17
- Apache Kafka 4.1: released 2025-09-02
- Apache Kafka 4.0: released 2025-03-18
- Apache Kafka 3.9: released 2024-11-06
- Apache Kafka 3.8: released 2024-07-26
- Apache Kafka 3.7: released 2024-02-26
- Apache Kafka 3.6: released 2023-10-03
Complete Apache Kafka EOL Schedule
Apache Kafka follows the Apache Software Foundation's standard project lifecycle. The community maintains the two most recent minor versions. Older versions receive no further development, bug fixes, or security patches once superseded.
| Version | Release | End of Life | Status | EOL Risk Score™ |
|---|---|---|---|---|
| Kafka 2.6 | Aug 2020 | Nov 2021 | EOL | 50 |
| Kafka 2.7 | Dec 2020 | Nov 2021 | EOL | 50 |
| Kafka 2.8 | Apr 2021 | Sep 2022 | EOL | 50 |
| Kafka 3.0 | Sep 2021 | Sep 2022 | EOL | 50 |
| Kafka 3.1 | Jan 2022 | Sep 2022 | EOL | 50 |
| Kafka 3.2 | May 2022 | Sep 2022 | EOL | 50 |
| Kafka 3.3 | Sep 2022 | Feb 2023 | EOL | 50 |
| Kafka 3.4 | Feb 2023 | Jun 2023 | EOL | 50 |
| Kafka 3.5 | Jun 2023 | Oct 2023 | EOL | 50 |
| Kafka 3.6 | Oct 2023 | Feb 2024 | EOL | 50 |
| Kafka 3.7 | Feb 2024 | Jul 2024 | EOL | 50 |
| Kafka 3.8 | Jul 2024 | Nov 2024 | EOL | 45 |
| Kafka 3.9 | Nov 2024 | TBD | Supported | 10 |
| Kafka 4.0 | Mar 2025 | TBD | Supported | 10 |
| Kafka 4.1 | Sep 2025 | TBD | Supported | 10 |
| Kafka 4.2 | Feb 2026 | TBD | Supported | 10 |
| Kafka 4.3 | May 2026 | TBD | Latest | 10 |
Kafka 2.8 — End of Life September 2022
Kafka 2.8 was a landmark release — it was the first version to ship KRaft mode (Kafka without ZooKeeper) as an early access feature. Many teams adopted 2.8 specifically to begin evaluating KRaft before committing to it. Those deployments, now nearly four years past EOL, are still seeing production traffic.
Kafka 3.9 and 4.x — Current Supported Versions
Of the Kafka 3.x series, only 3.9 is still in active support. Kafka 3.7 reached EOL in July 2024 and 3.8 followed in November 2024. Alongside 3.9, the entire 4.x line — 4.0 through 4.3 — is currently supported, with 4.3 the latest release. If you are on Kafka 3.8 or earlier, you are running an unsupported version regardless of how recently the 3.x release felt like a modern choice.
Kafka 4.0, released in March 2025, is the first version to fully remove ZooKeeper support. It requires KRaft mode exclusively and drops all ZooKeeper-related code. This is a significant migration milestone for any cluster still using ZooKeeper.
The ZooKeeper Deprecation and KRaft Migration
Apache Kafka's architectural shift away from ZooKeeper is the most significant infrastructure change in the project's history. In Kafka 3.x, ZooKeeper mode was deprecated. In Kafka 4.0, ZooKeeper mode is removed entirely.
This means any cluster still using ZooKeeper for cluster metadata cannot upgrade to Kafka 4.0 without first migrating to KRaft mode. Kafka 3.5 through 3.9 support a migration path from ZooKeeper to KRaft without downtime — if you haven't migrated yet, do it before attempting the 4.0 upgrade.
EOL Risk for Event Streaming Infrastructure
Kafka is different from most application-layer software because it stores data. An EOL web framework is a security risk; an EOL Kafka cluster is a security risk that also has custody of your data. CVEs affecting Kafka directly impact the confidentiality, integrity, and availability of every message in your topics.
Historically significant Kafka CVEs include authentication bypass vulnerabilities, SCRAM authentication weaknesses, and denial-of-service issues in the broker. On an EOL version, these are permanently unpatched. In regulated industries where Kafka carries financial, health, or PII data, the compliance implications are significant.
Apache Kafka currently carries an EOL Risk Score™ of 45/100 — Grade C, elevated risk, recalculated at every site build from EOL recency, attack surface, CISA KEV exposure, and extended-support availability. Per-version scores and dates are on the Apache Kafka lifecycle page.
The right response comes down to one question: how many more years does this system need to run? Under a year, extended support (where it exists) is usually cheaper than an emergency migration. One to three years, migrate — support fees paid repeatedly cost more than doing the project once. Indefinitely, migrate now and plan the next one before it surprises you. Extended support is often the more expensive choice over a multi-year horizon — a bridge, not a destination. And if this deadline feels like vendor caprice, it isn’t — why end of life is inevitable for every version, with the receipts.
Upgrading Apache Kafka
Rolling upgrades are supported
Kafka supports rolling upgrades — you upgrade brokers one at a time while the cluster continues serving traffic. The cluster runs in a mixed-version state during the upgrade, which is supported when moving between adjacent minor versions. This makes Kafka upgrades less disruptive than many application-layer upgrades.
Use inter-broker protocol version control
During a rolling upgrade, set inter.broker.protocol.version to the previous version to maintain compatibility across mixed-version brokers. Only bump this value after all brokers are on the new version. The same applies to log.message.format.version for 3.x clusters.
Check client compatibility
Kafka clients are generally backward-compatible with older brokers, but broker upgrades may expose client-side issues. The Kafka protocol version matrix documents which client versions are compatible with which broker versions. Update your producers and consumers as part of the upgrade project, not after.
Upgrade ZooKeeper to KRaft first if on 2.x/3.x
If targeting Kafka 4.0, the ZooKeeper-to-KRaft migration must be completed first. Run the kafka-metadata-migration.sh tool included in Kafka 3.5+ to migrate your ZooKeeper-based cluster metadata to KRaft without downtime.
Frequently Asked Questions
Which Apache Kafka versions are supported right now?
Apache Kafka has no formal end-of-life dates: the community publishes bug-fix releases for recent minor versions and expects users to run the latest — 4.3 (May 20, 2026), 4.2 (February 17, 2026) and 4.1 (September 2, 2025) are the current 4.x lines, and 3.9 (November 6, 2024) is the last 3.x release still receiving fixes as the ZooKeeper-capable bridge. Anything 3.8 or older, and every 2.x, should be treated as unsupported.
Is Kafka 3.x end of life?
Practically, yes for everything before 3.9. Kafka 3.9 is the final 3.x release and the last version that can run with ZooKeeper; it remains the supported stepping stone to KRaft. Kafka 4.0 (March 18, 2025) removed ZooKeeper entirely, so a 3.x cluster still on ZooKeeper must migrate to KRaft on 3.9 before upgrading to 4.x.
What changed in Kafka 4.0?
Kafka 4.0 (released March 18, 2025) runs only in KRaft mode — ZooKeeper support is gone — and it dropped the older wire-protocol versions and Java 8/11 broker support (brokers need Java 17+, clients Java 11+). Upgrading requires a KRaft cluster first, which is why the 3.9 bridge matters.
How do I check my Kafka version?
Run kafka-broker-api-versions.sh --bootstrap-server <host>:9092 or read the broker's startup log; the version also appears in JMX under kafka.server:type=app-info. Managed services (MSK, Confluent Cloud, Azure Event Hubs for Kafka) show the version in the console. Check the client library versions in your applications too — an old client can pin the protocol you can use.
Is there extended support for old Kafka?
Commercial distributions (Confluent Platform, and vendors offering support for older Apache Kafka lines) provide patched builds beyond the community's release cadence; that is the bridge for a 2.x or early-3.x cluster that cannot move to 3.9/4.x yet. See our extended support options page.