The Fundamental Distinction: Oracle JDK vs OpenJDK

Before examining individual Java versions, it is essential to understand the distinction that drives every answer to the "is Java free?" question: the difference between Oracle JDK and OpenJDK distributions.

Oracle JDK is the distribution of the Java Development Kit that Oracle publishes directly at oracle.com/java. Oracle JDK has been subject to changing licence terms since 2019, and those terms determine when and whether commercial production use is free. When most people ask "is this version of Java free?", they are typically asking about Oracle JDK.

OpenJDK is the open-source reference implementation of the Java SE specification. The OpenJDK project itself produces reference builds, but a number of companies build and distribute their own OpenJDK-based JDKs under open-source licences (typically GPLv2 with the Classpath Exception). These distributions — including Amazon Corretto, Eclipse Temurin (Adoptium), Azul Zulu, Red Hat OpenJDK, IBM Semeru, and BellSoft Liberica — are always free for all uses, including commercial production deployment, regardless of Java version. They do not carry any Oracle licence restrictions. For most enterprises, migration to a free OpenJDK distribution is the complete and permanent answer to the Java licensing question.

Since Java 11, Oracle JDK and OpenJDK share the same codebase and are functionally identical. The Java APIs are the same, the JVM performance characteristics are essentially the same, and the security patching schedule is aligned. The only differences between Oracle JDK and a comparable OpenJDK distribution are the licence terms and the vendor support channel. This means switching from Oracle JDK to an OpenJDK distribution is not a technical migration in any meaningful sense — it is a runtime replacement.

Oracle JDK: A Version-by-Version Guide

Oracle's licence terms for its own JDK distribution depend heavily on which version you are using and when your specific update was released. The history of Oracle's licence changes is directly relevant to understanding the current position.

The 2019 Licence Change: The End of Broad Commercial Use

Before April 2019, Oracle JDK was distributed under the Binary Code Licence (BCL), which permitted many forms of commercial use at no cost. The most important point to understand about the April 2019 change is what it removed: the broad commercial production use permission that had applied to Oracle JDK 8 updates through 8u202. After update 8u202, Oracle JDK moved to the Oracle Technology Network (OTN) licence, which permits personal use, development, testing, prototyping, and demonstration but explicitly excludes commercial production use without a commercial licence. Any organisation running Oracle JDK 8 updates after 8u202 in commercial production without a subscription has been non-compliant since April 2019.

Java 8 (Oracle JDK)

Oracle JDK 8 is the most widely deployed Java version in enterprise environments and also the one with the most complex licence history. Here is the clear breakdown:

Oracle JDK 8 updates up to and including 8u202 (released January 2019): Available under the BCL, which permitted free commercial use. These specific updates can still be used in commercial production without an Oracle subscription — but they are receiving no new security patches and have not received any since early 2019. Using them means accepting significant security risk in exchange for licence compliance.

Oracle JDK 8 updates from 8u211 onwards (released April 2019 and later): Released under the OTN licence, which does not permit free commercial production use. Any organisation running Oracle JDK 8u211 or later in commercial production without an active Oracle Java SE subscription is operating outside the terms of the licence. This has been the case since April 2019 — a period now exceeding six years.

For Oracle JDK 8 in 2025 and 2026, the practical position is clear: if you need Java 8 in commercial production and want it from Oracle, you need a subscription. If you want Java 8 for free, you need to migrate to a free OpenJDK 8 distribution such as Amazon Corretto 8 or Eclipse Temurin 8, both of which continue to provide long-term security updates under open-source licences at no cost.

Java 11 (Oracle JDK)

Oracle JDK 11 was released in September 2018 under the OTN licence from the outset. This means Oracle JDK 11 has never been freely available for commercial production use without a subscription. Organisations that deployed Oracle JDK 11 in commercial production environments, believing it to be free because it was the "current LTS version", are non-compliant and face retroactive exposure under Oracle's current audit programme.

The widespread confusion about Oracle JDK 11's licence status arises partly from the existence of free OpenJDK 11 builds. OpenJDK 11 — from any of the open-source distribution providers — has always been and remains free for all uses including commercial production. The mistake many organisations made was assuming that Oracle's own JDK 11 distribution carried the same terms as the open-source OpenJDK 11 builds. It did not.

Java 17 (Oracle JDK)

