java licensingservice

The Oracle Java Licensing Changes in 2023 marked a significant shift in Oracle’s license model for Java SE.

Oracle introduced a new product, the Java SE Universal Subscription, licensed per employee – an enterprise-wide metric. Oracle’s Java licensing has undergone multiple changes since 2019, making it challenging to keep up.

This article will address the Java licensing changes in 2019, 2020, and 2023. Additionally, we advise customers on actions to mitigate financial risk.

If you after reading this article thinks that we can help, contact us to discuss how we can support your organization with Java.

Redress Compliance has successfully helped over 40 global entities navigate their Java licensing challenges. Our services are available globally. If you’re interested in a solution that ensures you only pay for the Java users you have, you can request our case study through this link.

Java SE Universal Subscription and Oracle Java Licensing Changes 2023

A summary of this article

  • There are 3 different Java licensing agreements which one to use depends on which version of Java that you are using.

  • Most organizations wrongfully believe older versions does not require a license. Indeed older versions such as Java JDK with a security patch before Java licensing changes in 2020 – most likely need a license.

  • Most organizations face a challenge with Java deployed on virtual environments.

  • Organizations also struggle to purchase license, because Oracle wants to “audit” their deployment before sharing a quotation.

  • The new employee license metric makes Java licensing an even higher priority for organizations. Make sure that you fully understand which Java deployments require a license and where you do not need a license.

  • There are several options available to organizations, migrating away from Oracle JDK, Purchasing Java on employee license or try to negotiate a purchase on legacy metrics. The last options require you to have a full understanding of all Java licensing rules and policies as Oracle will request that you share a deployment report. Redress Compliance can help you with a strategy.

Do you need an Oracle Java License ?

Yes, if you are an organization that have downloaded Java from Oracle website, you should assume that you need a license. Unless you determine otherwise that should be your approach to Java licensing.

If you’re an organization that has downloaded Java from the Oracle website, it’s crucial to understand that you likely need a license. This should be your default approach to Java licensing unless you determine otherwise.

Key Points to Remember:

  • Oracle’s 2019 Announcement: Oracle declared 2019 that security updates for Java 8 could no longer be downloaded without a subscription. This marked a significant shift in how Java updates were accessed.

  • Java Licensing Since 2010: Java has been available under a license agreement since 2010. However, until 2019, this fact was largely overlooked, and Oracle did not have dedicated sales teams for Java. Despite this, most organizations should have purchased a Java license many years ago.

  • 2023 Update – Enterprise-Wide Metric License Model: In 2023, Oracle introduced the enterprise-wide metric license model. This new model implies that if you need Java for even a single user or server, you must buy a license for your entire employee population. It’s no longer possible to license a subsection of your users or servers.

Is Java still free?

Java was never completely free. Some Java licensing was free before 2019. But most companies should have purchased a Java license many years ago, but they didn’t do so because Oracle was not auditing Java and did not have sales teams for Java product.

Recommendation:

Review the Java licensing agreement to understand if you need a license or not. Depending on which versions you run, you may need to have a license for your deployment of Java.

The Oracle Java Licensing agreements to Review

Three Oracle Java Licensing Changes

oracle java licensing changes

There has been 3 different Java licensing changes, one in 2019, a second in 2021 and the last change in 2023.

Below is a summary of the changes and how they impact Java licensing.

Oracle Java Licensing Change in 2019

In 2019, Oracle made several significant announcements regarding Java licensing. 

Here’s a breakdown of these changes:

  1. Subscription Requirement for Updates: Oracle announced that updates to Oracle Java JDK 8 would require a subscription from patch 211 onwards.

  2. Introduction of Java OTN SE Agreement: Oracle introduced a new Java licensing agreement, the Java OTN SE. This agreement forbids all commercial usage.

  3. Implications of the Old BCLA Agreement: The old licensing agreement, BCLA, which most companies did not read, was already making most companies non-compliant.

  4. Timeline of Changes: The changes were announced in 2019, but the Java license change took effect in April 2020.

Oracle Java Licensing Change in 2021 – Introduction of the NFTC Agreement

In 2021, Oracle introduced another significant change to Java licensing. They announced a third licensing agreement, the NFTC – Oracle No-Fee Terms and Conditions.

