Oracle JDK 21 stopped being free on 20 October 2026: the four options, costed

Oracle JDK 21 updates became paid at the 20 October 2026 CPU. Three of the four exits are free.

Read time
15 min
Word count
2.8K
Sections
10
FAQs
8
Share
Oracle JDK 21 licence change timeline showing the October 2026 paid-update cliff
Oracle JDK 21 updates moved to the paid OTN licence at the 20 October 2026 Critical Patch Update.
On this page · 10 sections
  1. What actually changes, and on which date
  2. Who is not affected at all
  3. The four exits, and what each one costs
  4. The JDK 17 trap
  5. Where Oracle's own pages disagree
  6. India-specific considerations
  7. What to do now
  8. FAQ
  9. How eCorpIT can help
  10. References

Summary. Oracle JDK 21 updates left the free No-Fee Terms and Conditions (NFTC) licence after September 2026. The first update licensed under the paid Java SE OTN terms is JDK 21.0.13, released in the Critical Patch Update of 20 October 2026. Oracle announced this on 14 August 2026. The commercial exit, a Java SE Universal Subscription, starts at $100 a year for up to 10 employees under Oracle's 8 October 2026 price list, and its enterprise rates fall to a published $5.25 per employee per month. The other three exits cost nothing: upgrade to JDK 25, which stays under NFTC until September 2028; switch to a non-Oracle OpenJDK build such as Eclipse Temurin 21, supported to at least December 2029, or Amazon Corretto 21, supported to October 2030; or freeze on the last NFTC binary, 21.0.12.1, and accept no further security patches. The subscription is priced per employee, not per developer or per server, so a 1,000-person company pays for 1,000 people whether 4 engineers write Java or 400 do.

Update, 2 November 2026. The licence change has happened. Oracle JDK 21.0.13, released on 20 October 2026, is the first update under OTN, and the last NFTC build is 21.0.12.1 from 18 August 2026. Oracle's 8 October 2026 price list also replaced the $15 entry rate with annual prices from $100 for organisations under 3,000 employees. Our 2027 guide to the Oracle JDK 21 licence and Java audits has the current position.

That last point is where most of the money is lost. Teams read "Java 21 is going paid", price it against their Java headcount, and get a number that is wrong by an order of magnitude. The metric Oracle sells on has nothing to do with how much Java you run.

What actually changes, and on which date

Nothing changes in the JDK itself. No API is removed, no bytecode level moves, no binary stops working. What changes is the licence attached to the next update you download.

Oracle's Java downloads page now says the Oracle JDK 21 licence changed in October 2026. Updates from 21.0.13 fall under the Java SE OTN licence, which allows uses such as personal and development use at no cost, and other uses allowed under earlier licences may no longer be available. The current release on 2 November 2026 is JDK 21.0.13.0.3.

The mechanism is Oracle's one-year overlap rule. JDK 25 LTS shipped in September 2025, which started a twelve-month window during which both JDK 21 and JDK 25 remained available under the permissive licence. That window closed at the end of September 2026.

Donald Smith, Vice President of Product Management at Oracle, wrote in the 14 August 2026 announcement: "This one-year overlap is intended to give users who wish to continue using the permissive no-fee NFTC license time to migrate to Oracle JDK 25, the latest LTS release."

The date the licence changed was 20 October 2026. Oracle publishes Critical Patch Updates on the third Tuesday of January, April, July and October, and its security-alerts page lists 19 January 2027 as the next one. The 20 October 2026 release, JDK 21.0.13, is the first JDK 21 update carrying OTN terms.

One detail almost everyone will get wrong. Since May 2026 Oracle also ships Critical Security Patch Updates on the third Tuesday of February, March, May, June, August, September, November and December, and 15 September 2026 was one of them. Oracle's wording is that NFTC covers JDK 21 updates "through and including September 2026". No JDK 21 build shipped in September, so the last free-for-production binary is 21.0.12.1, released on 18 August 2026. If your compliance evidence records "the last NFTC build", record the actual build you pulled and the date you pulled it, not the quarter.

