A laptop showing code on a desk
Azul Zulu vs Oracle Java

Azul Zulu JDK vs Oracle Java in 2026. Same runtime, a different bill.

How the Zulu JDK and Oracle Java SE compare on runtime, pricing metric, Azul product choice, migration effort and the contract terms that decide what you pay.

Contact Us Oracle Advisory
500+Enterprise clients
$2B+Under advisory
PublishedSeptember 3, 2025UpdatedSeptember 23, 2026
ContentsKey takeawaysRuntime qualityPricing comparedWhich Azul productMigration timeAzul contract termsUsing the quote with OracleWhat we have seenWhat to do nextFAQ

Azul Zulu and Oracle Java SE are built from the same OpenJDK source and certified against the same compatibility kit, so the runtime question is close to settled. The contract, the counting metric and the audit exposure are where the money is.

Key takeaways
  • The runtimes match. Both come from the same OpenJDK source, pass the same Java SE TCK and receive security fixes on the same quarterly dates.
  • The metrics do not. Azul counts vCores or JVMs, while Oracle counts every employee, contractor and agent, and in our benchmarks the Oracle subscription priced 2 to 5 times a per core support build.
  • Price Platform Core. Core is the Oracle replacement; Prime is a performance runtime at several times the price, so make every quote name its product line.
  • Migration takes weeks. Technical migration took 2 to 8 weeks, and the rare failures came from application vendor certification matrices.
  • Carve out Oracle product stacks. WebLogic and most Oracle products stay on Oracle Java, so separate them before you model the saving.
  • Settle the Azul terms before signing. Fix the container counting basis, a growth band and an uplift cap, with Eclipse Temurin documented as the free fallback.

Is the Zulu JDK as good as Oracle Java?

At the runtime level, yes. Azul Zulu and Oracle Java SE are both production grade JDK distributions built from the same upstream OpenJDK source, and both are certified against the same Java SE Technology Compatibility Kit (TCK). Your applications see the same Java SE platform on either one.

Both ship security fixes on the quarterly OpenJDK schedule each January, April, July and October. The two diverge on the contract: the pricing metric, the annual uplift, the audit exposure and what it costs to leave.

Which Java versions does Azul support that Oracle no longer does?

Azul tracks the same long term support lines as Oracle (Java 8, 11, 17, 21 and 25) and still supports Java 6 and 7 commercially. Oracle's Extended Support for both has ended, which leaves Sustaining Support with no new fixes. For a company carrying a 2011 application that cannot retire before 2028, that legacy coverage can decide the whole case.

Where does the real risk sit in a Zulu migration?

Production scale is not the risk. Azul has shipped certified builds for over a decade and has public references in banking and trading. The risk sits in two places: application vendor support matrices and your own operational assumptions, such as scripts, installers and monitoring agents that look for an Oracle JDK path.

Validate them in that order, vendor matrices first and operations second, because that is the order in which projects fail. A packaged application whose vendor certifies only Oracle JDK can stall a migration that is otherwise finished.

Watch the briefingResearch briefing · 4:43

How to Negotiate the Oracle Java Employee Agreement: Honest Leverage in a Captive Deal

How does Azul pricing compare with Oracle's per employee model?

Azul prices what you run and Oracle prices who you employ. Azul Platform Core is licensed per JVM or per core, while the Oracle Java SE Universal Subscription counts every employee, contractor and agent, Java user or not. On the same workloads, the per employee subscription priced 2 to 5 times a per core support build.

The employee metric hurts most in two situations. The first is where Java is a minority workload, because you pay for the whole workforce to cover a handful of servers. The second is where contractor ratios run high: counted populations landed 20 to 30 percent above badged headcount in engineering firms, utilities and public sector bodies.

Azul Zulu and Oracle Java SE on the terms that decide cost
DimensionAzul ZuluOracle Java SEWhat it means for you
Pricing metricPer JVM or per core (vCore)Per employee, contractors includedOnly Azul tracks what you run
CertificationTCK certifiedTCK certifiedRuntime quality does not separate them
Free production optionZulu Builds, no SLANo Fee Terms and Conditions, time limitedPut the Oracle expiry dates in the calendar
Annual upliftNegotiable, cap it in writing5 to 8 percent typicalThree years of compounding sets the total cost
Growth eventMore JVMs or coresMore people, acquisitions includedOracle prices your acquisitions, Azul does not
Exit costSwap to Eclipse Temurin, no feeTermination plus a review of historic useLeaving Azul costs little, which limits its renewal increases
Oracle product stacksNot certified for WebLogicRequiredCarve these out before you model anything

