Oracle · Ecosystem Lock-In

Oracle Doesn't Sell Software. It Sells the Inability to Leave.

Most people think Oracle wins on a better database. It doesn't have to: 77% of its $57.4B in FY2025 revenue is recurring fees from the installed base, structurally decoupled from whether its products are best. The lock-in is the product.

Ecosystem Lock-In · 8 min

Comes with a free Switching-Cost Ledger template.

A licensing advisor draws up the math for a small firm: 250 employees, 20 people who occasionally open a Java desktop app. Under the old rules, that company paid about $3,000 a year. Under the rules Oracle introduced in January 2023, the same usage costs $45,000 a year — because the new meter doesn't count the 20 users, it counts all 250 employees, contractors included.410 A roughly 15-fold increase at list price, and the software did not change. That gap between what you use and what you pay is not a billing quirk. It is the whole business.

The official story is that Oracle is a database company that wins because its database is excellent. The more useful story is that Oracle long ago stopped needing to win. In fiscal 2025, cloud services and license support — recurring fees from customers it already has — were $44.0 billion of $57.4 billion in revenue, about 77%, while new license sales were a comparatively tiny $5.2 billion.1 When three-quarters of your money comes from people who already can't leave, product merit becomes optional. The moat isn't the technology. The moat is the exit.

Cloud services and license support revenues were $44.0 billion, up 12% — about 77% of total revenue. New cloud and on-premise license revenues were $5.2 billion.1
Oracle CorporationFrom its fiscal-2025 annual report (Form 10-K)

Why ripping out 90% of Oracle saves you almost nothing

Lock-in starts in the code, not the contract. Decades of enterprise logic get written in Oracle's own dialect: PL/SQL stored procedures, functions like DECODE, CONNECT BY and ROWNUM that have no clean equivalent elsewhere, plus Oracle Text, Spatial, Forms and APEX layered on top.9 To leave, you don't migrate data — you rewrite the business rules baked into the database itself, line by line, while it runs. That's the technical switching cost, and it's real. But the genius is what Oracle does with it commercially. Cut your Oracle footprint by 90% and you'd expect to cut the bill by something close to that. You don't. Advisors who do this for a living report that Oracle simply reprices what's left, so the remaining estate carries nearly the same total spend it did before.9 You can shrink your usage all you like; the invoice was never tied to it.

A normal vendorOracle's installed base
Use 90% lessPay roughly 90% lessEstate gets repriced; spend holds
Switching costRe-point the appRewrite decades of PL/SQL logic
Where revenue comes fromNew sales, on meritRecurring support on what you already own
Your leverage at renewalWalk to a competitorCaptive — the exit costs more than the bill
What you'd expect when you cut usage vs. what Oracle's structure delivers

The 'unlimited' license that takes away your freedom

Oracle's answer to a nervous, growing customer is the Unlimited License Agreement — typically a three-year deal with an upfront fee often in the millions, sold as the freedom to deploy a listed set of products without counting.7 The word 'unlimited' does a lot of quiet work. The unlimited rights apply only to the products explicitly named; entering the agreement folds your existing perpetual licenses into it, so you can't revert to what you owned before; and once you certify at the end of the term, your annual support fees — running around 22% of license cost — are frozen at that level and cannot be reduced even if your usage later collapses.7 There's a sharper hook: get acquired, and the ULA triggers accelerated certification, forcing a renegotiation at exactly the moment you have the least leverage.7 It is a contract designed to convert a moment of optimism into a permanent floor under your spending.

~22%
of license cost is Oracle's annual support fee — and once a ULA is certified, that figure cannot be reduced even if your usage drops to a fraction of it7

When the audit is really a sales call