Oracle JDK 17 was released in September 2021 under the No-Fee Terms and Conditions (NFTC), which for the first time since 2019 permitted free commercial production use of Oracle's own JDK distribution. The NFTC licence allowed unrestricted use — including commercial production — for Oracle JDK 17 until the end of the NFTC free period.

However, the NFTC free period for Oracle JDK 17 ended in September 2025, one year after the release of Oracle JDK 21 LTS (the next LTS version). This means that as of September 2025, Oracle JDK 17 updates released after that date are no longer available under the NFTC for commercial production use. Organisations that are still running Oracle JDK 17 and relying on continuing free security updates from Oracle are now outside the NFTC free use window.

Organisations using Oracle JDK 17 in commercial production have two compliant paths: upgrade to Oracle JDK 21 (which is currently free under NFTC) or Oracle JDK 25 (also currently free under NFTC), or remain on Oracle JDK 17 but switch to a free OpenJDK 17 distribution that continues to provide security patches under an open-source licence.

Java 21 (Oracle JDK)

Oracle JDK 21 was released in September 2023 as the current active LTS version. It is available under the NFTC, which permits free commercial production use. The NFTC free period for Oracle JDK 21 runs until September 2026, one year after the release of Oracle JDK 25 LTS in September 2025.

This means that as of April 2026, Oracle JDK 21 is currently free for commercial production use. However, the free window is time-limited. From September 2026 onwards, the NFTC free period for Oracle JDK 21 will end, and organisations that want to continue using Oracle's own JDK distribution for free will need to upgrade to Oracle JDK 25. Organisations that do not wish to manage this rolling upgrade cycle — and the testing and validation overhead it entails — should consider migrating to a free OpenJDK distribution where long-term support is not contingent on upgrading to the next Oracle LTS release.

Java 25 (Oracle JDK)

Oracle JDK 25 was released in September 2025 as the latest LTS version. It is available under the NFTC and is free for all users including commercial production deployment. The NFTC free period for Oracle JDK 25 will extend until one year after the release of the next LTS version, expected in September 2028, giving Oracle JDK 25 a free window running approximately to September 2029.

For organisations that wish to remain on Oracle's own JDK distribution rather than migrating to OpenJDK, Oracle JDK 25 is currently the only version that is both currently supported and free for commercial production use without qualification. However, the rolling NFTC model means this free use is time-bounded, and organisations must track the LTS release schedule to ensure they upgrade before the free period expires.

Not sure which Java version your organisation is running or whether it's compliant?

Redress Compliance provides Java licensing assessments that give you a clear compliance position and remediation roadmap.
Request an Assessment →

The NFTC Free Period: Understanding the Rules

The Oracle No-Fee Terms and Conditions licence that governs Oracle JDK 17, 21, and 25 deserves more detailed explanation because the "free" nature of these versions is conditional in ways that are not always clearly understood.

What the NFTC Permits

The NFTC allows any user — personal, development, or commercial — to download, install, and use Oracle JDK for any purpose, including commercial production deployment, free of charge. This is a genuine and meaningful free use right. It applies to the version of Oracle JDK covered by the NFTC throughout the active free period. Oracle's own documentation confirms that during the NFTC period, there is no usage tracking, no per-user fee, and no requirement to notify Oracle of commercial use.

What the NFTC Does Not Permit

The NFTC is not a perpetual free licence. It is time-limited to a specific period after each LTS release. When the free period ends for a given version (as it did for Java 17 in September 2025 and will for Java 21 in September 2026), organisations must either upgrade to the next NFTC-covered version or switch to a free OpenJDK distribution. The NFTC also does not permit redistribution of Oracle JDK as part of a commercial product — redistribution has always required a separate Oracle licence.

There is also the question of intermediate updates. As a specific LTS version approaches the end of its NFTC free period, security patches for that version continue to be released. Once the free period ends, those patches are technically released under the OTN licence rather than the NFTC. Organisations that want to continue applying security patches to Oracle JDK 17 after September 2025 without paying for a subscription need to switch to an OpenJDK 17 distribution where security patches continue under an open-source licence.

The Universal Subscription: What Oracle Charges If You're Not on NFTC

For any Oracle JDK version and use type that is not covered by the current NFTC free terms — including Oracle JDK 8 in commercial production, Oracle JDK 11 in any production use, or Oracle JDK 17 after September 2025 — Oracle's current commercial offering is the Java SE Universal Subscription. This is an enterprise-wide subscription based on the number of employees, replacing the previous named-user and processor metrics that Oracle retired in January 2023.

