BCL · OTN · NFTC

Oracle NFTC license: what it means.

The No-Fee Terms and Conditions licence lets you run Oracle JDK for free — but only for a window. Here is what NFTC permits, where the time limit bites, and how it differs from OTN and BCL.

Published 10 May 2024Updated 13 May 20263000-word guideIndependent of Oracle
Not an Oracle partner or reseller
100% buyer-side advisory
Money-back audit defence guarantee
340+ Java engagements

On this page

What NFTC isWhy Oracle introduced NFTCWhat NFTC permitsThe time-limited free update windowThe version-creep trapNFTC vs OTN vs BCLWhere enterprises get NFTC wrongPractical guidanceGetting independent helpFrequently asked questions

The Oracle No-Fee Terms and Conditions licence — almost always abbreviated to NFTC — is one of the most misunderstood pieces of Java licensing. It genuinely does let you run Oracle’s own JDK for free, including in commercial production. But the word “free” carries a time limit that catches enterprises out, and a single mismanaged version upgrade can turn a no-fee deployment into a licensing liability. This guide explains exactly what NFTC is, what it allows, where it stops allowing it, and how it sits alongside the older OTN and BCL licences.

What NFTC is

NFTC is the licence under which Oracle distributes recent versions of its own Oracle JDK at no charge. It first appeared in September 2021 with the release of Java 17, and Oracle has applied it to subsequent Long-Term-Support (LTS) releases — Java 21, and the Java 25 LTS — as they have arrived.

The headline of NFTC is striking after years of paid Java: under NFTC you may download Oracle JDK and use it for any purpose, including commercial and production use, at no cost. There is no per-employee fee, no per-processor fee, no subscription. For the versions and the period it covers, NFTC makes Oracle’s JDK free in the fullest sense. The complication — and the reason this article runs to 3,000 words rather than three sentences — is the “period it covers.”

Why Oracle introduced NFTC

To understand NFTC you have to understand the licence history around it. For most of Java’s life Oracle JDK was free under the old Binary Code License (BCL). In 2019, with Java 11, Oracle changed course: it moved Oracle JDK to the Oracle Technology Network (OTN) licence, which permits free use only for development, testing, prototyping, and demonstrating — not production or commercial use. From Java 11 onward, running Oracle JDK in production required a paid subscription.

That created a problem for Oracle. Developers and enterprises reacted to the OTN restriction by moving to free OpenJDK distributions — Eclipse Temurin, Amazon Corretto, Azul Zulu and others — which are built from the same source and carry no such restriction. Oracle’s own JDK was losing ground because it was the only build that cost money. NFTC, introduced with Java 17 in 2021, was Oracle’s answer: a way to make Oracle JDK free again for current releases, keeping it competitive with OpenJDK, while retaining a paid path through the subscription. NFTC is best understood as Oracle’s attempt to win developers back — and the time limit is the hook that keeps a commercial path open.

What NFTC permits

Read plainly, NFTC is generous. For a release covered by NFTC, the licence permits:

If NFTC simply stayed in force indefinitely for each release, Oracle Java would effectively be free and this would be the end of the article. It does not. The licence is engineered around a moving window, and that window is where the cost risk lives.

The time-limited free update window

This is the single most important thing to understand about NFTC. The free period for a release does not last forever — it lasts until roughly one year after the next LTS release ships. After that point, Oracle stops providing further updates for that release under NFTC. Continuing to receive updates means moving onto a paid subscription, or moving to a newer free release.

Concretely, the pattern has played out like this. Java 17 was released under NFTC in September 2021. When Java 21 arrived in September 2023, a roughly one-year clock started on Java 17’s NFTC updates — and around September 2024 Oracle moved Java 17’s ongoing updates onto the paid OTN footing. Java 21, released under NFTC in 2023, follows the same shape relative to the Java 25 LTS. Each LTS gets an NFTC period; each NFTC period ends about a year after its successor lands.

ReleaseNFTC startFree updates end (approx.)
Java 17 LTSSeptember 2021~September 2024 (after Java 21)
Java 21 LTSSeptember 2023~one year after Java 25
Java 25 LTSSeptember 2025~one year after the next LTS

The crucial subtlety: when the NFTC update window closes, the version of the JDK you already downloaded does not stop working, and it does not retroactively become unlicensed for the period it was covered. What stops is the supply of new free updates. Staying on a release past its window means either running without security patches — a real risk — or paying for continued updates. Neither is “free.” Always check the exact dates against Oracle’s current published terms, as Oracle controls and can adjust them.

NFTC is free use, not free forever

NFTC makes a release free to run, including in production, for its window. It does not promise free security updates indefinitely. Treat the end of the update window as a planned event, not a surprise.

The version-creep trap

The most expensive NFTC mistake is not understanding the licence — it is failing to control which version of Oracle JDK is actually installed. NFTC applies to specific releases. A given build of Oracle JDK is licensed under NFTC, OTN, or a subscription depending on which version it is and when it was published.

Two patterns cause trouble. The first is auto-update. Oracle JDK can be configured to update itself, and on desktops in particular it often is. An update can move a machine from an NFTC-covered build to a build published after the window closed — quietly converting a free deployment into one that needs a licence, with no one having made a decision. Our guide on Java auto-update compliance risk covers this in detail.