The third layer is the one Oracle would least like described plainly. Licensing firm Palisade Compliance — whose founder spent 16 years at Oracle as Global VP of Contracts and Global Process Owner of Oracle's audit team — describes a tactic using what it calls Oracle's own vernacular: 'Audit, Bargain, Close' — ABC — in which a compliance audit is not a check on the rules but a lever to push the customer into buying Oracle Cloud.8 The pattern shows up in court: a securities class-action alleging Oracle threatened costly audits unless customers shifted to its cloud settled in January 2023, and in an earlier dispute with Mars, Oracle chose a confidential settlement in late 2015 over letting a judge scrutinize its licensing stance.8 The audit's effectiveness depends on uncertainty. House of Brick notes Oracle's audit scripts overstate exposure by not separating what a customer is entitled to use from features that were simply enabled by default — and, more aggressively, that Oracle has presented Java deficiency claims using the per-employee metric for 2021 and 2022, before that metric even existed.6 The bill arrives first; the customer argues it down second; the close is the cloud contract.

Dec 2015
Oracle v. Mars settles quietly8
Oracle prefers a confidential settlement over a judge examining its virtualization licensing position.
Jan 23, 2023
The Java meter changes4
Java SE moves to a per-employee subscription — any production use licenses the whole workforce, contractors included.
Jan 2023
Audit-to-cloud suit settles8
A securities class-action alleging Oracle threatened costly audits unless customers moved to its cloud is settled.
2023+
Retroactive claims6
Oracle presents Java deficiency claims using the employee metric for 2021 and 2022 — before the model existed.
The annuity identity
Durable revenue ≈ (installed base × support rate) × (1 − ability to leave)

Oracle's recurring support and cloud revenue reached $44.0 billion in FY2025, up 12%, against just $5.2 billion in new license sales.1 When the second term — the ability to leave — is engineered close to zero by proprietary code, ULA structure, and audits, the first term keeps compounding regardless of whether anyone is choosing Oracle on its merits. New sales become almost a rounding error against the annuity.

Isn't this just a strong product earning what it's worth?

The honest objection is that lock-in and value can look identical from the outside. Oracle's database genuinely is engineered to run mission-critical workloads, the switching costs are real partly because the platform is deep and capable, and customers signed every contract with their eyes open. A lot of what reads as a trap is just the ordinary friction of any serious enterprise system — and Oracle's own cash flow, $18.7 billion from operations in fiscal 2024, is what a useful product looks like.2 Fair. But there is a tell that separates earned loyalty from engineered captivity, and Oracle just tripped it. A vendor confident in its value lowers friction to keep you; a vendor relying on captivity raises the cost of staying because it knows you can't go. The per-employee Java meter — Gartner pegs it at 2–5x the old cost, with a Dimensional Research survey finding 73% of Oracle Java users audited in the prior three years — is the second move, not the first.5 And Gartner forecast that by 2026, more than 90% of Java applications would run on third-party runtimes instead — a migration at a scale the installed-base model was never built to survive.11 The moat held because leaving was expensive. Oracle has now made staying expensive too — and that is the one thing the model was never built to survive.

Audit the exit before you sign the entrance

The most dangerous clause in any enterprise contract is rarely the price — it's the cost of leaving, and that cost is usually invisible at signing. Before you adopt a deep platform, price the divorce: how much of your business logic will live in the vendor's proprietary dialect, whether your spend tracks your usage or floats free of it, and what happens to your terms if you get acquired or your headcount changes. Treat 'unlimited' as a word that needs a lawyer. And watch the direction of the friction: a vendor that lowers your cost to stay is selling value; a vendor that raises your cost to stay — through a new per-employee meter, an audit, a repriced estate — is monetizing the fact that you can't leave. By then the question isn't whether the product is good. It's whether you ever had a choice.

Oracle built one of the most durable revenue annuities in software by understanding something most vendors never accept: the sale that matters is not the first one, it's the impossibility of the last. Proprietary code makes leaving expensive. The ULA makes shrinking pointless. The audit turns uncertainty into a cloud contract. Stacked together, they convert technical switching costs into a near-permanent stream that no longer depends on the product being best — 77 cents of every revenue dollar comes from people who already can't walk away.1 The threat was never a faster database. It was Oracle forgetting that a moat protects you only as long as the water is cheaper than the bridge. Charge enough to cross, and people will learn to swim.

Take it further — The Ecosystem Lock-In
Worksheet

Switching-Cost Ledger

