The Core Question: Are OpenJDK and Oracle JDK Actually Different?

The single most important fact about the OpenJDK versus Oracle JDK comparison is one that Oracle's sales and audit teams have no incentive to emphasise: since Java 11, both distributions are built from the same codebase and produce functionally identical binaries. The features are the same. The performance is the same. The security patches are the same. The bytecode is compatible. Applications compiled against one will run on the other without modification.

Oracle itself confirmed this when it aligned the Oracle JDK and OpenJDK codebases starting with Java 11 in 2018. The divergence that existed in earlier versions โ€” where Oracle JDK included proprietary components not present in OpenJDK โ€” was eliminated. What remains is a difference in licence terms, commercial support obligations, and Oracle's enforcement posture. Those differences, however, carry enormous financial consequences for enterprises that have not actively managed their Java licensing since Oracle's January 2023 subscription change.

The Java Knowledge Hub at Redress Compliance covers the full landscape of Oracle Java licensing changes since 2019, and the Java audit risk assessment provides a practical tool for quantifying your organisation's current exposure under Oracle's Universal Subscription model.

Oracle Java Licence Review

Redress Compliance provides independent Oracle Java licensing reviews โ€” including exposure quantification, OpenJDK migration feasibility assessment, and renewal negotiation support.

Speak to an Expert

What Changed in January 2023: The Universal Subscription Trap

Oracle's January 2023 licensing change transformed the commercial landscape for enterprise Java. Prior to this date, Java SE licences were counted per processor or per named user โ€” a workload-based metric that at least bore some relationship to actual usage. From January 2023, Oracle introduced the Java SE Universal Subscription, which prices by total employee count โ€” not Java users, not deployed instances, not processors running Java, but every employee in the organisation.

The pricing is $15 per employee per month for organisations above certain size thresholds. For a 5,000-employee enterprise, that is $900,000 per year in Oracle Java subscription cost โ€” regardless of whether 500 or 5,000 employees actually use Java. For a 20,000-employee enterprise, the annual cost reaches $3.6 million. Oracle's own pricing calculator confirms these figures, and the cost increases that apply are compounded at 8% per year on the support component, consistent with Oracle's standard support pricing policy.

The practical effect for many enterprises has been a cost increase of 400% to 1,400% compared to their previous Java SE licensing cost. A company that previously paid $45,000 per year for 30 processor licences now faces a $900,000 annual bill based on its headcount. The financial motive for migration to OpenJDK is therefore substantial โ€” and the technical risk of migration, as discussed below, is far lower than Oracle's sales messaging suggests.

Organisations that have not yet responded to the January 2023 change should be aware that Oracle's LMS team has been actively pursuing Java audit notifications throughout 2024 and 2025. Oracle's audits focus on detecting Java SE deployments that are not covered by the Universal Subscription, and the Java audit defence guide describes the approach Oracle takes and how to respond effectively.

OpenJDK Distribution Options for Enterprise Deployment

Once the decision to migrate away from Oracle JDK is made, the next question is which OpenJDK distribution to adopt. Several high-quality, production-grade distributions are available, and choosing the right one depends on support requirements, version strategy, and existing infrastructure commitments.

Eclipse Temurin (from the Adoptium working group) is the most widely adopted community distribution, offering free LTS builds with no licence restrictions. Temurin binaries are TCK-certified โ€” meaning they have passed Oracle's Java SE compatibility test suite โ€” and are available for all major operating systems and architectures. For organisations that do not require commercial support, Temurin is typically the lowest-friction replacement for Oracle JDK.

Amazon Corretto is Amazon's OpenJDK distribution, included at no additional cost with AWS services and available for on-premises and non-AWS environments. Amazon provides multi-year free security updates for Corretto LTS versions, which extends beyond Oracle's own free update windows for equivalent versions. For organisations running workloads on AWS or planning to migrate to AWS, Corretto is a natural choice that also aligns with AWS's long-term Java support commitment.

Azul Zulu and Azul Platform Core provide OpenJDK distributions with optional commercial support contracts available at significantly lower cost than Oracle's Universal Subscription. Azul is TCK-certified and maintains LTS support windows that are competitive with Oracle's commercial offering. Red Hat OpenJDK is included within Red Hat Enterprise Linux subscriptions, making it a zero-incremental-cost option for organisations already running RHEL. IBM Semeru, based on Eclipse OpenJ9, offers a different JVM implementation optimised for lower memory footprint โ€” relevant for containerised deployments where JVM overhead is a factor.

