Now openThe whole vendor lifecycle in one workspace. Benchmarking, negotiations, contracts, invoices, renewals. Free 30 day trial, no card.Start the trial →
Now openThe whole vendor lifecycle in one workspace. Benchmarking, negotiations, contracts, invoices, renewals. Free 30 day trial, no card.Start the trial →
Editorial photograph of a negotiation handshake across a boardroom table
Oracle · Java Migration Patterns · Analysis

Full Migration, Hybrid, or Subscribe: Three Java Patterns Modeled

We model the three dominant responses to Oracle's per-employee Java metric on the same workloads and the same headcounts. The subscription loses on cost in the majority of estates we see, and this article shows you exactly where and why.

Contact Us Oracle Hub
500+Enterprise clients
$2B+Under advisory
Industry Recognized
500+ Enterprise Clients
$2B+ Under Advisory
11 Vendor Practices
100% Buyer Side Independent

We model the three dominant responses to Oracle's per-employee Java metric on the same workloads and the same headcounts. The subscription loses on cost in the majority of estates we see, and this article shows you exactly where and why.

The three patterns, and why the choice is now purely economic

Since Oracle rewrote the Java model on January 23, 2023, replacing the per-processor and Named User Plus metrics with the single Java SE Universal Subscription priced per employee, every buyer faces the same three-way fork. You can subscribe under the new metric, you can fully migrate off Oracle binaries to OpenJDK, or you can run a hybrid: free Oracle JDK on the current LTS for most of the estate, with a scoped paid subscription only where a residual certification requirement forces it. The technical differences between these binaries are negligible. OpenJDK is TCK-compliant and functionally identical for the overwhelming majority of workloads. That means the decision is not an engineering decision. It is a pricing decision, and the pricing math decisively favors leaving Oracle in most estates we model.

The reason is structural. The subscription charges on headcount, not on Java footprint. Footprint-based alternatives (third-party support, OpenFOSS support contracts, or full exit) charge on the machines and JVMs that actually run Java. Whenever your workforce exceeds your Java footprint, and in nearly every enterprise it does by a wide margin, the per-employee metric is the most expensive way to consume Java. In roughly 7 of 10 estates we advise, based on our engagement data across the last three years, the subscription is the losing pattern on total cost. This is not a marketing claim from a distribution vendor. It falls straight out of the arithmetic below. If you have not yet mapped where Oracle Java actually runs, start with the Oracle Java to OpenJDK migration decision and execution guide before you renew anything.

The subscription charges on headcount. The alternatives charge on footprint. In most estates, the workforce dwarfs the Java footprint, and that gap is the entire cost story.

Pattern one: Subscribe. The headcount tax explained

The Universal Subscription counts every employee, not every Java user. Oracle's definition is expansive: all full-time, part-time, and temporary employees, plus all full-time, part-time, and temporary employees of your agents, contractors, outsourcers, and consultants that support your internal business operations. The license quantity is set by total headcount, not by the number of people who touch Java. In practice this means a 5,000-employee organization where 50 developers write Java code still licenses 5,000 employees. The metric also sweeps in affiliates under common control and acquired entities from the acquisition date. We break the counting rules down in full in the Java Universal Subscription employee metric decode.

List pricing runs on volume bands, starting at $15 per employee per month below 1,000 employees and stepping down as headcount rises. The table below reflects Oracle's published tiers. Note that the floor is $5.25 for very large estates, and beyond 50,000 employees pricing is custom and negotiated case by case.

Employee band List rate ($/emp/month) Annual cost at band minimum
1 to 999$15.00$179,820 (999 employees)
1,000 to 2,999$12.00$144,000 (1,000)
3,000 to 9,999$10.50$378,000 (3,000)
10,000 to 19,999$8.25$990,000 (10,000)
20,000 to 29,999$6.75$1,620,000 (20,000)
30,000 to 39,999variesnegotiated
40,000 to 49,999$5.25$2,520,000 (40,000)
50,000+customcase by case