The Java SE Universal Subscription charges approximately $15 per employee per month for organisations with fewer than 1,000 employees, dropping to approximately $12 per employee per month for organisations with 1,000 to 9,999 employees, with further tiered pricing for larger organisations. The "employees" metric counts full-time, part-time, and temporary staff plus contractors whose work is directed by the organisation, which for most enterprises is significantly larger than the headcount reported in HR systems.

The commercial impact of the Universal Subscription model is dramatic for organisations that were previously using Java under the old processor-based or named-user-plus metrics. An organisation with 5,000 employees paying $12 per employee per month faces a Java subscription cost of $720,000 per year — and that cost increases by 8 percent per year under Oracle's standard support fee uplift. Three years of subscription for the same organisation amounts to over $2.3 million. For most enterprises, the Universal Subscription model makes migration to free OpenJDK alternatives the economically compelling choice, regardless of Java version.

"The question 'which versions of Java are free?' has three correct answers depending on what you mean by 'Java': if you mean Oracle JDK, the answer is version 21 (until September 2026) and version 25 (until approximately 2029). If you mean any Java runtime, the answer is all versions — because every version has free OpenJDK alternatives."

Free OpenJDK Alternatives: The Complete Answer

The simplest and most durable answer to "which versions of Java are free?" is: all of them, when you use an OpenJDK distribution instead of Oracle's own JDK. The open-source Java ecosystem provides fully compliant, TCK-certified, production-ready Java distributions for every major LTS version at no licence cost and with commercial support options that are a fraction of Oracle's subscription price.

Amazon Corretto

Amazon Corretto is Amazon's own production-tested distribution of OpenJDK, used internally by Amazon to run services at massive scale. It is available for Java 8, 11, 17, 21, and 22, free of charge under a modified GPLv2 licence. Amazon provides long-term support for LTS versions aligned with, and often extending beyond, Oracle's own support timelines. Corretto is particularly well-suited for organisations running workloads on AWS or using Amazon services, but it is a general-purpose distribution that runs on any platform. Amazon provides quarterly CPU patch releases aligned with Oracle's security patching schedule.

Eclipse Temurin (Adoptium)

Eclipse Temurin is the OpenJDK distribution produced by the Eclipse Adoptium Working Group, which is backed by major industry participants including IBM, Red Hat, Microsoft, Huawei, and others. Temurin is available for Java 8, 11, 17, 21, and 25, free under the GPLv2 with Classpath Exception licence. It is TCK-tested and certified to the Java SE specification, making it a fully compliant, vendor-neutral choice. Temurin is widely regarded as the most broadly applicable default choice for organisations that do not have a specific cloud or platform preference, given the breadth of its backing and the transparency of its governance.

Azul Zulu and Azul Platform Core

Azul Systems provides Azul Zulu as a free, community-supported OpenJDK distribution covering Java 6 through 25 across an unusually wide range of platforms and architectures. For organisations that require commercial support SLAs, Azul Platform Core is the commercially supported version, providing long-term support for LTS versions, priority security patching, and access to Azul's technical support team. Azul's extended LTS commitments — in some cases extending Java version support well beyond Oracle's standard windows — make it particularly attractive for organisations running legacy Java versions that Oracle no longer supports.

Red Hat OpenJDK

Red Hat distributes OpenJDK as part of the Red Hat Enterprise Linux (RHEL) subscription and also provides standalone packages. Red Hat OpenJDK is the natural choice for organisations standardised on the Red Hat ecosystem. It receives security updates aligned with the RHEL lifecycle, which for enterprise customers means long-term support commitments that outlast Oracle's own support windows for equivalent Java versions.

IBM Semeru Runtimes

IBM Semeru Runtimes is IBM's distribution of OpenJDK combined with the Eclipse OpenJ9 JVM. OpenJ9 is an alternative JVM implementation developed by IBM that offers different performance characteristics from the standard HotSpot JVM used in most other OpenJDK distributions — particularly lower memory footprint and faster startup time, which makes it well-suited for containerised and cloud-native Java workloads. IBM Semeru is free under an open-source licence and available for Java 8, 11, 17, 21, and 25.

Choosing the Right Free Java for Your Enterprise

With multiple free and fully capable Java distributions available, the choice between them should be driven by practical factors rather than licensing considerations — since all of them eliminate the Oracle licence obligation entirely.

LTS Version Strategy