On the Azul side, the server metric Azul has published since June 2021 is the vCore. A physical core with hyperthreading enabled counts as two vCores, and a cloud instance counts the vCPUs it is sold with. Container quotes are often written per JVM instead, and the order should say which basis applies to which workload.

Oracle free use dates to put in the calendar
  • JDK 17. Free updates under the No Fee Terms and Conditions ended with the September 2024 release. Later updates come under the OTN license, which does not cover production use without a subscription.
  • JDK 21. Free updates under the same terms run through September 2026, and the OTN license applies from the next update.
  • JDK 25. Free updates are planned until September 2028.

Why does the Oracle volume ladder not reduce your exposure?

The ladder lowers the rate per employee, but it never lowers the number of people counted. Volume steps the rate down from $15.00 toward $5.25 per employee per month, with lower rates negotiated above 50,000 employees. The arithmetic, including when ordering above headcount wins, is in the band table worked example.

The counted population grows with the business and not with your Java footprint. A 5,000 employee manufacturer running 30 Java applications pays for 5,000 employees, and outsourcing, project contractors or an acquisition all raise the bill with no new Java deployed. See how Oracle counts contractors and consultants.

What does the comparison look like for a 5,000 employee company?

Say you employ 5,000 people, run those 30 Java applications on 40 production virtual machines of 8 vCores each, and Oracle offers $9.00 per employee per month after discount. The $9.00 rate is hypothetical, chosen from inside the published range. Development and test run on free Zulu Builds in this example.

Hypothetical worked example: Oracle per employee cost against the Azul break even price
LineCalculationAnnual result
Oracle, badged headcount only5,000 × $9.00 × 12$540,000
Oracle, contractors add 20 percent6,000 × $9.00 × 12$648,000
Oracle, contractors add 30 percent6,500 × $9.00 × 12$702,000
Azul production footprint40 VMs × 8 vCores320 vCores
Azul price at which the two costs match$648,000 ÷ 320 vCores$2,025 per vCore per year

Any Azul quote below the last line saves money at the 6,000 count. Ask Azul for a per vCore price on the same footprint and rerun the Oracle rows at your real band. The Java calculator does the Oracle side for your own numbers.

Free white paper

Java SE renewal and exit brief

The subscription arithmetic, migration patterns and contract terms for Oracle Java and its alternatives, in one download.

Get the white paper →

Which Azul product should you price: Zulu Builds, Platform Core or Platform Prime?

Price Azul Platform Core. Azul sells three things, and buyers are often quoted the wrong one:

  • Zulu Builds of OpenJDK. Free, certified and downloadable, with no SLA. Reasonable for development, test and workloads no one pages you about at 3am.
  • Azul Platform Core. The commercial support subscription for the same Zulu builds, and the Oracle Java SE replacement in almost every case. This is the product to price.
  • Azul Platform Prime. A performance runtime with the Falcon JIT compiler, the C4 pauseless garbage collector and ReadyNow warmup acceleration. It solves latency problems, not licensing ones, at several times the Core price.

Ask for every quote to name the product line on each line item, and send back any Prime pricing you did not request. A Prime line buys a different JVM, and it can multiply the total for support you never scoped.

When is Platform Prime worth paying for?

Prime earns its price when you have a measured latency or throughput problem, such as garbage collection pauses on a trading or payments service, or slow warmup after every deployment. Run it as a separate business case with a load test on your own application. Keep it out of the Oracle replacement decision, which Core alone settles.

How long does a migration from Oracle Java to Zulu take?

Technical migration to a certified OpenJDK build took 2 to 8 weeks per organization in our benchmarks, far less than the quarters buyers feared. Support parity held in 9 of 10 cases. In the exception, the cause was always an application vendor's certification matrix, never the JVM.

Most of that time goes on inventory and testing. Swapping the binary is quick; confirming every packaged application, build pipeline and container base image takes the weeks.

What has to stay on Oracle Java?