Oracle's own price-list worked example shows the reach of the metric: a company with 23,000 full-time, part-time, and temporary employees plus 5,000 agents, contractors, and consultants totals 28,000, and at $6.75 per month pays 28,000 x $6.75 x 12 = $2,268,000 per year. The pre-2023 baseline was far lower for the same footprint. Before the change, desktop Java ran roughly $2.50 per user per month and server Java roughly $25 per processor core per month. Buyers who migrated a modest footprint under the old per-processor model routinely paid a fraction of the new employee bill. One software company held a per-processor Oracle Java subscription covering their needs for about $200,000 per year; Oracle's renewal quote under the employee model came to 5,000 x $10.50 = $630,000 per year, over three times higher for the identical footprint.

Reported multipliers vary because they depend entirely on the ratio of headcount to footprint. Azul's customer survey framed the increase at 2x to 12x. Other analyses put it as high as 4x to 50x for estates where actual Java usage is tiny relative to total staff. The wider that ratio, the more punishing the metric. This is the single fact every CFO needs to internalize before renewal, and it is the spine of the CFO business case to leave Oracle Java.

Pattern two: Full migration. Removing the fee entirely

Full migration eliminates the per-employee fee completely and legally. The sequence is straightforward to describe and takes discipline to execute: inventory every place Oracle JDK is actually installed, migrate those workloads to a supported OpenJDK build (Adoptium Temurin, Amazon Corretto, Microsoft Build of OpenJDK, Azul Zulu, Red Hat, or BellSoft), remove the Oracle binaries, then drop the subscription at renewal. Because OpenJDK is free and TCK-compliant, once Oracle binaries are gone there is no license obligation and no audit surface for Java. We compare the leading builds on support SLA, update cadence, and platform coverage in the distribution choice guide and in the broader OpenJDK alternatives comparison.

The work is real. A clean exit is not an afternoon project. Our field data and published migration benchmarks put a full enterprise migration at roughly 9 to 14 months for a mid-to-large estate, driven mostly by discovery, third-party application dependencies, and CI/CD cleanup rather than by any single technical blocker. See the 9 to 14 month reality for the phased schedule. The two areas that consume the most effort are developer workstations and build pipelines (covered in the CI/CD and workstation cleanup guide) and vendor products that bundle Oracle Java inside them (the embedded JDK migration guide deals with these directly).

The payoff is decisive. If you take the free OpenJDK path with no paid support, the recurring Java cost goes to zero. If you buy commercial third-party support for peace of mind, the cost is footprint-based and small next to the employee metric. Third-party OpenJDK support commonly runs around $25 per desktop per year and roughly $40 per server core per year. Azul is generally about 70 percent less than the Oracle equivalent, and on a 500-employee company with 30 Java workloads typically prices at twenty to forty percent of the Oracle bill. The exit map, including the sequencing that avoids stranding a workload without support, is laid out in exiting the Oracle Java SE subscription.

Removing the Oracle binaries does not just cut the invoice. It removes Java as an audit target entirely, which is worth more than the license savings on its own.

Pattern three: Hybrid. Free Oracle JDK plus a scoped subscription

The hybrid pattern keeps most of the estate on the current free Oracle JDK LTS under the No-Fee Terms and Conditions (NFTC) license, and pays a scoped subscription only where a specific vendor certification, support requirement, or contractual clause forces you onto a paid Oracle build. This is legitimate. Individual applications can run different JDK distributions; there is no requirement to standardize the entire estate on one product. The hybrid is attractive when a handful of applications need Oracle-certified Java while the bulk of the estate can sit on free binaries.

The catch is the NFTC treadmill. The free license attaches to an LTS release for a fixed window and then expires, forcing a version upgrade to stay free. The JDK 17 precedent shows exactly how the cliff works: NFTC coverage for Oracle JDK 17 expired in September 2024, build 17.0.12 (July 2024) was the last free update, and every JDK 17 release after that falls under the OTN agreement and requires a subscription for production use. JDK 21 follows the same pattern: free under NFTC only until September 16, 2026 (one year after JDK 25 shipped in September 2025). JDK 25 gives the longest runway, free under NFTC until September 2028.