Date Event Licence on JDK 21 updates
September 2023 JDK 21 GA NFTC, free for production
September 2025 JDK 25 LTS GA, overlap starts NFTC, free for production
21 July 2026 July 2026 Critical Patch Update NFTC, free for production
18 August 2026 Last NFTC build, 21.0.12.1 (no JDK 21 build shipped in September) NFTC, free for production
20 October 2026 October 2026 Critical Patch Update OTN, production use requires a fee
September 2031 End of Oracle commercial support for Java 21 Subscription only

Who is not affected at all

The announcement is narrower than the headlines suggest. Oracle lists several categories that keep taking the latest JDK 21 updates exactly as they do now:

Java SE Universal Subscription customers and legacy Java SE product customers. Workloads running on Oracle Cloud Infrastructure. Anyone using Oracle Java as part of a separately licensed Oracle product. And anyone using Java for personal use, development, testing, prototyping or demonstrating applications, which the OTN licence grants at no cost.

That last grant matters more than it looks. Developer laptops, CI build agents and test environments are covered by the free grants of the OTN licence. The fee attaches to production. A team that runs Oracle JDK 21 on workstations and Temurin in production has no exposure at all after October 2026, and a team in the reverse position has full exposure.

Also unaffected: every OpenJDK build that is not Oracle's. The source is the same upstream OpenJDK project, released under GPLv2 with the Classpath Exception. Oracle's licence change applies to Oracle's binaries.

The four exits, and what each one costs

Option 1: upgrade to JDK 25

JDK 25 is the current LTS and stays under NFTC, free for production and free to redistribute, until September 2028. That is the option Oracle is steering towards, and for most estates it is the right one, because the work is a JDK upgrade you were going to do anyway inside three years.

The cost is engineering time, not licence fees. JDK 21 to 25 is a four-version jump across two feature releases, so the realistic work is dependency updates (build plugins, bytecode manipulation libraries, agents), a pass over anything reading internal JDK APIs, and a performance re-baseline. Nothing in this jump is a language-level breaking change on the scale of the Java 8 to 11 module migration.

Note the trap in the timing: taking JDK 25 buys you until September 2028, at which point the same overlap rule applies again after Java 29 ships in September 2027. This is now a permanent two-year cadence, not a one-off event.

Option 2: move to a non-Oracle OpenJDK build

The free-forever answer. Same upstream source, same TCK certification, different publisher, and free support windows that run years past Oracle's free JDK 21 updates.

Distribution JDK 21 support ends Licence Cost
Oracle JDK 21 September 2031 (subscription only) OTN from 20 Oct 2026 From $100 a year by headcount
Eclipse Temurin 21 At least December 2029 GPLv2 with Classpath Exception Free
Amazon Corretto 21 October 2030 GPLv2 with Classpath Exception Free
Red Hat build of OpenJDK 21 31 December 2029 full support, 30 September 2031 ELS-1 GPLv2 with Classpath Exception Included in RHEL subscription

Eclipse Adoptium's support table gives Temurin 21 an end of availability of "at least Dec 2029", with 21.0.13+9 current on 2 November 2026 and quarterly releases continuing. Amazon publishes a firmer date: Corretto 21 has a last planned update of July 2030 and end of life in October 2030, distributed under GPLv2 with CPE at no cost. Red Hat's OpenJDK life-cycle policy, updated 13 August 2026, gives OpenJDK 21 full support to 31 December 2029 and paid ELS-1 to 30 September 2031, with entitlements included in a RHEL subscription.

Amazon describes Corretto as "designed as a drop-in replacement for all Java SE distributions unless you are using features not available in OpenJDK". In practice the swap is a base-image change or an alternatives update, then a full regression run. Budget for the regression run, not the swap.

The one genuine incompatibility to check before you commit: Oracle-specific extras that are not in OpenJDK. Java Flight Recorder is upstream and fine. Jipher, Oracle's FIPS 140 cryptographic provider, is not. Jipher 20, the current release, is licensed under OTN and supported through Oracle's Java Verified Portfolio, which is included for subscribers and Oracle Cloud customers. If a regulated workload depends on Jipher, the free distributions do not replace it and a subscription conversation is unavoidable.