Enterprises should standardise on LTS versions rather than feature releases. Java's LTS versions — Java 8, 11, 17, 21, and 25 — receive long-term security updates from all major OpenJDK distribution providers. Feature releases (the non-LTS versions between each LTS) receive security updates for only six months, making them unsuitable as long-term enterprise standards. The current active LTS versions recommended for new deployments are Java 21 (the most widely supported current LTS) and Java 25 (the newest LTS, released September 2025).

Support Lifecycle Planning

Each OpenJDK distribution provider publishes its own support lifecycle for each Java LTS version. For long-term planning, verify that your chosen distribution provider has committed to supporting the Java version you are deploying for the duration of your application lifecycle. Amazon Corretto, Azul Zulu, and Red Hat OpenJDK all provide LTS support commitments that are documented and verifiable, typically extending to at least 2027 for Java 17 and 2030 or beyond for Java 21.

Commercial Support Requirements

Some organisations require a commercial support agreement for their Java runtime — whether for regulatory compliance, internal governance requirements, or vendor escalation paths. All of the major OpenJDK distribution providers offer commercial support at pricing that is consistently lower than Oracle's Universal Subscription. Azul, Amazon (through AWS Support), Red Hat, IBM, and BellSoft all provide enterprise support contracts. The annual cost of commercial support for an OpenJDK distribution is typically 10 to 25 percent of what Oracle would charge for a comparable Universal Subscription — without the headcount-based metric that makes Oracle's model so expensive for large organisations.

Not sure which Java distribution is right for your organisation?

Our advisors help enterprises assess their Java estate, evaluate OpenJDK alternatives, and plan migrations that eliminate Oracle licensing cost permanently.
Get Expert Guidance →

The Oracle Java Audit Risk for "Free" Versions

Understanding which Oracle JDK versions are free under the NFTC is important, but it does not fully address the Oracle audit risk that organisations face in 2025 and 2026. Oracle's audit programme targets not just current non-compliance but historical use — and many organisations that believed they were using "free" Oracle Java during 2019 to 2022 were, in fact, using Oracle JDK under the OTN licence without an active commercial subscription.

Oracle's GLAS team is active and is using download records, telemetry data, and CMDB information obtained through various channels to identify organisations with Oracle JDK deployments. Even if an organisation is currently compliant — having upgraded to Oracle JDK 21 under NFTC or migrated to OpenJDK — Oracle may still assert a compliance claim for historical use during the three-year retroactive window if Oracle JDK was used in commercial production under OTN licence terms without a subscription.

The complete protection against both current and future Oracle Java licensing risk is achieved by migrating entirely to free OpenJDK distributions and documenting that migration. Once Oracle JDK is fully removed from the estate and replaced with OpenJDK, there is no ongoing Oracle subscription obligation and the audit risk for future use is eliminated. The documentation of the migration is what protects against retroactive claims for the remediated period.

Summary: The Clear Answers to "Which Java Is Free?"

Oracle JDK 8 (updates 8u211 and later): Not free for commercial production use. Requires an Oracle Java SE Universal Subscription. Free alternative: Amazon Corretto 8 or Eclipse Temurin 8.

Oracle JDK 11: Not free for commercial production use under any version. Requires an Oracle Java SE Universal Subscription. Free alternative: Amazon Corretto 11 or Eclipse Temurin 11.

Oracle JDK 17: Was free for commercial production use under NFTC until September 2025. Now requires a subscription or upgrade. Free alternative: Amazon Corretto 17, Eclipse Temurin 17, or Azul Zulu 17.

Oracle JDK 21: Free for commercial production use under NFTC until September 2026. After that date, requires a subscription or upgrade to Oracle JDK 25. Always-free alternative: Amazon Corretto 21, Eclipse Temurin 21, or Azul Zulu 21 with long-term support through at least 2030.

Oracle JDK 25: Currently free for commercial production use under NFTC, expected until approximately September 2029. Always-free alternative: Eclipse Temurin 25 or Amazon Corretto 25.

All OpenJDK distributions (any version from any provider): Always free for all uses including commercial production, with no Oracle licence obligations, no audit risk from Oracle, and no headcount-based subscription metrics.

For the vast majority of enterprises, the practical answer is to stop using Oracle JDK entirely and standardise on a free OpenJDK distribution that provides the required Java versions with long-term security updates, optional commercial support, and no Oracle licensing complexity. Redress Compliance advises enterprises on Java licensing strategy, migration planning, and Oracle Java audit defence. Contact us at redresscompliance.com/oracle-services for a confidential assessment of your Java position.