Impact of Java Licensing Changes in 2021

Oracle made significant announcements regarding Java licensing in 2021. 

Here’s what you need to know:

  1. Free Commercial Usage: Oracle announced that Java is free for commercial usage starting from Java JDK 17 and onwards.

  2. Security Updates: In a blog post, Oracle hinted that if you do not update to Java 17, you may need a Java subscription to apply security updates. However, this has not been officially confirmed.

  3. Older Versions of Java: If you are running older versions of Java (1-16), you are unaffected by the NFTC licensing agreement.
oracle java licensing changes

Understanding the Oracle Java Licensing Change in 2023

On January 23rd, Oracle significantly changed its pricing model for Java SE subscriptions.

Here’s a breakdown of what’s new:

  1. Introduction of “Employee for Java SE Universal Subscription”: Oracle has replaced the old Named User Plus Licensing (user licenses) and Processor licenses (server licensing) with a new license model called “Employee for Java SE Universal Subscription.”

  2. Removal of Old Licenses: The Named User Plus Licensing and Processor licenses are no longer available.

  3. Validity of Existing Agreements: Existing licensing agreements such as Java BCL, Java OTN, and Java NFTC remain valid despite these changes.

  4. Change in License Metric: The change only affects the license metric and not the terms of usage. The new pricing model is based on the number of employees, with different price tiers for different ranges of employee numbers.

Which versions of Oracle Java requires a license ?

Oracle Java JDK versions 1-8 with pre 211 security updates

  • Review the general-purpose definition in the BLCA, you are most likely using Java that should have triggered you purchasing a Java SE license a long time ago.
  • If you have used Java commercial features, you should also have purchased a Oracle Java SE license a long time ago.

The use of Commercial Features requires a separate license from Oracle. These features cannot be used for free under the Java BCLA. Oracle’s Commercial Features are listed below.

  • Java Enterprise (MSI) Installer
  • Java Flight Recorder
  • Java Mission Control
  • JRE Usage Tracking
  • Java Advanced Management Console
  • Jrockit Mission Control, Flight Recorder, or Real time Deterministic GC
java jdk license

Oracle Java JDK versions 1-8 – applying security patch 211 and later.

  • Once you apply security patch 211 or later, you need to license Java under the Java OTN agreement.
  • The only exception is that you do not need to license Java if usage is for any products listed in the schedule b.

Oracle Java JDK versions 11-16

  • You need to license Oracle JDK on both clients and servers, no free usage is allowed.
  • The only exception is that you do not need to license Java if usage is for any products listed in the schedule b.

Oracle Java JDK versions 17+

  • Currently, you do not need to license Oracle JDK 17 and later.

Was Oracle Java (JDK / JRE ) –  free before 2019?

The BCLA allowed for commercial usage if you were using Oracle Java for “general purpose computing”.

If you used Oracle JDK or JRE for any other purposes than general purpose computing, you were not allowed to use Oracle JRE and JDK and your company should have purchased a license from Oracle (Oracle Java SE licenses was available on Oracle technology price list).

Oracle java license

Oracle Java License Cost (Pre-2023)

Oracle offers two distinct products on its Java price list:

Java SE Desktop Subscription: This is a license for your users accessing Java-based applications. It’s important to note that this is not licensed per device but per individual authorized to access a Java-based application.

  • For instance, if you have shared usernames for a device and 20 users are accessing the computer, all 20 individuals must have a Java SE subscription license.
  • Java SE Desktop Subscription costs 2.5 USD per month per user.

Java SE Subscription: This is for licensing the servers where Java is installed. To calculate how to license Oracle Java, you need to apply standard Oracle licensing rules and policies such as:

After calculating and counting the number of processors you need to license, you can look at the Java price list to calculate your financial risk.

  • Java SE Subscription costs 25 USD per month per Oracle processor.

Please note that after January 23, 2023, the legacy price list is no longer available on the web. Staying updated with the latest pricing models is crucial to ensure compliance and avoid unnecessary costs.

java license cost

Oracle Java Licensing on VMware

Oracle view is that if you deploy a Java JDK on a virtual server and are using VMware ESXI 6.0 and upwards, you need to license every physical host in all your vCenters, even in vCenters where you have not installed Java.