Option 3: buy the Java SE Universal Subscription

Oracle's subscription FAQ states the pricing model directly. The subscription is sold on an employee-based metric. Under 3,000 employees the annual price is $100 for up to 10, $1,000 for up to 100, $10,000 for up to 500, and $10,000 plus $147.20 for each employee above 500. From 3,000, rates start at $10.50 per employee per month and fall to a published $5.25, and may go lower above 50,000 employees.

Read the metric carefully. It is employees, not Java developers, not servers, not cores, not containers. Oracle confirms the architecture is irrelevant: "Java SE Universal Subscriptions are available per Employee. The underlying application architecture and deployment model does not affect pricing." Worked from Oracle's 8 October 2026 price list, a 900-employee company pays the $10,000 flat price for the first 500 employees plus $147.20 a year for each of the other 400. That is $10,000 + (400 x $147.20) = $68,880 a year, or $5,740 a month, regardless of whether it runs one Java service or two hundred.

That arithmetic is why the subscription is usually the wrong answer for a mid-sized firm with a small Java estate, and can be the right answer for a bank with thousands of Java processes and a hard requirement for vendor-backed patches with a support contract behind them.

One more clause to read before signing. Oracle's FAQ on non-renewal: "At the end of your Java SE Universal Subscription, your rights to any commercial software downloaded under the subscription, and your access to Oracle Premier Support, will end. We recommend transitioning your Java SE applications to OpenJDK binaries from Oracle (under a GPL license) before the end of your subscription." A subscription is not a purchase. If you stop paying, you migrate anyway, from a later starting point.

Option 4: freeze on 21.0.12.1 and stop patching

Legal, free, and a decision rather than a plan. The NFTC binaries you already hold stay licensed under the terms you received them under. Oracle's NFTC text grants a licence to "internally use the unmodified Programs for the purposes of developing, testing, prototyping and demonstrating your applications, and running the Program for Your own personal use or internal business operations", with no expiry clause on binaries already obtained.

What you give up is every subsequent security fix. Java CVEs are disclosed publicly in each quarterly advisory, so freezing means running a runtime whose unpatched vulnerabilities are published on a schedule. That first advisory has landed: the October 2026 Critical Patch Update carried 55 Java SE patches, 49 of them remotely exploitable without authentication, and lists 21.0.12.1 as affected. For anything internet-facing this is no longer a defensible position.

The honest use for this option is as a bridge: freeze deliberately for one or two quarters while a JDK 25 upgrade or a Temurin swap completes, with the end date written down.

The JDK 17 trap

A predictable reaction to "JDK 21 is going paid" is "then we will stay on 17". That is backwards on both counts.

Oracle JDK 17 left the permissive licence two years ago. Updates from 17.0.13 onwards, released after 15 October 2024, are already under the OTN licence. There is no free-for-production Oracle JDK 17 to fall back to.

Separately, Oracle's roadmap lists JDK 17 premier support until September 2026, the month before the JDK 21 licence change. Extended support runs to September 2029, and Oracle's roadmap footnote is worth quoting because it is genuinely favourable and widely missed: "The Extended Support fee will be waived for the period October 2026 to September 2029 for Java SE 17." So an existing Oracle customer on 17 keeps extended support at no uplift for three years. A non-customer on 17 gets nothing, because that waiver applies to the extended-support fee, not to the licence.

The net position: JDK 17 is a worse place to sit than JDK 21, not a safer one.

Where Oracle's own pages disagree

Three Oracle pages state the JDK 25 free-licence end date, and they do not match. The 14 August 2026 announcement says "JDK 25 updates are planned to remain available under the NFTC until October 2028". The licensing FAQ says "until September of 2028", and its licence table gives "Oracle JDK, releases through September 2028". The downloads page also says September 2028.

