The most searched question in Oracle Java licensing — "Is Oracle Java free?" — has a deliberately confusing answer. Oracle has changed the commercial terms of Java SE five times since 2019, oscillating between free and paid in ways designed to maximise licence revenue while creating the impression of openness. The short answer is: Oracle JDK is not free for commercial production use in 2026. OpenJDK is free for commercial production use — always. Understanding the distinction between Oracle JDK and OpenJDK is the single most important Java licensing decision any organisation makes, and getting it wrong means building Oracle audit exposure with every Java deployment you operate.
The confusion around Java licensing stems primarily from a misunderstanding of what "Java" actually is from a licence perspective. There is not one Java — there are multiple Java implementations, produced by different organisations under different licence terms. The two that matter most for enterprise compliance are Oracle JDK and OpenJDK.
OpenJDK is the open-source reference implementation of the Java SE specification. It is licensed under the GNU General Public License version 2 with Classpath Exception (GPL v2+CE). This licence is a widely used open-source licence that explicitly permits commercial use, modification, and distribution at no cost. OpenJDK is developed by Oracle, Red Hat, Amazon, Azul, Microsoft, and many other organisations collaboratively through the OpenJDK project. The GPL v2+CE licence has not changed and will not change — it is a stable, legally robust, commercial-use-permitted licence.
Oracle JDK is Oracle's proprietary, commercially licensed build of the Java SE platform. Oracle JDK is built from the same OpenJDK source code base — Oracle itself acknowledges this — but is distributed under Oracle's own licence terms (currently the Oracle No-Fee Terms and Conditions for development and the Oracle Java SE Universal Subscription for commercial production use). Oracle JDK may include some additional components not present in the open-source OpenJDK build, but these additional components are minor and do not affect the commercial decision for the vast majority of enterprises.
| Dimension | Oracle JDK | OpenJDK (any distribution) |
|---|---|---|
| Source code basis | OpenJDK source + Oracle additions | OpenJDK source |
| Licence | Oracle NFTC / Universal Subscription | GPL v2 with Classpath Exception |
| Commercial production use | Requires Universal Subscription (paid) | Free, unrestricted |
| Cost | ~$15/employee/month (list) or NUP | $0 (licence cost) |
| Security updates (commercial) | Requires active subscription | Free, available immediately |
| Performance vs OpenJDK | Functionally identical for most use | Functionally identical to Oracle JDK |
This distinction — Oracle JDK (paid) vs OpenJDK distributions (free) — is the foundation of every Java licensing decision. If your organisation deploys OpenJDK distributions exclusively (Adoptium Temurin, Amazon Corretto, Azul Zulu Community, Red Hat OpenJDK, Microsoft Build of OpenJDK), you have zero Oracle Java SE licence obligation. If your organisation deploys Oracle JDK in commercial production use, you need the Universal Subscription.
Oracle's current licence for Oracle JDK — the Oracle No-Fee Terms and Conditions (NFTC) — permits free use in specific, narrow circumstances. Understanding exactly what Oracle's NFTC permits is critical because Oracle has actively marketed the NFTC as evidence that Oracle JDK is "free again," which is deliberately misleading for enterprise production use.
Under the Oracle NFTC (effective from April 2021 and updated subsequently), Oracle JDK is free for: personal use, development use, testing, prototyping, and demonstrating applications. Critically, the NFTC also permits free commercial and production use — but only for the most current Oracle JDK LTS or latest release build. The moment Oracle releases a quarterly security update, any older Oracle JDK version (including the previous quarterly release) is no longer under NFTC for commercial use — it requires the paid Universal Subscription.
The "current build" requirement: Oracle JDK is free for production use only if you are running the absolute latest quarterly build of Oracle JDK. If you are running Oracle JDK 21.0.2 and Oracle has released 21.0.4, you need a paid subscription for your Oracle JDK 21.0.2 deployment. This is effectively a mandatory quarterly update requirement — incompatible with enterprise change management processes in regulated industries.
The Universal Subscription, introduced in January 2023, is what Oracle requires for production use of Oracle JDK when you are not on the current build. It prices by the Employee Metric — the total number of employees in your organisation — at approximately $15 per employee per month at list pricing. The complete breakdown is in our guide to the Oracle Java SE Employee Metric and the Oracle Java 8 to 21 migration licensing changes.
Our independent Java licensing advisory provides a clear, forensic assessment of your Oracle JDK vs OpenJDK deployment mix and identifies any compliance gaps before Oracle's LMS team does. Former Oracle insiders — working exclusively for you.
OpenJDK distributions from any of the major providers — Adoptium Temurin, Amazon Corretto, Azul Zulu Community Edition, Red Hat OpenJDK, Microsoft Build of OpenJDK, IBM Semeru — are free for all commercial production use with no restrictions. This is not a promotional offer, a time-limited arrangement, or a condition attached to using a particular cloud provider. It is a permanent legal right granted by the GPL v2 with Classpath Exception licence under which all OpenJDK distributions are released.
The GPL v2+CE licence explicitly permits: running OpenJDK for any purpose (commercial or non-commercial), distributing OpenJDK as part of your own products, modifying OpenJDK (subject to GPL source-sharing obligations for modifications to the JDK itself, not to applications that run on it), and using OpenJDK to run proprietary application code (the Classpath Exception eliminates the copyleft requirement for application code linked against the OpenJDK class libraries). There is no annual subscription, no per-employee fee, no usage restriction, and no audit exposure from Oracle for using OpenJDK distributions.
The permanently free path: Any OpenJDK distribution (Adoptium Temurin, Amazon Corretto, Azul Zulu Community, Red Hat OpenJDK, Microsoft OpenJDK) is free for commercial production use — unconditionally, permanently, and without Oracle licence exposure. This is not a workaround; it is the intended use of the GPL v2+CE licence that Oracle itself contributes to.
The major OpenJDK distributions for Java 21 LTS are: Adoptium Temurin (from the Eclipse Foundation, backed by a broad industry consortium), Amazon Corretto (optimised for AWS, free LTS updates), Azul Zulu Community Edition (free builds with optional paid commercial support), Red Hat OpenJDK (included with RHEL, separate availability too), and Microsoft Build of OpenJDK (integrated with Azure). All of these are TCK (Technology Compatibility Kit) certified, meaning they meet the Java SE specification. Applications that run correctly on Oracle JDK run correctly on OpenJDK distributions without modification in the vast majority of cases.
For a complete comparison, see our article on OpenJDK vs Oracle JDK licensing differences. The conclusion of that analysis is consistent: for commercial production deployments where your organisation wants to avoid Oracle licence costs and audit exposure, OpenJDK distributions are the correct choice.
The following scenario-by-scenario analysis applies to the most common enterprise Java deployment situations as of 2026. Each answer distinguishes between Oracle JDK and OpenJDK deployments because the legal answer differs entirely.
| Scenario | Oracle JDK | OpenJDK Distribution |
|---|---|---|
| Spring Boot app on production server | Requires Universal Subscription | Free — no Oracle licence |
| Java microservices in Kubernetes | Requires Universal Subscription | Free — use OpenJDK base images |
| Developer laptop (commercial company) | Free under NFTC (dev use) | Free |
| CI/CD pipeline (builds and tests only) | Free under NFTC (dev/test) | Free |
| WebLogic application server | Requires Universal Subscription separately from WebLogic licence | Free if WebLogic configured to use OpenJDK |
| Java on AWS EC2 production | Requires Universal Subscription | Free — use Amazon Corretto |
| Java on Azure VM production | Requires Universal Subscription | Free — use Microsoft Build of OpenJDK |
| Old Oracle JDK 8 deployment (8u202 or older, not updated since 2019) | Technically licensed under old terms; security risk | Migrate to OpenJDK 8 or Java 21 |
| Oracle JDK 21 current quarterly build | Free under NFTC if truly current | Free |
| Oracle JDK 17 (not current quarterly build) | Requires Universal Subscription | OpenJDK 17 — free |
The pattern is consistent: if you use Oracle JDK for any production commercial purpose beyond the exact current quarterly release, you need a paid Universal Subscription. If you use any OpenJDK distribution, you are free for all purposes. The distinction is the vendor of the JDK binary, not the Java version number. Java 21 is not inherently paid or free — Oracle JDK 21 is paid; OpenJDK 21 is free.
Oracle's marketing around the NFTC emphasises that Oracle JDK is free for many uses, including production use of current builds. This is technically correct but operationally irrelevant for the majority of enterprise organisations. Oracle releases quarterly security and bug-fix updates to Oracle JDK — in January, April, July, and October each year. Each quarterly release becomes the new "current build." The previous quarterly release is no longer "current" and is no longer covered by NFTC for commercial production use — it requires a paid Universal Subscription.
Enterprises with formal change management processes cannot realistically update their Java runtime every three months across their entire server estate. The testing, validation, approvals, and deployment coordination required to update the JVM quarterly across a complex enterprise environment — application servers, middleware, database JDBC drivers, batch processing systems, integration platforms — requires months of lead time, not weeks. By the time the new quarterly release completes the change management cycle, the next quarterly release has already made it "not current."
This architecture is not accidental. Oracle's NFTC was designed to appear free while being practically unavailable as a commercial production option for regulated or complex enterprise environments. The customers for whom the NFTC "current build" free tier genuinely applies are small organisations with simple Java deployments that can update quarterly without constraint. For large enterprises — particularly in financial services, healthcare, utilities, and manufacturing — the Universal Subscription is a mandatory commercial requirement if they want to run Oracle JDK in production.
Oracle's licence does provide genuine free use for individual developers and educational institutions. The Oracle NFTC and its predecessor licences have consistently permitted developers to run Oracle JDK on personal computers for development, testing, and prototyping purposes without a commercial subscription. This exemption is important for developers and is not contested.
The boundary of this exemption is clear: development use on a personal machine is free; running Oracle JDK in a production environment that serves commercial applications is not. An individual developer writing a Spring Boot application on their MacBook using Oracle JDK is free under NFTC. That same developer deploying their application to a production server running Oracle JDK requires the Universal Subscription to cover that server. The distinction is development/test vs production/commercial deployment.
The staging environment question is one Oracle's LMS team actively exploits. Many organisations run Oracle JDK in staging (pre-production) environments and argue these are not "commercial production use." Oracle's position is that staging environments that serve the commercial production pipeline are in scope for the Universal Subscription. Independent legal analysis supports a more nuanced view, but the safest position — for organisations that want to avoid Oracle audit claims entirely — is to run OpenJDK distributions in all environments, not just production. This eliminates the staging environment ambiguity entirely.
Our Oracle licence optimisation service identifies every Oracle JDK deployment in your estate, maps it to licence obligations, and designs an OpenJDK migration or Universal Subscription strategy that eliminates ambiguity. Download the Java Licensing Survival Guide for the complete framework.
The path to zero Oracle Java SE licence cost in 2026 is straightforward and technically supported: replace all Oracle JDK deployments with OpenJDK distribution equivalents. No Oracle Java SE licence is required for any OpenJDK distribution, for any version, for any use case, in any environment.
The practical steps for an organisation that wants to eliminate Oracle Java licence costs entirely are: conduct a Java estate inventory to identify all Oracle JDK installations; select an OpenJDK distribution aligned with your infrastructure (Amazon Corretto for AWS-heavy organisations, Red Hat OpenJDK for RHEL environments, Adoptium Temurin as a vendor-neutral default, Microsoft Build of OpenJDK for Azure); create and enforce a standard JDK distribution policy; migrate existing Oracle JDK deployments to the selected OpenJDK distribution using standard deployment methods; and verify that downstream application behaviour is identical post-migration.
For organisations that cannot migrate immediately — due to compliance timelines, change management constraints, or critical system dependencies — the interim position is to establish a minimal-scope Oracle Java SE Universal Subscription covering only the confirmed Oracle JDK deployments that cannot be migrated. The subscription should be explicitly scoped, with carve-outs negotiated for non-Oracle-JDK environments. Our Oracle contract negotiation team regularly negotiates Universal Subscription scoping that significantly reduces the Employee Metric obligation by excluding business units, subsidiaries, and environments where OpenJDK has been verified as the deployed runtime.
See our complete Oracle Java Licensing Guide for the full decision framework, and the Java 8 to Java 21 migration guide for organisations simultaneously managing a version migration alongside the licensing transition.
Everything your organisation needs to know about Oracle vs OpenJDK — free use boundaries, Universal Subscription modelling, OpenJDK migration framework, and audit defence if Oracle comes calling.
Download Free Guide →Java licensing updates, free-vs-paid boundary changes, and OpenJDK migration intelligence for enterprise teams — delivered monthly.
Written by the Oracle Licensing Experts team — former Oracle insiders with 25+ years of combined experience in Oracle LMS, Java licensing, and enterprise contract negotiation. Not affiliated with Oracle Corporation.