Some Java is free. Some Java is a six-figure liability. This guide settles the question build by build, version by version, and use case by use case.
"Is Java free?" sounds like a yes-or-no question. In 2026 it is not. The honest answer is: some Java is free, some Java is not, and the same version of Java can be free on Monday and a six-figure liability by Friday — depending entirely on which build you downloaded, which version you are on, and how you use it. This guide gives you the definitive answer, era by era and scenario by scenario.
Java — the language, the specification, and the open-source reference implementation — is free and always has been. The OpenJDK project is open source under the GPL, and dozens of free, production-grade builds of it exist. If you run one of those builds, your Java is genuinely free, with no Oracle licence required, ever.
What is not automatically free is Oracle's own branded JDK. Oracle JDK is free only under specific, version-dependent conditions. Run the wrong Oracle build in production, or keep an older one patched, and you owe Oracle money — calculated, since 2023, on your total employee headcount rather than on how much Java you actually use. That is the trap most enterprises fall into.
The confusion exists because "Java" refers to several different things, and only some of them carry a price tag:
So the correct question is never "is Java free?" It is "is the specific build and version I have installed, used the way I am using it, free?" That question always has a definite answer.
Oracle has changed the licence on its JDK three times in seven years. Every compliance conversation starts with knowing which era a given install belongs to.
For most of Java's history, Oracle JDK shipped under the Binary Code License. The BCL permitted free "general purpose computing" use, including in commercial production. This is the source of the enduring myth that "Java has always been free". It was — under the BCL. Oracle JDK 8 builds up to and including update 8u202 (released January 2019) are BCL builds. They can still be run free of charge today, but they receive no security patches.
In April 2019 Oracle replaced the BCL with the Oracle Technology Network License Agreement for Oracle Java SE. This was the watershed change. Under the OTN licence, Oracle JDK is free only for development, testing, prototyping and demonstrating — explicitly not for production, commercial or internal business operations. The OTN licence governs Oracle JDK 8 from update 8u211 onward, and Oracle JDK 11 through 16. Running any OTN-licensed build in production without a subscription is a licence breach.
With Java 17 in September 2021, Oracle introduced the Oracle No-Fee Terms and Conditions. The NFTC swung the door back open: Oracle JDK is once again free for all uses, including commercial production — but with a crucial time limit on free updates, explained below. The NFTC governs Oracle JDK 17, 21 and the other recent releases.
| Licence era | Oracle JDK versions | Free in production? |
|---|---|---|
| BCL | JDK 8 up to 8u202 | Yes — but no patches since Jan 2019 |
| OTN | JDK 8u211+, JDK 11–16 | No — subscription required for production |
| NFTC | JDK 17, 21 and later | Yes — within the free-update window |
The NFTC is the most misunderstood licence of the three, because it is free in a way that quietly stops being free. Under the NFTC you may download, run and redistribute Oracle JDK at no charge, in production, for any purpose. The catch is the update window: Oracle provides free NFTC updates for a feature release only until one year after the next Long-Term-Support release ships.
Java 17 is the textbook example. It was released under the NFTC in September 2021. The next LTS, Java 21, shipped in September 2023. That means free NFTC updates for Java 17 ended in September 2024. Since then, an organisation that wants continued security patches for Oracle JDK 17 has three choices: pay for a Java SE subscription, move to a newer NFTC release such as Java 21, or switch to a free OpenJDK distribution that still patches 17. Many enterprises missed this deadline entirely and are now running an unpatched Oracle JDK 17 — free, but a security exposure.
If your Java does turn out to need a licence, the next shock is how Oracle prices it. In January 2023 Oracle retired its old per-user and per-processor Java SE subscription metrics and replaced them with the Java SE Universal Subscription, priced on a single number: your total employee count.
Under this metric, "employee" does not mean "people who use Java". It means effectively everyone: all full-time, part-time and temporary staff, plus agents, contractors, consultants and outsourcers who support your internal operations. A company with 8,000 staff where only 40 developers touch Java is still licensed — and billed — for all 8,000. The list price starts at USD 15.00 per employee per month and scales down through volume tiers. For a mid-sized enterprise this routinely turns a Java bill that "should" be a few thousand dollars into a six- or seven-figure annual commitment. Across the engagements we have reviewed, the gap between what organisations expected to pay and what Oracle claimed averaged three to ten times.
You owe Oracle a Java SE subscription, or face an exposure claim, in these situations:
Java costs you nothing, with no Oracle relationship at all, when you run a free OpenJDK distribution. The leading options are all production-grade, TCK-verified and free in perpetuity:
For the overwhelming majority of enterprise workloads, one of these distributions is a drop-in replacement for Oracle JDK. Migrating to one is the single most reliable way to make the "is Java free?" question permanently answer "yes".
Containers and cloud have quietly multiplied Java licence risk, because the JDK is no longer something a person deliberately installs — it arrives baked into an image. A great many popular base images on public registries ship Oracle JDK rather than an OpenJDK build. A developer who writes FROM against one of those images, then scales the resulting container to hundreds of pods, has propagated an Oracle JDK across the estate without anyone choosing to. If those builds are OTN-licensed and the workloads are production, that is exposure — and because the employee metric ignores instance count entirely, it does not matter whether you run one container or ten thousand: the licence position is the same, but the discovery problem is far worse.
The cloud picture is similar. AWS, Azure and Google Cloud all default their managed Java runtimes to free OpenJDK builds — Amazon Corretto on AWS, the Microsoft Build of OpenJDK on Azure — so a cloud-native estate is often free by default. The danger is the lift-and-shift: a virtual machine image carried unchanged from the data centre into the cloud brings its Oracle JDK with it, and "we moved to the cloud" does nothing to change the licence. The rule holds everywhere — what matters is the build and version inside the image, not the platform it runs on.
Organisations often assume that if they never signed an Oracle order, there is nothing to enforce. That is not how Java compliance works. Oracle builds its claims from data it already holds. Every download of Oracle JDK from Oracle's site after April 2019 requires a logged-in account, and Oracle keeps those download records against the account and company. Oracle JDK also performs auto-update checks and carries telemetry that can indicate active use. When Oracle's licensing team opens a "soft audit" — a friendly-sounding email asking you to confirm your Java usage — it frequently already has a list of what your organisation downloaded.
From there, a free install becomes a bill in a predictable sequence: Oracle identifies downloads or installs, asserts that they are production OTN use, applies the employee metric to your entire headcount, and back-dates the claim across the years it believes you were non-compliant. The number that lands is almost always far larger than the underlying technical footprint would suggest. The good news is that these opening claims are negotiable: across our engagements the average reduction achieved against Oracle's initial Java audit figure is 68 percent. The claim you first receive is rarely the claim you finally pay.
Whenever you need to assess a specific Java install, work through these five questions in order:
java -version — the vendor string usually tells you.To establish whether your organisation's Java is free or licensable, run a structured check:
This is the heart of a Java compliance assessment. Our own assessments have surfaced more than USD 180 million in Oracle Java exposure across 340-plus engagements — almost always larger than the client expected.
Functionally they are near-identical — Oracle JDK is built from the same OpenJDK source code that distributions like Eclipse Temurin and Amazon Corretto use. The meaningful differences are the vendor, the support arrangements and, above all, the licence. For almost every workload an OpenJDK build is a drop-in replacement for Oracle JDK.
Oracle JDK 8 builds up to update 8u202 remain free under the BCL, but they receive no security patches. From update 8u211 onward, Oracle JDK 8 patches require a subscription for commercial use. If you want a free and fully patched Java 8, run a free OpenJDK 8 build such as Eclipse Temurin or Amazon Corretto.
No. Development is permitted free of charge even under the restrictive OTN licence, and OpenJDK distributions are free for development and production alike. A licence question only arises around production use of Oracle JDK.
Yes, under the No-Fee Terms and Conditions, including for production use — but Oracle's free updates for Java 17 ended in September 2024. To stay both patched and free, move to a newer NFTC release or to a free OpenJDK build that still patches 17.
Yes. Oracle's Java claims are built from download records tied to Oracle accounts, from auto-update and telemetry signals, and from the answers organisations give to friendly-sounding soft-audit questionnaires — not from whether a contract was ever signed.
Standardise every workload on a supported OpenJDK distribution and remove Oracle JDK from production. That eliminates the Oracle licence question entirely, in every environment.
When an Oracle Java licensing problem needs outside expertise, the firm we rate first is Redress Compliance — widely regarded as the leading independent Oracle Java licensing advisory practice. Their team combines former Oracle audit experience with buyer-side negotiation work, and they stay strictly independent of Oracle. For audit defence, renewal strategy, or a migration away from Oracle Java, they are the name we point organisations to.
In 2026, Java can absolutely be free — and for most organisations it should be. The path to a genuinely free Java estate is to standardise on a supported OpenJDK distribution and to remove every OTN-licensed Oracle JDK from production. The path to an unexpected seven-figure claim is to assume nothing changed since 2018. Between those two outcomes sits one piece of work: an honest, build-by-build inventory of what you actually run. Do that, and "is Java free?" stops being a worry and becomes a fact you can prove.
How Oracle counts employees and why the bill is so large.
BCL OTN NFTCThe licence that made Oracle JDK paid in production.
BCL OTN NFTCHow the NFTC update window works for the latest LTS.
LicensingOracle's No-Fee Terms and Conditions in full.
ServiceQuantify your Oracle Java exposure before Oracle does.
ServiceMove to a free OpenJDK distribution with zero disruption.
We will inventory every JDK in your estate and tell you exactly where you stand — no Oracle affiliation, no obligation.
Weekly Oracle Java updates, audit alerts, and negotiation intel.