Oracle Java Audit Defense for Public Sector.
Public sector bodies combine very large headcounts with constrained budgets and strict procurement rules, which makes an Oracle Java employee metric claim both large and hard to absorb. This playbook shows how an agency defends the audit, uses its procurement framework as leverage, and moves the bulk of its estate to a free distribution.
Why the public sector draws Oracle's attention
Government estates are large, federated, and old. Java runs in case management, tax, benefits, and citizen facing portals, often maintained by a patchwork of integrators. The employee metric applied to a department of tens of thousands produces a number that no public budget was built to carry, which is precisely why these claims demand a disciplined response rather than a quick settlement.
How the employee metric works, briefly
The mechanics are the same in every sector. In January 2023 Oracle moved Java SE to the Universal Subscription, priced on a per employee metric rather than on what you deploy. List pricing runs from 5.25 to 15.00 dollars per employee per month, stepping down through volume bands, so smaller estates sit near the 15.00 ceiling and the largest sit near the 5.25 floor. Crucially, the metric counts every full time and part time employee, every contractor, and every temporary worker, regardless of who actually uses Java. LMS audits intensified in 2026 with a three year lookback, and the opening claim is simply the counted population multiplied by the list rate, before any discount Oracle chooses to offer.
This is a sharp break from the past. Before April 2019, Java SE updates were effectively free for most commercial use, and even after that the older per processor and Named User Plus models charged for where Java actually ran. The employee metric severs cost from deployment entirely. For most large organizations it can cost several times the old approach for the very same systems, which is why a default renewal at Oracle's opening number is almost never the right answer.
The counted population is the whole game
A department with 50,000 staff is counted in full, including part time and seasonal workers and the contractors that public bodies rely on heavily. Whole workforces that never log into a Java application are swept into the metric. The first defensive task is to establish who, realistically, has any path to Oracle Java at all.
This is good news for the defense. When the claim rests on a population that bears no relationship to actual Java use, there is a large, legitimate gap to close. The buyer side task is to rebuild the picture from your own records, isolate the workloads that truly require Oracle Java, and show that the rest either runs on a free OpenJDK distribution or can move there.
Contractors and temporary workers, the hidden multiplier
The single most overlooked driver of the claim is the inclusion of non employees. The metric counts every contractor and every temporary worker, which means that staffing agencies, outsourced functions, and seasonal labor all inflate the number even though those workers may never touch a Java application and may not even use your systems. Before accepting any headcount, insist on a clear definition of who is being counted and on what basis. In many estates, challenging the contractor and temporary worker assumptions alone removes a substantial share of the opening claim.
Procurement rules cut both ways
Public procurement frameworks can slow a defense, but they are also leverage. Agencies are rarely free to sign a single sole source escalating subscription without scrutiny, and that scrutiny is a reason Oracle cannot assume a quiet renewal. Use the framework. A documented, competitive view of free OpenJDK alternatives strengthens both your governance position and your negotiating hand.
Shared services blur the boundary
Public bodies often share platforms across agencies and arm length organizations. That can inflate a count when one entity is treated as the licensee for systems used by many. Mapping which bodies actually carry the agreement, and how shared platforms are governed, is essential before accepting any single headcount figure. The boundary you draw here directly determines the size of the claim.
A worked exposure illustration
Consider a government agency, a department, or a public body with 50,000 counted people. At an indicative rate it produces the opening claim below, alongside the kind of defended outcome we target across the estates we work on.
| Line | Amount per year |
|---|---|
| Oracle opening claim at list, 50,000 at $6.75 per employee per month | $4,050,000 |
| Indicative defended outcome after the population is disputed and the estate is migrated | $1,296,000 |
| Indicative reduction versus the opening number | about 68 percent |
Indicative only. The 68 percent reflects our average reduction versus Oracle's opening number across the audits we defend. Your outcome depends on your deployment, your contract, and how the population is counted. We confirm your real number before you commit.
The defense, step by step
- Bound the request. Fix the population, the period, and the data format before anything leaves your building, so the audit runs on your scope rather than Oracle's.
- Rebuild the evidence. Use your own asset and configuration records to show what Java is actually deployed and who genuinely uses it.
- Dispute the population. Remove workers who have no path to Oracle Java and challenge contractor and temporary worker assumptions that inflate the count.
- Shrink the residual. Migrate everything that can move to a free OpenJDK distribution, leaving a small Oracle envelope that you can defend.
- Negotiate and clean the contract. Settle against the smaller envelope and strip the minimum annual floor, the annual true up, and the renewal escalator from the renewal.
What the first 90 days look like
A defense moves faster than most teams expect once the scope is bounded. In the first two weeks we contain the data request and stand up an internal view of what Java is really deployed. Through the following month we rebuild the evidence and model your real number across every band and entity, so you know your floor and ceiling before Oracle does. In the final stretch we dispute the population, sequence a migration of everything that can leave Oracle Java, and open the commercial conversation from a defensible residual rather than the opening claim. The work runs alongside production. Nothing in the defense requires you to change a running system on Oracle's timetable.
Even a good settlement can be undone by the paper. Minimum annual floors, annual true ups, and renewal escalators around 8 percent quietly rebuild your cost over the term. Read our approach to contract trap removal before you sign anything.
Five mistakes that cost the public sector teams money
The same avoidable errors appear again and again. First, treating Oracle's opening number as a starting point that is roughly right rather than an unbounded claim that has to be earned line by line. Second, sending the LMS team raw data before the population and the period are bounded. Third, accepting a headcount that includes contractors, temporary workers, and entities that should never have been in scope. Fourth, agreeing a subscription on the whole workforce when only a fraction of systems need Oracle Java and the rest can move to a free OpenJDK distribution. Fifth, signing a renewal that still carries a minimum annual floor, an annual true up, and an escalator, so the cost climbs again the moment the ink dries.
Each of these is reversible if it is caught early, which is the strongest argument for bringing in a buyer side defense the moment an audit letter arrives rather than after data has already changed hands.
Questions buyers ask
Does it matter that few of our people actually use Java?
For the claim, no, and that is the problem. The metric counts the whole population regardless of use. For the defense, it matters a great deal, because the wider the gap between counted heads and real users, the more of the opening number is open to challenge once you migrate the estate to a free distribution.
Can Oracle reach back into prior years?
The 2026 audits apply a three year lookback, so deployment history matters. Rebuilding a clear record of what was installed and when, from your own asset data, is part of bounding what Oracle can reasonably claim for past periods.
What if we want to leave Oracle Java entirely?
For many workloads that is realistic. Most Java can run on a free OpenJDK distribution with no functional change, leaving only the systems that genuinely need Oracle support. A credible plan to move is also your strongest position at the table, because it removes the assumption that you have no choice but to renew.
How we are paid
We work two ways, both built so the risk sits with us. A Fixed Fee starts from $18,000, agreed up front and backed by our guarantee. Or you can choose Gainshare, a share of verified savings or avoided exposure, with zero retainer and no risk to you. If we do not reduce your Oracle Java cost, you do not pay for an outcome we did not deliver. Across the work we do, we have defended more than $120M in Java exposure and over 300 Java audits, with more than 20 years of combined experience on the buyer side of the table.
Where to go next
The fastest way to ground your team is our Oracle Java licensing guide for 2026, which lays out the metric, the bands, and the defense in full. If your situation looks like a neighboring sector, see the healthcare audit playbook and audit defense for the education sector. The common thread across all of them is the same: the employee metric overstates what you owe, and a disciplined buyer side defense closes the gap.
Get the full guide.
Download the Oracle Java licensing guide for 2026 and see exactly how the employee metric is built and where it breaks.
Download the guide