WebLogic and most Oracle product stacks stay on Oracle Java, because Oracle supports them on its own JDK and many carry restricted use Java SE rights. Separate them early. The carve outs set the size of the saving but rarely the decision on the rest, and the WebLogic and Java SE coupling page shows where those rights end.

How do you check which Java you are running today?

Start with an inventory you control, before Oracle asks for one. These sources cover most environments:

  • The runtime itself. java -version prints "Java(TM) SE Runtime Environment" for Oracle JDK and names Zulu in the OpenJDK runtime line for Azul builds. java -XshowSettings:properties -version shows the java.vendor property.
  • Endpoint management. Software inventory from Microsoft Configuration Manager, Intune or your equivalent tool, filtered on Oracle Java publisher entries.
  • Container images. A scan of your registry for base images that ship Oracle JDK, covered in Oracle Java in Docker base images.
  • Vendor statements. Written confirmation from each application vendor that it supports an OpenJDK build such as Zulu.

The guide to telling Oracle JDK from OpenJDK lists the file paths and registry keys to check on each platform.

What should you negotiate in an Azul contract?

Negotiate the counting rules before you sign. The Azul terms deserve the same care as the Oracle exit, because a per JVM metric on an autoscaling platform can multiply overnight. Fix the container counting basis and a growth band in the order form, instead of leaving an open meter.

Say a service runs 12 pods at baseline and scales to 48 at peak. If the contract counts peak JVMs, you pay for 48, four times the steady state. A band that counts average concurrent JVMs over a month, or a fixed allowance per cluster, keeps that bill predictable.

Which terms should you ask Azul for?

  • Counting basis. Name the metric per workload type (vCore for servers, JVM for containers) and define how autoscaled instances count.
  • Growth band. A range of vCores or JVMs covered at the signed price, so normal growth does not trigger a new order mid term.
  • Uplift cap. A written cap on the annual increase. Azul negotiates this in a way Oracle does not.
  • Scope. Cover the workloads that carry external obligations, such as regulated or customer facing systems, and leave internal tools on free builds.
  • Verification. Compliance through a self declared count, with a contractual verification right and a stated notice period.
  • Version coverage. The Java versions supported through the full term, including Java 6 or 7 if you depend on them.

That self declared count is far less work than Oracle's formal review of installs and downloads. Eclipse Temurin, free, certified and a swap away, keeps every Azul renewal honest.

The wider distribution field, Corretto and Temurin included, is compared in the OpenJDK alternatives comparison, and the full six option view in the Java options guide.

An aisle of server racks in a data center
Azul counts vCores on servers, so a host with hyperthreading enabled counts each physical core twice. Check that setting on the hosts in scope before you accept a quote built on a core count.

Does an Azul quote lower Oracle's Java price?

It lowers the rate, sometimes by a lot, and leaves the metric alone. Oracle discounts the per employee number against a credible alternative, but it almost never redefines who counts as an employee.

Is an Azul quote enough to fix an Oracle Java renewal?

The common advice is to show Oracle an Azul quote and take the discount. We think that stops halfway, because a rate discount leaves the counted population growing with every hire and contractor. If the numbers favor Azul, migrate the movable workloads and keep Oracle Java for the carve outs only.

Use the quote purely as a bargaining tool when a documented reason keeps you on Oracle for everything.

What will the Oracle account team say, and how should you reply?

Typical Oracle lines during a Java renewal, with replies
What Oracle saysWhat to say back
OpenJDK builds carry security risk without Oracle support.Azul ships the same quarterly security fixes on the same dates, and its builds are TCK certified. Name the specific gap you mean.
You have Oracle JDK installs, so the whole headcount needs the subscription.We are replacing those installs. The carve outs we keep run under the restricted use Java rights in our Oracle product licenses, so show us any install you believe falls outside them.
This discount expires at the end of the quarter.Our migration plan does not depend on your quarter. We will sign when the scope is right.
Sign three years and we will hold the per employee rate.Put a cap on the counted headcount and on the uplift in the contract, then we can discuss term length.

Contract language that caps headcount is covered in capping the headcount in the Oracle Java contract.

What have we seen in Oracle Java to Azul decisions?