The choice between distributions does not require the same level of due diligence as choosing a commercial vendor โ€” all major OpenJDK distributions are built from the same upstream OpenJDK source and pass the same compatibility tests. The selection criteria are primarily: support model preference (community versus commercial), version currency requirements, and operational familiarity.

The Migration Process: Lower Risk Than Oracle Claims

Oracle's retention messaging around OpenJDK migration typically emphasises risk, complexity, and hidden costs. The reality, for the vast majority of enterprise Java deployments, is considerably more straightforward. The key reason is the codebase identity described above: applications compiled and tested against Oracle JDK 11 or later will run on any TCK-certified OpenJDK 11+ distribution without modification.

A structured enterprise migration follows five stages. The first stage is inventory: identifying all Oracle JDK deployments across the estate, including JDK versions in use, application frameworks, container base images with embedded JDKs, and CI/CD pipeline tooling that references Oracle JDK. Modern software asset management tools can automate much of this discovery, but manual review of container registries and build pipelines is typically also required. The Java audit risk assessment helps organisations scope this inventory exercise.

The second stage is dependency analysis: reviewing application dependencies for any components that reference Oracle-specific internal APIs. Since Java 9, Oracle has progressively restricted access to internal APIs through the module system, and any application code using sun.* or com.sun.* packages requires remediation. In practice, modern frameworks and libraries have already migrated away from these internal APIs, and the incidence rate in well-maintained codebases is low.

The third stage is preparation: selecting the target OpenJDK distribution, establishing a process for distributing JDK updates, and configuring monitoring and alerting that references JVM metrics. The fourth stage is pilot deployment: running a representative set of workloads on the target OpenJDK distribution in a staging environment, validating application behaviour, and confirming performance profiles are within tolerance. The fifth stage is scaled rollout: deploying the tested OpenJDK configuration across the production estate, initially in parallel with Oracle JDK where risk appetite requires it, then completing the cutover and removing Oracle JDK entirely.

For organisations with containerised Java workloads, migration is often faster than for traditional deployments โ€” updating the base image in the Dockerfile and rebuilding containers is typically sufficient for Java 11+ applications. For Java 8 deployments, the migration path is longer because Java 8 predates the codebase alignment, and Oracle's free updates for Java 8 ended in 2019. Migration to Java 11 LTS or later should be the first step, which may itself require application code updates for deprecation removals. Redress Compliance's Java exit strategy guide covers the Java 8 to Java 11+ migration path in detail.

Java Audit Risk Assessment

Quantify your Oracle Java licensing exposure and model the savings from OpenJDK migration.

Run the Assessment โ†’

Negotiating with Oracle During and After Migration

For many enterprises, the right commercial answer is not a binary choice between Oracle JDK subscription and OpenJDK migration โ€” it is a negotiated transition that uses migration leverage to reduce Oracle's subscription demand before or during the move. Oracle's awareness that Universal Subscription pricing is driving migration at scale has made the company willing to negotiate in ways that were uncommon before 2023.

Three negotiation levers are relevant. First, use the migration timeline as leverage: an organisation that demonstrates a credible, active OpenJDK migration programme โ€” with inventory complete and pilot deployment underway โ€” is in a stronger position to negotiate a reduced Oracle subscription bridge or a time-limited flat-fee arrangement covering the transition period. Oracle prefers discounted subscription revenue to losing the customer entirely.

Second, challenge Oracle's headcount count: Oracle's Universal Subscription applies to all employees, but the definition of "employee" in Oracle's contract language has been contested in several audit scenarios. Contract workers, temporary staff, and employees of acquired entities are areas where the scope is frequently overstated in Oracle's initial claim. Careful review of the subscription agreement language and headcount data can narrow the applicable count.

Third, if the organisation has other Oracle products โ€” Database, Middleware, or Cloud services โ€” consider using the Java negotiation as part of a broader commercial discussion. Oracle's account management structure means that concessions on Java can sometimes be offset against commercial terms on other products. However, this requires care: broadening the scope of a Java negotiation can also give Oracle more leverage. An independent Oracle licensing advisor can help define the right negotiation perimeter.

The bottom line on OpenJDK versus Oracle JDK is commercially unambiguous for most enterprises: the technical risk of migration is low, the cost saving is substantial, and Oracle's audit risk disappears entirely once Oracle JDK is removed from the estate. The migration is a one-time project with a permanent payoff.

Written by Morten Andersen Co-Founder, Redress Compliance โ€” 20+ years enterprise software licensing