Oracle JDK LTS Free NFTC production use through Implication
JDK 17September 2024 (expired; 17.0.12 last free build)Now requires subscription for production
JDK 21September 16, 2026Upgrade before this date or pay
JDK 25September 2028Longest current free runway

Staying free on Oracle JDK therefore demands a continuous, forced upgrade practice to remain on the free LTS at all times. In practice very few organizations and very few applications can sustain that cadence. Every LTS transition is a regression-test cycle across the whole estate, on Oracle's schedule rather than yours. That operational drag is the real cost of the hybrid, and it is why we treat the hybrid as a transition state rather than a destination. If a scoped subscription and forced upgrades both apply, you are carrying the worst of both patterns: recurring fees on part of the estate plus an upgrade treadmill on the rest. Understand the support and rollback exposure in the OpenJDK support and rollback risk analysis before committing to hybrid as a long-term posture.

The three patterns on identical workloads: the number that decides it

Here is the benchmark that makes the subscription's weakness concrete. Take a 5,000-employee enterprise running roughly 200 JVMs. All three patterns must cover the same 200 JVMs. Only the pricing basis changes.

Pattern Pricing basis Annual cost (5,000 emp, ~200 JVMs)
Subscribe (Oracle list)$10.50 x 5,000 x 12$630,000
Subscribe (realistic discount)negotiated$400,000 to $480,000
Third-party support (Azul)per JVM footprint$100,000 to $140,000
Full migration (free OpenJDK, no support)none$0 recurring, plus one-time migration

On the same 200 JVMs, footprint-based support runs three to four times cheaper than the discounted Oracle subscription, and the gap repeats every renewal cycle. Free migration removes the recurring line entirely, offset by a one-time project cost. The larger your headcount relative to your JVM count, the more extreme this gap becomes. A 20,000-employee estate at $6.75 pays $1.62 million per year at list; a 50,000-employee estate at $5.25 pays $3.15 million per year. Those figures do not shrink because you run few JVMs. They are driven purely by headcount. That is why the subscription is the most expensive pattern in the clear majority of estates we model: the employee metric is blind to the footprint you are actually consuming.

On identical JVMs, footprint pricing beat the discounted Oracle subscription three to four times over, and the gap repeats at every renewal, forever.

What the reader should do

  • Run a hard inventory of where Oracle JDK binaries are actually installed before your next renewal date. The employee count is fixed; the only variable you control is whether you owe Oracle at all.
  • Model all three patterns on your own headcount-to-JVM ratio using the tier table above. If your workforce materially exceeds your Java footprint, and it almost certainly does, the subscription will lose.
  • Treat the hybrid as a bridge, not a home. If you use it, calendar the NFTC expiry dates (JDK 21 ends September 16, 2026) and budget the forced upgrade cycles as a real recurring cost.
  • Do not renew the Universal Subscription reflexively. Every renewal at the employee metric locks in headcount-based pricing that a footprint-based alternative would beat.
  • If Oracle has raised an audit or a renewal escalation, price the full-migration path in parallel. The credible ability to walk is the only leverage that moves Oracle's discount, as the Illinois manufacturer case shows.
  • Sequence the exit so no workload is stranded without support during cutover, and validate distribution choice against your actual platform and certification needs.

The pattern comparison is not close in most estates. The subscription's per-employee basis makes it the most expensive of the three whenever headcount outruns footprint, which is the normal condition of an enterprise. Full migration removes the fee; hybrid defers it at the cost of an upgrade treadmill. Buyers who let the renewal drive the decision pay the headcount tax by default. Buyers who model the three patterns first, and hold the exit as leverage, either leave or negotiate a materially better subscription. Engage the OpenJDK migration advisory service if you need the estate inventory and pattern model built to a renewal deadline.

Frequently asked questions

Why is the Oracle Java subscription the most expensive option in most estates?

Because it charges per employee, not per Java footprint. It counts all full-time, part-time, and temporary staff plus contractors, regardless of who actually uses Java. When your total workforce exceeds your Java footprint, and in almost every enterprise it does by a wide margin, the employee metric costs far more than footprint-based third-party support or free OpenJDK migration. On identical workloads we see the subscription run three to four times the cost of footprint-based support.

