Apache Kafka Lifecycle Intelligence

Apache Kafka End of Life —
Version EOL Dates & KRaft Migration Guide

By Scott Bissett Updated 2026-08-09 · endoflife.ai · 9 min read

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

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.

VersionReleaseEnd of LifeStatusEOL Risk Score™
Kafka 2.6Aug 2020Nov 2021EOL50
Kafka 2.7Dec 2020Nov 2021EOL50
Kafka 2.8Apr 2021Sep 2022EOL50
Kafka 3.0Sep 2021Sep 2022EOL50
Kafka 3.1Jan 2022Sep 2022EOL50
Kafka 3.2May 2022Sep 2022EOL50
Kafka 3.3Sep 2022Feb 2023EOL50
Kafka 3.4Feb 2023Jun 2023EOL50
Kafka 3.5Jun 2023Oct 2023EOL50
Kafka 3.6Oct 2023Feb 2024EOL50
Kafka 3.7Feb 2024Jul 2024EOL50
Kafka 3.8Jul 2024Nov 2024EOL45
Kafka 3.9Nov 2024TBDSupported10
Kafka 4.0Mar 2025TBDSupported10
Kafka 4.1Sep 2025TBDSupported10
Kafka 4.2Feb 2026TBDSupported10
Kafka 4.3May 2026TBDLatest10
⚠ Kafka moves fast
Apache Kafka releases a new minor version roughly every four months. EOL dates arrive quickly — Kafka 3.8 has been EOL since November 2024, and every 3.x release except 3.9 is now out of support. If your team is more than one minor version behind, you are likely already EOL or approaching it.
Running Apache Kafka past end of life?
Extended support past the official EOL date exists for many products in this position — whether it covers Apache Kafka is exactly what we check. Tell us where to reach you and we’ll reply with matched options and pricing guidance — or an honest “no vendor covers this.” Free, no obligation.

Free · No obligation · Independent — we track the dates, vendors don’t pay for placement · dates verified against vendor sources. See all support options →

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.

EOL Risk Score™
Kafka 2.8 · EOL since Sep 2022 · see the live score

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.

EOL Risk Score™
Kafka 3.9 · Supported (last 3.x release) · see the live score

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.

ZooKeeper is also EOL
Apache ZooKeeper 3.6 reached end of life in December 2022, and ZooKeeper 3.7 followed in January 2024. ZooKeeper 3.8 and 3.9 are currently supported. If your Kafka cluster uses ZooKeeper, check the EOL status of your ZooKeeper installation independently — it is a separate EOL risk from your Kafka version.

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.

What to do about it

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.

Monitor your full data stack
Kafka rarely runs alone. Check the EOL status of your Kafka ecosystem: Java (Kafka requires Java 11+, recommends Java 17 or 21), your Linux distribution, and any Kafka connectors or stream processing frameworks (Kafka Streams, Flink, Spark). The EOL Checker lets you look up all of these individually.

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.

The Monthly EOL Digest™

Once a month — critical end-of-life dates, CVE blind spots, and lifecycle changes worth knowing about.

✓ You're on the list.