A worksheet that prices the exit. It itemizes every cost a customer eats to switch away — the contract penalties, the re-training, the data migration, the muscle memory — so you can see whether lock-in is real or just inertia waiting to break. Blank to audit your own stickiness; filled as the worked example tallying the switching costs the story's customers face.

Preview the blank →

The worked example unlocks with a subscription. See plans →

Sources

Where this comes from — the filings, records, and reporting behind it.

  1. 1
    Primary · SEC filingDocumented
    Oracle FY2025 total revenues were $57.4 billion; cloud services and license support revenues were $44.0 billion (76.7% of total), up 12% year-over-year; cloud license and on-premise license revenues were $5.2 billion.
  2. 2
    Primary · Company recordDocumented
    Oracle FY2024 total revenues were $53.0 billion; cloud services and license support revenues were $39.4 billion, up 12%; on-premise license revenues fell 12% to $5.1 billion; operating cash flow was $18.7 billion.
  3. 3
    Primary · SEC filingDocumented
    Oracle's cloud and license business represented 86% of FY2025 total revenues; customers migrating from on-premise license support to Oracle Cloud contributed to a $4.3 billion increase in annualized cloud services revenue over three fiscal years.
  4. 4
    SecondaryWidely reported
    On January 23, 2023, Oracle introduced the Java SE Universal Subscription, shifting from per-user/per-processor pricing to a per-employee metric. Any production use of Oracle Java by any employee triggers licensing for the entire workforce including contractors. Pre-2023 list prices were ~$2.50/user/month (desktop) and ~$25/processor/month; new rates start at $15/employee/month for enterprises under 1,000 employees.
  5. 5
    SecondaryWidely reported
    Gartner research found the new Oracle Java per-employee model is 2–5x more expensive than the legacy model for the same software; Gartner also predicted that by 2026 one in five Java users would face an Oracle audit, and 80% of Java applications would run on third-party runtimes. A Dimensional Research study found 73% of Oracle Java users had been audited in the prior three years.
  6. 6
    SecondaryAttributed to source
    Oracle's Universal Subscription model applies the employee metric retroactively in audit claims to years 2021 and 2022—before the model existed (it launched January 23, 2023). House of Brick documented customer proposals with cost increases of 1,000% or more, and Oracle's audit scripts overstate exposure by not separating entitled use from accidental default-enabled use.
  7. 7
    SecondaryWidely reported
    Oracle's Unlimited License Agreements (ULAs) are typically three-year contracts with an upfront fee often in the millions; at term end customers must certify or renew. Annual support is ~22% of license cost. Entering a ULA subsumes existing perpetual licenses; support fees cannot be reduced after certification even if usage drops; ULA 'unlimited' rights apply only to explicitly listed products. M&A triggers accelerated certification.
  8. 8
    SecondaryWidely reported
    Oracle's audit tactic known internally as 'Audit, Bargain, Close' (ABC) uses compliance audits as a lever to push customers into Oracle Cloud purchases. A securities class-action alleged Oracle threatened costly audits unless customers shifted to Oracle Cloud; that case settled in January 2023. Oracle vs. Mars (settled December 2015) saw Oracle prefer confidential settlement over judicial scrutiny of its virtualization licensing stance.
  9. 9
    SecondaryAttributed to source
    Oracle's architectural lock-in consists of proprietary PL/SQL stored procedures, Oracle-specific functions (DECODE, CONNECT BY, ROWNUM), Oracle Text, Spatial, Forms, and APEX—creating switching costs that require rewriting decades of database logic. Reducing Oracle license count by 90% does not produce a proportionate cost reduction; Oracle can 'reprice' the remaining estate to maintain near-identical spend.
  10. 10
    SecondaryWidely reported
    Before 2023, a mid-size company might have paid ~$3,000 per year to license Java on a few servers and developer PCs; under the new per-employee plan, that same company could owe $45,000+ per year if they have 250 employees, regardless of actual usage.
  11. 11
    SecondaryAttributed to source
    Gartner predicted that by 2026, more than 90% of Java applications would be deployed on third-party Java runtimes.
Oracle Doesn't Sell Software. It Sells the Inability to Leave. | Stratrix