The discrepancy is almost certainly the same distinction as with JDK 21: updates through September, with the first OTN-licensed release arriving at the October CPU. Two of the three pages say September, so plan to September 2028 and treat October as the first paid release. If a licence position turns on that month, get it in writing from Oracle rather than from a web page.

This is a general lesson for anyone tracking vendor end-of-life dates. Roadmap tables, blog announcements and download pages are maintained by different teams and drift apart. The download page for the specific version you run is usually the most current of the three, because it changes with every release.

India-specific considerations

For Indian services companies and global capability centres, the employee-based metric is the whole story. A GCC with 6,000 staff in Bengaluru and 40 Java engineers is priced on 6,000. Indian IT services firms and GCCs run headcounts where the subscription's total contract value crosses seven figures in USD long before the Java estate justifies it, which is why the free distributions dominate here.

Two India-specific points worth adding to the decision memo. First, if the Java workload processes personal data, a frozen unpatched runtime is difficult to defend under the reasonable-security-safeguards obligation in the Digital Personal Data Protection Act 2023, so Option 4 carries regulatory weight beyond the technical risk. Second, for BFSI workloads under RBI supervision, the deciding factor is usually whether the auditor accepts a community-supported distribution. Red Hat's build and Amazon Corretto both come with a named commercial entity behind them, which answers that question more cleanly than a bare community build.

What to do now

The work now is inventory and decision, not migration. Migration can follow.

  1. Find every Oracle JDK 21 binary in production. Not every JDK, specifically Oracle's. java -version distinguishes them: Oracle builds report "Java(TM) SE Runtime Environment", OpenJDK builds report "OpenJDK Runtime Environment". Sweep container images and base images too, where a FROM line pinned years ago is the usual source of surprise.
  1. Separate production from everything else. Development, test, prototyping and demonstration are covered by the OTN free grants. Only production drives cost.
  1. Check for Oracle-only components. Jipher for FIPS 140, the Java Management Service features kept for subscribers, and on JDK 8 the Enterprise Performance Pack. These do not come across to a free distribution.
  1. Pick one target and one bridge. JDK 25 if the upgrade is tractable this year, Temurin or Corretto 21 if it is not. Both are defensible; running both across different services is not.
  1. Write down the freeze end date if you freeze. A frozen runtime without a dated exit becomes permanent.

The real cost here is the inventory, not the licence. Most estates do not know which JDK is in which container, and that is the work that has to happen no matter which of the four options you choose.

If the answer is a JDK upgrade rather than a distribution swap, it belongs with the rest of the modernisation backlog rather than as a standalone project. The same inventory feeds a monolith to microservices migration and the platform engineering patterns that make the next runtime cutover routine. The mechanics also rhyme with the MySQL 8.0 end-of-life and extended-support cost decision: a vendor deadline, a paid extension, and a free alternative that most teams should take.

FAQ

How eCorpIT can help

eCorpIT runs JDK inventory and cutover work as part of application modernisation engagements: finding which runtime is in which container, separating production exposure from development use, and executing the upgrade or the distribution swap with a regression suite behind it. The firm is CMMI Level 5 and ISO 27001:2022 certified, and delivers this work through senior-led engineering teams rather than staff placement. See Java development services for the wider engagement model, or talk to us through /contact-us/ about a runtime inventory.

