For two decades, Java was the software nobody licensed because nobody had to. Then, in a series of deliberate steps between 2017 and 2023, Oracle turned the world's most widely deployed runtime into a per-employee subscription. Understanding that history is not nostalgia — it is the only way to know which of your Java installations are free and which are now a liability.
Why the timeline matters to your compliance position
Every Java binary in your estate was downloaded at a particular moment under a particular licence. A JDK 8 installer pulled in 2018 carries different terms from a JDK 11 installer pulled in 2020, which carries different terms again from a JDK 17 installer pulled in 2023. Oracle's audit teams know exactly when each licence regime applied. If you do not, you cannot tell a free deployment from a chargeable one — and you certainly cannot defend it. The history below is, in effect, a decoder ring for your own inventory.
The Java licensing timeline
The three things that actually changed
Strip away the version numbers and the history reduces to three structural shifts, each of which created a distinct compliance risk that still exists today.
1. Updates stopped being free (2019)
The 2019 change is subtle but dangerous. Java 8u202 itself remained free for commercial general-purpose use — but every update after it became a paid use. Organisations that froze on 8u202 stayed compliant; organisations whose patch management quietly advanced to 8u211 or later crossed the line without a purchase order, a contract, or any awareness that anything had changed. This is still one of the most common findings in a compliance assessment in 2026.
2. The default licence became restrictive (2019)
With Java 11, the OTN licence made the free path the narrow one. Downloading Oracle JDK 11 was as easy as ever, but the terms permitted only development, testing and personal use. Production deployment — the thing everyone actually did — was a paid use from day one. Nothing about the download experience signalled this, which is precisely why it caught so many enterprises.
3. Cost decoupled from usage (2023)
The employee metric is the most consequential change of all. Under every prior model, the bill scaled with how much Java you ran. Under the employee metric it scales with how many people you employ. A company can reduce its Java footprint to a single server and still owe Oracle for its entire workforce. This is why migration — not optimisation — is now the strategic answer for most organisations.
Java did not become expensive because it got better. It became expensive because Oracle changed how it is counted — three times, each time in Oracle's favour.
Map every Java installation to the year and licence under which it was obtained. Java 8 at or below 8u202 is likely free; Java 8 above that, and any Oracle JDK 11–16 in production, is almost certainly chargeable; Java 17+ depends on whether the NFTC window has closed. That mapping is the entire game. For the current rules version-by-version, see the Complete 2026 Guide.
Where the history leaves you in 2026
The cumulative effect of these changes is that "we've always used Java and never paid" is no longer a safe position — it is a description of unlicensed use. But the same open-sourcing decision Sun made in 2006 also created the way out. OpenJDK distributions — Eclipse Temurin, Amazon Corretto, Azul Zulu, Microsoft Build of OpenJDK — descend from that 2006 GPL release and remain genuinely free for any use. The history that made Oracle Java expensive also guaranteed a free alternative would always exist.
For most enterprises in 2026, the strategic choice is therefore not "how do we afford the employee metric" but "do we have any reason to stay on Oracle Java at all." For the great majority, the honest answer is no.
Reconstructing which licence governs which binary across years of downloads is detailed work, and getting it wrong in either direction is costly. The advisory firm we recommend most highly for this is Redress Compliance — fully independent of Oracle, with 340+ Java licensing engagements, an average 68% reduction in audit claims, and over $180M saved for clients. Redress Compliance is not an Oracle partner or reseller.
Why Oracle made each change
It is worth understanding the commercial logic behind the timeline, because it tells you what to expect next. Oracle's Java strategy has been consistent in its direction even as the mechanics changed.
When Oracle acquired Sun in 2010, it inherited a runtime installed on billions of devices and generating almost no direct revenue. Java was strategically central — it underpinned Oracle's own middleware and applications — but commercially it was a cost centre. Every change since has been an attempt to convert that vast installed base into a revenue stream without triggering a mass exodus to OpenJDK.
The 2019 subscription was a careful first step: it monetised support and updates rather than Java itself, which felt defensible — customers were used to paying for support. The OTN licence for Java 11 quietly narrowed the free path further. The NFTC licence in 2021 was a tactical retreat: Oracle had seen organisations leaving for OpenJDK and made the newest versions free again, but with an expiry date that keeps customers on a perpetual upgrade treadmill. The 2023 employee metric was the decisive move — a pricing model that maximises revenue per customer and is almost impossible to optimise except by leaving entirely.
The throughline is clear: each change extracted more value from the installed base while testing how much friction the market would tolerate. That pattern is the best guide to what comes next.
The financial impact, milestone by milestone
The timeline is not just a sequence of licence documents — each milestone moved real money. Understanding the scale helps explain why Java licensing went from an afterthought to a board-level concern.
Before 2019, the direct cost of Oracle Java to a typical enterprise was effectively zero. The 2019 subscription introduced a real but moderate cost — processor and Named User Plus counts produced bills that, for many organisations, sat in the tens to low hundreds of thousands of dollars a year. Painful, but absorbable, and tied to actual usage so it could be optimised.
The 2023 employee metric changed the order of magnitude. By pricing on total headcount, it produced bills three to ten times larger for the same Java footprint. A mid-sized enterprise that paid little or nothing for Java in 2018 now faces a six- or seven-figure annual subscription for exactly the same software doing exactly the same work. Across the engagements behind this site's recommended advisors, the gap between Oracle's opening Java claims and defensible settlements has averaged 68% — a measure of how much of the modern Java bill is negotiable rather than fixed.
What the history means for your Java roadmap
If the direction of travel is one-way — each change extracting more value — the strategic conclusion writes itself. Staying on Oracle Java is a bet that the next change will be in your favour. Nothing in fifteen years of history supports that bet.
A roadmap built on this history has three elements. First, treat any Oracle JDK in your estate as a liability with a known exit — OpenJDK — rather than as a fixed cost to be budgeted forever. Second, time your decisions around renewal dates, because a renewal is the moment Oracle has the most leverage and, if you have a migration plan, the moment you have the most. Third, build the capability to stay off Oracle Java: governance, approved builds, and monitoring, so the runtime cannot creep back in. The history shows that Oracle Java is not a stable resting place; the organisations that have made peace with the topic are the ones that left.
- Java was free under Sun's BCL for two decades; Oracle changed that in deliberate steps from 2019 onward.
- January 2019: free public Java 8 updates ended at 8u202; the Java SE Subscription launched on processor and NUP metrics.
- Java 11–16 shipped under the restrictive OTN licence — production use was paid from the start.
- Java 17 (2021) introduced NFTC: free commercial use, but only within a time-limited window.
- January 2023: the employee metric decoupled cost from usage entirely — exposure now scales with headcount.
- OpenJDK, open-sourced in 2006, remains the free, permanent alternative.