Contents
Key takeawaysWhat the license permitsThe six license instrumentsThe four boundariesMigration and royaltiesContract terms to ask forWhat we saw in 2024 and 2025What to do nextFAQAn Oracle Java embedded license allows you to ship a named runtime inside a named product, to a defined audience, counted on an agreed metric. It is a right to redistribute, and moving the product to OpenJDK does not end it.
- It is a right to ship. The license covers redistribution of a named runtime inside a named product, bounded by product, version, territory and audience, and metric and volume.
- Six instruments look the same on disk. A redistribution agreement, the Universal Subscription, the No Fee Terms, the OTN license, a community build and product restricted rights can all sit behind one binary.
- The free terms exclude paid products. The NFTC allows redistribution only when you charge no fee, and it names fees for products that bundle the JDK.
- Migration does not amend the contract. Royalties follow the order form, so a fleet shifted to a community build keeps paying until the paper changes.
- Structure outranks the rate. With no published embedded rates, an escalator cap and a true down right do more for the bill than a rate discount.
- Coverage stops at your application. The end customer may run your product only, and resellers do not inherit your right to ship the runtime.
What does an Oracle Java embedded license actually permit?
An embedded license is a right to redistribute, not a right to use. It allows a named party to ship a named runtime inside a named product, to a defined audience, counted on an agreed metric. Later arguments about coverage, audits, royalties or exit all come back to where one of those lines sits.
Oracle's Java SE Embedded FAQ sets out the commercial shape: Java SE is free for developing an embedded application, and no royalty is owed until you ship. A runtime bundled into a dedicated solution that involves or controls hardware is likely an embedded application and owes royalties. The rates are negotiated and confidential, with no rate card to benchmark against.
What does an embedded license never permit?
- General purpose use by the end customer. The runtime may run your product, never the customer's own code, scripts or a second application on the same machine.
- Standalone distribution. The binary cannot be handed over on its own, published in a repository or shipped as a base image component. See our note on Oracle Java in Docker base images.
- Automatic sublicensing. A reseller of your product does not inherit your redistribution right by reselling it.
- Unrecorded version drift. Coverage is usually fixed by major version, so a runtime upgrade inside a product release falls outside the paper unless the paper changes with it.
- Counting against forecast. The declared quantity is meant to follow what actually shipped, whatever the original forecast said.
Why is coverage limited to your application at both ends?
You may ship the runtime only inside the product the agreement names, and your customer may use it only to run that product. Downstream exposure hides at both ends: a second product that picks up the same runtime, and a customer who points their own tools at it. The same logic applies to Java inside third party appliances.
How to Negotiate the Oracle Java Employee Agreement: Honest Leverage in a Captive Deal
Which Java license are you actually shipping under?
Only the paperwork can tell you, because six instruments can sit behind the same binary. Settle which one applies before anyone counts a device, since the answer shapes the analysis far more than what is deployed.
| Instrument | What it says about shipping Java to others |
|---|---|
| Redistribution agreement with Oracle | Permits shipping inside the named product, within the four boundaries, for a royalty |
| Current subscription (Java SE Universal Subscription) | Licenses your own commercial use; Oracle points ISVs to a separate commercial offering |
| Free terms (No Fee Terms and Conditions, NFTC) | Redistribution allowed only when you charge no fee, including fees for products bundled with the JDK |
| Older network terms (Oracle Technology Network license) | No right to make the programs available to any third party, apart from contractors acting for you |
| Community build (Temurin, Corretto, Zulu and others) | GPL version 2 with the Classpath Exception; no Oracle royalty |
| Product restricted use rights | Use limited to running the product Java came with; no right to pass it on separately |
Why are the free terms and the subscription not interchangeable?
The NFTC allows redistribution of the unmodified JDK only if you charge your licensees no fees connected with it, and it names fees for products that include or bundle the JDK. A product you sell fails that test. The Universal Subscription does not fill the gap either, because it licenses your organization's own use.
Products still bundling old Java 8 updates add one more document to check. Oracle Java SE releases before April 16, 2019 shipped under the Binary Code License, which allowed bundling on general purpose desktops and servers but excluded kiosks, printers, industrial controls and telematics. Our guide to which Java versions are free maps each release to its terms.
How can you check which runtime your product ships?
- Version string.
java -versionon Oracle JDK reports "Java(TM) SE Runtime Environment". OpenJDK builds report "OpenJDK Runtime Environment", and most third party builds add the distributor's name. - The release file. Runtime images from Java 9 on, including trimmed jlink images, carry a
releasefile whose IMPLEMENTOR line names the vendor. Oracle's own OpenJDK builds also read Oracle Corporation, so check it together with the version string. - SBOMs and shipment records. The software bill of materials shows which runtime each product version pulls in, and ERP shipment data shows how many units went out by release and month.
- The paper. The ordering document, every amendment, and any Oracle letter confirming scope.
Our note on telling Oracle JDK from OpenJDK covers edge cases, including Oracle's own OpenJDK builds. Java that arrived with other Oracle products may fall under restricted use rights you already hold.
Oracle Java SE employee licensing brief
How the employee metric is counted, which versions it covers, and what to settle with Oracle before renewal.
Get the white paper →What are the four boundaries in an embedded Java order form?
The order form fixes four boundaries: the product, the version, the territory and audience, and the metric and volume. Every later dispute is about where one of those lines sits.
| Boundary | What the order form fixes | How it is usually breached |
|---|---|---|
| Product | The named product or family the runtime may ship inside | A second product reuses the same installer component after an acquisition |
| Version | The releases covered, often by major version | The product upgrades the bundled runtime and the paper is never reissued |
| Territory and audience | Geography, and whether public sector or hosted use is included | The product is offered as a hosted service the form never contemplated |
| Metric and volume | The counting unit and the committed quantity | Actual shipments diverge from the forecast the metric was priced against |
Three of the four boundaries are breached by ordinary product decisions no one flags as licensing events: an acquisition that reuses an installer, a routine runtime upgrade, a move to a hosted offering. The people making those calls rarely see the agreement, so exposure is usually discovered after the fact.
If part of your Java use falls under the Universal Subscription instead, its per employee count is explained in our employee metric guide.
How does the risk differ for a device maker, a software vendor and a SaaS provider?
- Hardware OEM. The metric is usually per device, so volume drift is the main risk. Firmware stays in the field for years, so settle version coverage for shipped units at signing.
- Software vendor. The product boundary breaks first, through shared installers and customers using the bundled runtime for their own tools.
- Vendor moving to a hosted service. The audience boundary breaks. Running the product for customers is a different use from shipping it to them, and an order form written for shipped software often does not cover it.
Does moving to OpenJDK stop Oracle embedded royalties?
No. The invoice changes only when the contract is amended. Redistribution commitments attach to what you agreed to ship and the quantity you agreed to declare, whatever is on the disk. A team can ship OpenJDK for two years and keep paying on devices that never carried Oracle code.
This is the most costly pattern we see. Engineering decides, correctly, that the product no longer needs the commercial runtime, and over a release or two the fleet shifts to a community build. The technical risk is gone and the project is closed, usually without the commercial owner ever being involved.
The order form stays as it was, because amending it was never on the migration plan and Oracle is under no obligation to notice for you. Put the amendment on that plan as a named deliverable with an owner. Our guide to alternative Java options covers the wider migration choices.
When should the contract change happen during a migration?
| Migration milestone | Commercial action |
|---|---|
| Decision to migrate | Pull the order form; confirm the metric, the declaration date and any notice period; name an owner for the amendment |
| First release on the community build | Record the ship date and which units from then on carry no Oracle code |
| Next declaration date | Declare actual Oracle carrying shipments, backed by shipment records |
| Last Oracle carrying release | Request the amendment that reduces or ends the commitment, and settle rights for units in the field |
Why is the royalty rate the wrong first thing to negotiate?
The usual advice is to push hard on the per device rate. We disagree. With no published rates there is no market price to argue toward, and the rate rarely drives the cost. An uncapped escalator applied to a device count you no longer ship is the most common source of dead embedded spend in our reviews.
A true down right makes a forecast correctable. Without one, a declaration can only rise, and every forecast becomes a floor. Negotiate the escalator cap and the true down before you need them.
| Year | Devices shipping Oracle code | Rate | Paid, no true down | Of which on devices without Oracle code | Paid with a true down |
|---|---|---|---|---|---|
| 1 | 50,000 | $4.00 | $200,000 | $0 | $200,000 |
| 2 | 30,000 | $4.20 | $210,000 | $84,000 | $126,000 |
| 3 | 5,000 | $4.41 | $220,500 | $198,450 | $22,050 |
| Total | 85,000 | $630,500 | $282,450 | $348,050 |
The $4.00 is picked for easy arithmetic and is not a benchmark. Over three years, $282,450 goes on devices with no Oracle code. A 20 percent rate cut across all three years would have saved $126,100, less than half of that.
Changing the runtime is engineering work. Ending the royalty is contract work, and it only happens if someone owns it.
Which contract terms should you ask for in an embedded Java agreement?
Ask for terms that let the agreement follow the product as it changes.
- True down right. The declared quantity follows actual Oracle carrying shipments, so a falling count lowers the bill.
- Escalator cap. A fixed ceiling on annual increases, applied only to units still shipping Oracle code.
- Product definition. Name the product family, including renamed and successor versions.
- Version coverage. Tie coverage to the Java version bundled at shipment, so a routine upgrade needs no new paper.
- Channel and hosting rights. State whether resellers may ship the runtime inside your product and whether hosted delivery is covered.
- Exit. A right to end the commitment on notice once you stop shipping Oracle code, with continued rights for units already in the field.
What will Oracle's account team say, and how should you answer?
- "The committed volume is a minimum for the term." Make a declaration that follows actual shipments the condition for renewing.
- "Every device in the field still counts." Ask which clause makes a device shipped with a community build royalty bearing, and answer with shipment records by release.
- "Your Universal Subscription already covers this." Ask for that in writing, naming the product and the redistribution right, since Oracle's own JDK FAQ points ISVs elsewhere.
What have we seen in embedded and OEM Java reviews in 2024 and 2025?
Across roughly 15 to 25 embedded and OEM Java reviews in 2024 and 2025, confusion about which license instrument applied drove more exposure than deployment scale ever did. Four patterns recurred.
- Rights read too broadly. Redistribution rights were taken as wider than the order form allowed, exposing downstream shipments no one had counted.
- Free and paid terms confused. The free terms and the subscription terms were treated as interchangeable, hiding a real and growing liability.
- Forecast in place of shipments. Device counts were declared from the original forecast. The error ran both ways, so it cut against the buyer as often as in their favor.
- Migration without amendment. Most of the fleet had moved to a community build, the order form was never amended, and the royalty kept accruing, sometimes for years.
None of these needed a large deployment to become expensive, only a gap between the paper and the product. The wider Java library sits in our Java practice.
What to do next
- Identify the instrument. Establish from the paperwork which of the six instruments each product ships under.
- Read the four boundaries. Check product, version, territory and audience, and metric and volume before you look at price.
- Reconcile the count. Compare declared device counts with actual shipments by release, expecting errors both ways.
- Put the amendment on the migration plan. Make it a named deliverable with an owner, next to the engineering milestones.
- Negotiate structure first. Ask for the escalator cap and a true down right before arguing the rate.
- Close the channel and hosting gaps. Put reseller rights and hosted delivery into the paper before the roadmap gets there. The Java practice can run the review with you.
Frequently asked questions
What does an Oracle Java embedded license permit?
It permits one party to redistribute a specified Java runtime inside a specified product, to a specified audience, counted on a specified metric. Those four boundaries are the whole instrument, and later disputes about coverage, audits, royalties and exit are disputes about where a line was drawn.
Does an embedded license cover the end customer's use of Java?
Only for your application. The customer may use the bundled runtime to run the product you shipped and nothing else on that machine. If they need Java for their own code or other software, they need their own license or a free build.
How do you tell which Java license you actually hold?
From the paperwork, because the binary will not tell you. Pull the ordering document and every amendment, then match each product to one of the six instruments. Do that before counting a single device.
Does migrating to a community Java runtime reduce the bill?
Not by itself. The invoice changes only when the order form does. We routinely find fleets that migrated years ago while the royalty kept accruing because no amendment was ever requested.
What are Oracle's published embedded Java royalty rates?
There are none. Oracle sets per device and per end customer rates by negotiation and keeps them confidential, so treat any public figure as a rumor. Spend your negotiating time on the escalator, the true down right and exit terms.
Which clauses matter most in an embedded Java agreement?
The escalator and the true down right. An uncapped escalator on a device count you no longer ship produces dead spend every year it runs, and a true down allows the declaration to fall with shipments. Both outrank the royalty rate.
Can a reseller ship our product under our embedded license?
Not automatically. A redistribution right does not imply a right to sublicense, so a partner reselling your product has no permission of its own to ship the runtime. Write channel rights into the agreement; this is one of the audience gaps we see most often.
Is Oracle Java free to bundle in a product we sell?
Not under the No Fee Terms, which bar fees for products that include or bundle the JDK. The OTN license on Java 8 and 11 updates bars passing the programs to any third party at all. A commercial product needs a redistribution agreement with Oracle or a community OpenJDK build.
What makes embedded Java exposure so easy to build up?
Ordinary product decisions shift three of the four boundaries: an acquisition reusing an installer component, a runtime upgrade inside a release, or a shift from shipped software to a hosted service. The people making those decisions rarely read the agreement.