References

  1. JDK 21 approaches end-of-permissive license — Donald Smith, Oracle, 14 August 2026.
  1. Oracle Java SE Support Roadmap — Oracle, updated 20 October 2026.
  1. Oracle Java SE Licensing FAQ — Oracle.
  1. Java SE Universal Subscription FAQ — Oracle.
  1. Java Downloads — Oracle, JDK 21.0.13.0.3, 25.0.5.0.3 and 27.0.1.0.3 licence statements.
  1. Oracle No-Fee Terms and Conditions (NFTC) License Agreement — Oracle.
  1. Critical Patch Updates, Critical Security Patch Updates, Security Alerts and Bulletins — Oracle, CPU and CSPU calendar.
  1. Temurin Support — Eclipse Adoptium release and end-of-availability table.
  1. Amazon Corretto FAQs — AWS, Corretto support calendar and licence terms.
  1. OpenJDK Life Cycle and Support Policy — Red Hat, updated 13 August 2026.
  1. Oracle Technology Network License Agreement for Oracle Java SE — Oracle, OTN free grants.
  1. Oracle Java SE Universal Subscription Global Price List, 8 October 2026 — Oracle
  1. JDK 21.0.13 Release Notes, 20 October 2026 — Oracle
  1. JDK 21.0.12.1 Release Notes, 18 August 2026 — Oracle
  1. Java Archive Downloads, Java SE 21 — Oracle
  1. Critical Patch Update Advisory, October 2026 — Oracle
  1. Oracle Jipher downloads — Oracle
  1. Oracle Java Verified Portfolio — Oracle

Last updated: 2 November 2026.

Frequently asked

Quick answers.

01 Does Oracle JDK 21 stop working after October 2026?
No. Every binary already installed keeps running and stays licensed under the terms it was obtained under. What changed is the licence on updates released from the 20 October 2026 Critical Patch Update onwards, which moved to the Java SE OTN licence and require a fee for production use.
02 Can we keep using Oracle JDK 21 for development after the change?
Yes. The OTN licence grants free use for personal use, development, testing, prototyping and demonstrating applications. Developer laptops, CI agents and test environments stay free. The fee attaches to production deployment, so the exposure depends entirely on which environments run Oracle's binaries.
03 What does the Java SE Universal Subscription cost?
Oracle prices it on an employee-based metric. Its 8 October 2026 list charges $100 a year for up to 10 employees, $1,000 for up to 100 and $10,000 for up to 500, then $147.20 per extra employee to 2,999. From 3,000, rates fall from $10.50 to $5.25 per employee per month, and may go lower above 50,000. Deployment architecture does not change the price, so containers and cloud make no difference to the total.
04 Is Eclipse Temurin a genuine replacement for Oracle JDK 21?
For most workloads, yes. Temurin is built from the same upstream OpenJDK source under GPLv2 with the Classpath Exception, and Adoptium supports Temurin 21 until at least December 2029. The exceptions are Oracle-only components such as Jipher, which have no free equivalent.
05 Should we move to JDK 17 instead to avoid the change?
No. Oracle JDK 17 updates from 17.0.13, released after 15 October 2024, are already under the OTN licence, so there is no free-for-production fallback. Oracle's roadmap also lists JDK 17 premier support only until September 2026, with extended support running to September 2029.
06 How long does JDK 25 stay free for production?
Oracle's downloads page and licensing FAQ both state that JDK 25 receives NFTC updates until September 2028, one year after Java 29 LTS ships in September 2027. The August 2026 announcement says October 2028 instead. Plan to September 2028 and treat October as the first paid release.
07 What happens if we buy a subscription and later stop paying?
Oracle states that rights to commercial software downloaded under the subscription end when the subscription does, along with Premier Support access. Oracle recommends transitioning applications to GPL-licensed OpenJDK binaries before the subscription ends, which means the migration still happens, only later.
08 Does this affect Amazon Corretto or Red Hat's OpenJDK build?
No. Oracle's licence change applies to binaries Oracle publishes. Corretto 21 is supported to October 2030 and Red Hat's OpenJDK 21 to 31 December 2029 with paid ELS-1 to September 2031, both under GPLv2 with the Classpath Exception, both unaffected by the NFTC transition.

About the author

Manu Shukla

Founder & Director

Founder of eCorpIT. Hands-on engineer leading senior-only delivery for AI apps, custom software, and cloud systems for global clients.

Subscribe

One engineering note a week. No fluff, no spam.

Senior-architect playbooks on AI agents, mobile apps, cloud, security, data, and marketing — delivered every Wednesday.

Past the reading

Read enough. Let's build something.

A senior architect responds in 24 working hours with scope, indicative cost, and a timeline. NDA before any technical conversation.

Loading search…

Browse all guides