The procedure for licensing Oracle Java SE on VMware varies with each ESXi version you’re operating. For a comprehensive understanding, you can refer to the article titled Oracle and VMware Licensing.

java licensing on vmware

Recommendation

Before making any purchase or engaging with Oracle sales teams customers should review their Java licensing.

In addition to reviewing all your Java deployments considering all Oracle licensing rules and policies – you also need to review:

  • Java Commercial features usage.
  • If existing Oracle products included a Java license.
  • If any other third-party software includes a Java license.
  • Review all three licensing agreements and match it to your usage.

Create an Java licensing strategy for VMware/virtualization

If you haven’t a strategy for Oracle licensing in VMware / virtualization, you most likely need to decide on one to untangle Java licensing. Once you have that in place you can decide on the procurement or migration options.

Oracle Software with Included Java SE Licenses

Certain Oracle products come with a restricted-use Java SE license. You might not need to purchase a separate Java SE license if you own a license for any of these products.

Here’s how it works:

  • Included Java SE License: Some Oracle products include a restricted-use Java SE license. You may not need to purchase an additional Java SE license if you have a license for any of these specific products.

  • List of Products: There are about 100 different products that include a Java SE license. A list of some of these products is provided below (please note this is not comprehensive).

By understanding which Oracle products have an included Java SE license, you can save on additional licensing costs. Always check the licensing terms of your Oracle products to ensure compliance.

Oracle Java Licenses

Steps for Oracle Java Negotiation

Oracle java negotiation

Navigating Oracle Java licensing can be complex. Here’s a step-by-step guide to help you understand the process and prepare for negotiation:

  1. Understand Your Java Deployments: Identity which Java deployments in your organization require a license. This understanding is crucial as it forms the basis of your licensing needs.

  2. Create a Java Deployment Report: Count the number of users and servers. 

  3. That would require a license based on the old Oracle Java licensing metrics. This report will provide a clear picture of your organization’s Java usage.

  4. Calculate Licensing Costs: Calculate the potential licensing costs based on the old Java licensing metrics. This will give you an estimate of the financial commitment involved.

  5. Approach Oracle with Prepared Data: With your data in hand, approach Oracle and explain that your willingness to purchase is based on the old licensing metrics. This shows you’ve done your homework and are prepared for the negotiation.

  6. Share Your Deployment Report: Be ready to share your deployment report to prove you have complete control over your licensing information. The account you share must be credible and created using best practices in Oracle license management.

  7. Negotiate a Purchase: Either negotiate a purchase based on the employee-based metric or legacy metrics, with the business logic to pay for what you are using and move away from the employee-wide metric pricing. This approach ensures you’re only paying for what you need.

Following these steps, you can effectively negotiate your Oracle Java licensing, ensuring you get the best value for your organization while maintaining compliance.

Understanding Your Risk in an Oracle Java License Audit

Oracle has a unique approach to Java licensing, requiring a self-declaration “audit” before allowing customers to purchase licenses. Here’s a step-by-step guide to understanding your risk and navigating this process:

  1. Oracle’s Approach: Oracle asks for a self-declaration “audit” before they allow customers to buy licenses. They will not permit end customers to purchase Java until they have reviewed the deployment data for Java.

  2. Study Licensing Agreements: Customers should study the three different licensing agreements and understand Oracle’s licensing policies, including those related to virtualization and cloud. This knowledge is crucial for compliance and successful negotiation.

  3. Retroactive Usage Payment: Oracle will ask you to pay for three years of retroactive usage of your current deployment. This means you’ll need to account for one-time use in your licensing costs.

  4. Java Included in Standard Audit: Since January 2023, Oracle has included Java in its standard Java audit. If you are hit with an Oracle audit, you may face penalties for three years of backdated use and three years in the future.

Understanding these points, you can better prepare for an Oracle Java license audit and mitigate potential risks. Always stay informed about your product licenses to ensure compliance with Oracle’s licensing terms.

Understanding the Employee for Java SE Universal Subscription: Oracle’s New License Model

Oracle has introduced a new license model for Java, known as the Employee for Java SE Universal Subscription. This model replaces the named user plus and processor licensing, which has been removed from the Oracle Java Price List.