Across roughly 30 to 40 Java environments Fredrik Filipsson benchmarked between 2024 and 2025, the switch from Oracle Java to a supported OpenJDK build was rarely a technical decision. The metric gap drove it, and the runtime itself almost never held a migration back.

The one slide for your risk committee
  • Runtime parity. Certified against the same TCK, patched on the same quarterly dates.
  • What you give up. Ecosystem items: Oracle product certification and a single vendor relationship.
  • Carve outs. WebLogic and the Oracle product stacks stay on Oracle Java without changing the decision for everything else.
Oracle discounts numbers and defends definitions, so the Azul quote changes your rate and leaves the employee count where it was.

The audit exposure that shadows the whole comparison is covered in the Java audit defense sequence and the audit triggers analysis. Read both before you remove Oracle JDK, because the removal itself needs a record you can show later.

What to do next

  1. Price Platform Core explicitly. Send back any Prime quote you did not scope, because the product line decides the number.
  2. Carve out the Oracle product stacks first. Separate WebLogic and similar products so the model prices only the workloads you can move.
  3. Count your real Oracle population. Rebuild the employee number with contractors and agents included, and run it through the band table before Oracle does.
  4. Fix the container counting basis and growth band. Put both in the Azul order form, with the autoscaling rule written out per cluster.
  5. Cap the Azul uplift in writing. Record a costed Temurin swap plan, so the first Azul renewal has a priced alternative on the table.
  6. Validate vendor matrices before runtimes. Collect the written support statements before any binary changes. The Java calculator and the Oracle practice run the comparison with you.

Frequently asked questions

Is Azul Zulu as good as Oracle Java?

At the runtime level, yes. Both are built from the same OpenJDK source and pass the same Java SE Technology Compatibility Kit. Performance differs only if you buy Azul Platform Prime, which swaps in its own JIT compiler and garbage collector. The differences that cost money are the metric, the uplift, audit exposure and exit cost.

How do Azul and Oracle Java pricing differ?

Azul Platform Core is priced per vCore or per JVM, so the bill follows the servers and containers that run Java. The Oracle Universal Subscription counts every employee, contractor and agent regardless of Java use. The gap is widest where Java runs on a small share of your servers or contractor ratios are high, and it grows each time headcount does.

What is the difference between Zulu Builds, Platform Core and Platform Prime?

Zulu Builds are the free certified binaries with no SLA. Platform Core adds commercial support, response times and legacy version coverage for those same binaries, and it replaces Oracle Java SE. Platform Prime is a separate JVM tuned for latency and throughput. Buy Prime against a measured performance problem, and keep it out of the licensing decision.

How long does migrating from Oracle Java to Zulu take?

Weeks per organization in our benchmarks, with most of the time spent on inventory and testing. Plan it by workload: developer machines and build pipelines, then servers, then container base images. Keep a rollback path to the previous JDK for each application until its vendor confirms support for Zulu.

What should be negotiated in an Azul contract?

The counting rules come first: how containers and autoscaled instances count, and the growth band covered at the signed price. Add a written uplift cap. Then align the Azul start date with the end of your Oracle subscription, so you do not pay both vendors for overlapping months while the migration finishes.

Does an Azul quote reduce Oracle's price?

It can cut the per employee rate, but the count Oracle bills stays the same. The quote carries most weight when it prices your real vCore footprint with a start date, and when some applications already run on Zulu in production. A quote Oracle suspects you will never sign earns a much smaller discount.

Is Azul Zulu free for commercial use?

Yes. Zulu Builds of OpenJDK are free to download and run, including in production. You get no SLA and no one to call when a fix is urgent, and support for Java 6 and 7 comes only with a paid subscription. Most companies run free builds in development and pay for Core on production systems.

Newsletter
Licensing news that changes what you pay

One email a week on vendor price moves, audit activity and what worked in recent renewals.

Subscribe
Vendor Shield
An advisor on call for every vendor conversation

Always on advisory for renewals, audits and contract questions across your software vendors.

Explore Vendor Shield
Advisory White Paper

Get the Java renewal and exit brief.

The Oracle to Azul comparison inside the full option set, with the subscription arithmetic, migration patterns, carve outs and contract terms on both sides.

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

Get the White Paper →
We never share your details with vendors.

Oracle licensing news, once a week.

Price changes, audit activity and what worked in recent renewals. No vendor spin.