What is the hybrid Java pattern and when does it make sense?

Hybrid keeps most of the estate on the free Oracle JDK LTS under the NFTC license, while paying a scoped subscription only where a vendor certification or contract forces a paid Oracle build. It makes sense as a transition state when a few applications genuinely require Oracle-certified Java. It is not a durable destination because the NFTC forces continuous LTS upgrades to stay free, a cadence few organizations can sustain.

When does the free Oracle JDK 21 license expire?

Oracle JDK 21 remains free for production use under the NFTC until September 16, 2026, which is one year after JDK 25 shipped in September 2025. After that date, JDK 21 updates fall under the OTN agreement and require a paid subscription. JDK 25 offers the longest runway, free under the NFTC until September 2028. The JDK 17 precedent, which expired in September 2024, shows how the cliff works in practice.

Does migrating to OpenJDK legally remove the Oracle Java fee?

Yes. OpenJDK is free and TCK-compliant. Once you inventory where Oracle JDK is installed, migrate those workloads to a supported OpenJDK build such as Temurin, Corretto, or Zulu, remove the Oracle binaries, and drop the subscription, the per-employee obligation ends entirely. It also removes Java as an audit target, which is worth as much as the license savings.

How much can third-party OpenJDK support save versus Oracle?

A great deal. Third-party support is priced per server, core, or JVM, commonly around $25 per desktop per year and $40 per server core per year. Azul typically runs about 70 percent less than the Oracle equivalent, and on a 500-employee company with 30 Java workloads it often prices at twenty to forty percent of the Oracle bill. On a 5,000-employee estate with 200 JVMs, footprint-based support runs roughly 100,000 to 140,000 dollars per year against 400,000 to 480,000 discounted for Oracle.

How long does a full Oracle Java migration take?

Based on our engagement data and published benchmarks, a full enterprise migration typically takes 9 to 14 months for a mid-to-large estate. The bulk of the effort is discovery, third-party applications with embedded Oracle JDKs, and cleaning Oracle Java out of CI/CD pipelines and developer workstations, rather than any single technical blocker.

Free White Paper

Oracle Database ULA Negotiation

The full white paper on Oracle Database ULA negotiation. Scope, term, certification, territory, growth, exit, Oracle Database vs Oracle Cloud Database.

Gated with a work email on the download page. No sales follow up you did not ask for.

Get the White Paper →
Independent, buyer side. We never share your details with vendors.
Run a software spend health check against your Oracle estate in under five minutes.
Open the Tool →
Deep Library

More on this topic.

Oracle Hub →
Oracle Java to OpenJDK Migration in 2026: The Decision and Execution Guide
Oracle · Guide
Oracle Java to OpenJDK Migration in 2026: The Decision and Execution Guide
The full guide this article belongs to.
Guide
Exiting Oracle Java SE. The migration map.
Oracle
Exiting Oracle Java SE. The migration map.
Exit the Oracle Java SE subscription by mapping where Oracle Java actually runs, then movi
Guide
The Oracle Java Universal Subscription Employee Metric, Fully Decoded
Oracle
The Oracle Java Universal Subscription Employee Metric, Fully Decoded
How Oracle's Java Universal Subscription employee metric is defined, counted, priced acros
Guide
Oracle Java SE Procurement. 20 critical insights: the per employee metric, the audit posture, and the OpenJDK escape route.
Oracle
Oracle Java SE Procurement. 20 critical insights: the per employee metric, the audit posture, and the OpenJDK escape route.
Oracle Java SE Universal Subscription procurement guide 2026. Independent buyer side advis
Guide
Editorial boardroom interior

The advisor your vendors do not want.

500+ enterprise clients. 11 vendor practices. Industry recognized. One conversation can change what you pay for the next three years.

Stay ahead of Oracle licensing changes.

One buyer side briefing a week. Renewal signals, audit moves, and the levers that work. No vendor spin.