Here’s what you need to know:

  1. Enterprise-Wide License Metric: The Java SE Universal license is only an enterprise-wide metric. Oracle has adopted this well-known model to license Oracle applications such as Oracle E-business suite and Siebel products.

  2. Employee-Based Metric: The metric used is “employee.” You need to license not only the actual users of Java but also all of your employees, including those of your agents, contractors, outsourcers, and consultants that support your internal business operations.

  3. License Calculation: If you are an organization with 10,000 employees and only 1,000 users who need Java, you cannot purchase only licenses for the 1,000 users. You need to calculate the correct number using the definition provided by Oracle. As a result, you will need to purchase at least 10,000 licenses.

  4. Price Increase: The Java license price has also increased per user. It used to cost $1.5 per user per month. Now, Java is priced at $8.25 per user. While you no longer need to license processors, this represents a price increase of over 700%.

Employee for Java SE Universal Subscription Pricing

Employee for Java SE Universal pricing follows the same price list as the legacy price list had.

The more you purchase, the more discounts you recieve.

  • Java SE Universal Subscription $15.00 per employee for 1-999 employees
  • Java SE Universal Subscription $12.00 per employee for 1,000-2,999 employees
  • Java SE Universal Subscription $10.50 per employee for 3,000-9,999 employees
  • Java SE Universal Subscription $8.25 per employee for 10,000-19,999 employees
  • Java SE Universal Subscription $6.75 per employee for 20,000-29,999 employees
  • Java SE Universal Subscription $5.70 per employee for 30,000-39,999 employees
  • Java SE Universal Subscription $5.25 per employee for 40,000-49,999 employees
oracle java se universial subscription

A pricing example,

A company that needs 42,000 employee licenses for Java SE Universal Subscription at a cost of $5.25 per employee per month would pay:

  • For a 1-year contract: 42,000 * $5.25 * 12 = $2,808,000
  • For a 3-year contract: 42,000 * $5.25 * 12 * 3 = $8,424,000

Licensing of Employees for Java SE Universal Subscription

Oracle’s Employee for Java SE Universal Subscription employs a unique licensing model. Here’s a breakdown of the key points to understand:

  1. Employee Definition: Oracle defines an “employee” as an enterprise-wide metric that includes all of your full-time, part-time, and temporary employees and those of your agents, contractors, outsourcers, and consultants. You need to calculate the total number of these individuals for licensing purposes.

  2. Internal Business Operations: The license allows Java to be used only for your internal business operations. It cannot be used to host any solution for external customers.

  3. License Quantity Calculation: The quantity of licenses required is determined by the total number of “employees” as defined by Oracle, not just the number of employees using the Java programs. This is a well-known enterprise license metric that Oracle uses for other products.

  4. Minimum License Purchase: The licensed quantity purchased must, at a minimum, be equal to the number of employees as of the effective date of your order. You cannot purchase a quantity lower than this amount.

  5. Processor Limit: You may only install and/or run the Java SE Universal Subscription Program(s) on up to 50,000 processors. If your use exceeds 50,000 processors (excluding those installed and/or running on desktop and laptop computers), you must obtain an additional license from Oracle.

Expert Advice on Java Licensing Changes in 2023

Oracle’s Java licensing has undergone significant changes in 2023. Here’s what you need to know and the steps you should consider taking:

  1. Expect Contact from Oracle: If you have purchased Java SE subscriptions, Oracle knows you are a user. You should expect to be contacted by Oracle for a substantial upgrade on your renewal fee for Java SE licenses.

  2. Oracle’s Enhanced Audit Capabilities: Oracle has improved its audit capabilities for Java. Third-party software asset management tools, which Oracle does not verify, can be used to audit your organization for Java usage.

  3. Older Versions of Java Require a License: If you have older versions of Java and thought you didn’t need a license, it’s time to reconsider. Many organizations have mistakenly assumed that older versions of Java didn’t require a license.

  4. Changes for Customers with Java ULAs: Customers who had Java Unlimited License Agreements (ULAs) will likely not be offered a renewal and will be moved to this new license metric. This change will likely result in higher costs for your company than the ULA.

  5. Importance of Negotiation Expertise: Experience and expertise in negotiating with Oracle will become increasingly important to avoid paying millions of dollars yearly for Java usage.

  6. Renew existing Java licenses: If you already purchased Java and have a subscription agreement, you can only renew if you share your deployment data with Oracle. 

  7. Increased Licensing Requirements: If you are a company with 10,000 employees using Java for 500 users, you must license a minimum of 10,000 users. This could result in an annual cost of $1 million a year.

  8. Immediate Action Required: If you already have Java SE subscriptions, you need to take immediate action, as Oracle will likely contact you soon, potentially asking you to pay millions of dollars more. Understand Java licensing, evaluate whether you’ve made the mistake of not licensing older versions of Java, consider if you can migrate off Oracle, and if not, ensure your best Oracle negotiator is ready to minimize the impact.