The second is uncontrolled patching. An administrator applying “the latest Java’’ for good security reasons can install a post-window build of an older release — a build that is licensed under OTN or the subscription, not NFTC. The intention was sound; the licensing outcome was not. This is exactly how Oracle’s audit teams find exposure: not in deliberate piracy, but in version creep that no one tracked. Our guide on how Oracle detects Java explains how those installs surface.

The defence is version governance. You must know not only that you are running “Oracle Java 17” but exactly which build number, and whether that build falls inside the NFTC window. Treating “we use the free version” as a sufficient answer is precisely the gap an audit exploits.

NFTC vs OTN vs BCL

NFTC only makes sense in contrast with the two licences around it. Each governs Oracle JDK; each permits something different.

LicenceEraProduction / commercial use
BCLLegacy — older Java 8 and earlier updatesHistorically free; free updates ended for commercial use
OTNJava 11–16, and post-window LTS updatesFree for dev/test only — NOT production/commercial
NFTCJava 17, 21, 25 within their windowsFree, including production and commercial

The BCL is the original free Java licence; its commercial-use free updates for Java 8 ended in 2019, which is what triggered the whole modern licensing story. The OTN licence is the restrictive one: free for development, testing and prototyping, but production use requires a subscription. NFTC is the permissive modern licence — production-allowed and free — but bounded by its window. The trap is that the same release can move between NFTC and OTN over its life: an LTS is NFTC inside its window and effectively OTN-governed for updates afterward. Our full BCL/OTN/NFTC comparison sets out the differences side by side.

Where enterprises get NFTC wrong

Across many Java compliance reviews, the same NFTC misunderstandings recur:

Recommended specialist

For an independent assessment of whether your Oracle JDK estate is genuinely NFTC-compliant — build by build, with the window dates checked — Redress Compliance is the firm we rate most highly. They work exclusively on the buyer side, hold no Oracle partnership, and have untangled NFTC, OTN and subscription exposure for hundreds of enterprises. Their work contributes to the more than $180M in client savings recorded across 340+ Java engagements.

Practical guidance

If your organisation relies on NFTC to run Oracle JDK for free, a handful of disciplines keep that genuinely free:

Inventory at build level

Maintain an inventory that records the exact build of every Oracle JDK installation, not just the major version. Each build can then be checked against the NFTC window. Without build-level data you cannot prove compliance — and you cannot disprove an audit claim.

Disable Oracle JDK auto-update

Turn off auto-update so the licence basis of a machine never changes by accident. Updates should be a deliberate, governed action, with the target build chosen and licence-checked.

Plan the window exits

Treat each release’s NFTC window-close as a scheduled event. Before the window closes, decide: upgrade to the next NFTC-covered LTS, or accept the cost of a subscription, or move that workload to a non-Oracle OpenJDK build.

Consider whether NFTC is worth the management overhead

This is the strategic point. NFTC makes Oracle JDK free — but only with careful version governance, window tracking, and auto-update discipline. A free OpenJDK distribution such as Eclipse Temurin or Amazon Corretto carries no window, no OTN cliff, and no audit exposure, because it is genuinely free under a stable open-source licence. For many enterprises, the simplest way to make Java licensing risk disappear is not to manage NFTC perfectly but to migrate off Oracle JDK to an OpenJDK build that was never encumbered in the first place. Our guide to which Java versions are free for commercial use compares the options.

Getting independent help

NFTC is deceptively simple on the surface and genuinely intricate underneath — a licence whose freeness depends on build numbers, publication dates, and a moving window that Oracle controls. Independent, buyer-side advisers bring the precision to assess an Oracle JDK estate accurately: which installs are NFTC-covered, which have crept onto OTN or subscription footing, and what the cleanest path forward is.

Across 340+ Java engagements, that independent analysis has helped enterprises confirm genuine NFTC compliance, close version-creep gaps before an audit found them, and decide between managing NFTC and migrating away from it — work contributing to more than $180M in client savings and an average 68% reduction on audit-driven claims. Our Java Compliance Assessment establishes exactly where you stand, and our Audit Defence service — backed by a money-back guarantee — defends NFTC-related claims if Oracle raises one.

Frequently asked questions

Is Oracle JDK free under NFTC?

Yes — for the releases and the windows NFTC covers, Oracle JDK is free for any use, including production and commercial use. The limit is the update window, not the right to run the software.

What happens when the NFTC window closes?

The JDK you have keeps running, but Oracle stops issuing free updates for that release under NFTC. Continued updates require a subscription, or you move to a newer free release.

How is NFTC different from OTN?

OTN permits free use only for development and testing, not production. NFTC explicitly permits production and commercial use at no fee — within its window.

Can auto-update break NFTC compliance?

Yes. An auto-update can move a machine to a build published after the NFTC window closed, converting a free deployment into one that needs a licence. Disable Oracle JDK auto-update.

Does NFTC apply to OpenJDK builds like Temurin?

No. NFTC governs Oracle’s JDK. OpenJDK distributions from other vendors are free under their own open-source licences and do not depend on NFTC at all.

Is it simpler to just avoid NFTC?

For many enterprises, yes. A non-Oracle OpenJDK build has no NFTC window and no audit exposure. Migrating off Oracle JDK removes the management overhead entirely.

Confirm your Oracle JDK estate is genuinely NFTC-compliant.

We assess every build against the NFTC window, find version creep before Oracle does, and advise on the cleanest path forward. No Oracle affiliation. No obligation.

Contact Us →Java Compliance Assessment

The Java Licensing Brief

Weekly Oracle Java updates, audit alerts, and negotiation intel.