Understanding the Impact on Customers Who Have Already Purchased Java SE

Oracle’s changes to Java SE licensing can have significant implications for existing customers. Here’s what you need to know:

  1. Renewal Terms and Pricing: Oracle has stated in its FAQ that existing customers may renew their subscriptions on existing terms and pricing. However, it’s essential to be aware of Oracle’s requirements for renewal.

  2. Sharing Deployment Data: Oracle has previously refused to take orders for Java SE licenses unless the end customer shared their deployment data with the Oracle sales team. For Oracle to process your Java SE renewals, they require you to share deployment data on end users, servers, virtual servers, cloud deployments, and VDIs.

  3. Contact form Oracle: If you are a current Java SE customer, Oracle will likely contact you soon to discuss how your company can switch to the new employee license model.

Impact on Customers Who Haven’t Purchased Java SE Yet

If you’re considering purchasing Java SE, it’s important to understand the changes to Oracle’s licensing model. Here’s what you need to know:

  1. New Employee License Metric: The new employee license metric for Java SE subscriptions will be the only option for new customers. This means that your licensing costs will be based on your organization’s total number of employees.

  2. Options for New Customers: Customers who have not yet purchased Java SE can purchase a new employee license. Alternatively, they may uninstall Java SE if it is feasible for their operations.

  3. Running Without Licenses: Customers may choose not to purchase Java SE and run without licenses and security patches. However, this is not recommended as it exposes the customer to security vulnerabilities and potential legal risks.

  4. Considering Alternatives: Another option to consider is to look for alternatives to Java SE, like OpenJDK, which is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

  5. Oracle’s Outreach: Oracle’s sales organization mass-distributes emails requesting meetings with businesses that have not yet purchased a Java license. If you receive one such e-mail, we recommend you contact us for help on your Java licensing.

Why You Need to Review Your Java Licensing

Understanding your Java licensing is crucial for maintaining compliance and optimizing costs. Here’s why you need to review your Java licensing:

  1. Understanding License Requirements: Many organizations fail to understand which Java deployments require a license. Older versions may require a license, while other Oracle products include different versions. It’s important to clarify these details to ensure compliance.

  2. Planning for Transition: If you plan to move away from Oracle Java, you’ll want to ensure that you don’t leave licensable deployments in your data center. This can lead to unnecessary costs and potential compliance issues.

  3. Preparing for Negotiation: If you plan to negotiate with Oracle, it’s crucial to have accurate deployment numbers. Providing Oracle with real deployments of your current Java use will enable your procurement team to build a negotiation strategy to achieve the best commercial deals.

  4. By reviewing your Java licensing, you can better understand your organization’s needs and obligations, helping you make informed decisions about your Java usage and licensing strategy.

Java Licensing FAQ

How Redress Compliance can help

  • Conduct an independent Java licensing assessment to determine your financial exposure and ensure compliance.

  • Develop multiple Java licensing strategies for stakeholders to review and select the best course of action for your organization.

  • Java negotiation advisory support to assist in negotiations with Oracle, leveraging industry expertise and best practices.

  • Provide audit defense plans to protect your organization during Oracle audits, minimizing risks and potential penalties.

  • Assist in understanding the complexities of Java licensing and help identify areas where your organization may be non-compliant.

If you want discuss how Redress Compliance can help your organization, contact us to today to schedule an consultation meeting.