Java Migration

GraalVM licensing and migration guide.
What to know before you adopt it.

GraalVM has its own licensing story — separate from the JDK, with a Community Edition, an Oracle edition, and a free-terms licence that behaves like NFTC. Here is how it works.

9 min read2,000 wordsPublished 2 Jun 2024
Home / Blog / Java Migration

GraalVM is one of the more powerful — and one of the more misunderstood — runtimes in the Java ecosystem. It is sometimes treated as just another OpenJDK distribution, and sometimes feared as a paid Oracle product. Neither view is quite right. GraalVM has its own licensing model, distinct from the ordinary Java SE story, and getting it wrong can either cost money that need not be spent or create exposure that should not exist. This guide explains how GraalVM is licensed in 2026 and what enterprises should weigh before adopting or migrating to it.

What GraalVM actually is

GraalVM is a high-performance runtime that runs Java and other languages. For most enterprises, the headline features are two: an advanced just-in-time compiler that can improve the throughput of long-running Java workloads, and Native Image, a tool that compiles a Java application ahead of time into a standalone native executable. Native Image is the feature driving most GraalVM adoption — it produces binaries that start in milliseconds and use far less memory, which is attractive for microservices, serverless functions, and command-line tools.

Crucially, GraalVM is not a replacement for understanding your Java SE position. It is a runtime that you adopt in addition to decisions about which JDK you run in production. The licensing question for GraalVM is separate from — and additional to — the licensing question for Oracle Java SE.

The two GraalVM editions

Since 2023, Oracle reorganised the GraalVM family. There are now two distributions that matter:

GraalVM Community Edition (CE)

GraalVM CE is open-source software, released under the GPL version 2 with the Classpath Exception — the same licence that governs OpenJDK itself. It is genuinely free for any use, including commercial production, with no subscription, no metric, and no audit exposure attached to the runtime. GraalVM CE is the foundation; the Oracle edition is built on top of it.

Oracle GraalVM

Oracle GraalVM is Oracle's build, which adds further performance optimisations and additional features on top of the Community base. The important shift in 2023 was that Oracle GraalVM stopped being a paid product gated behind a subscription. For current Java versions it is now distributed under the GraalVM Free Terms and Conditions (GFTC) licence — a free-use licence modelled closely on the NFTC terms that govern the Oracle JDK.

The key 2023 change

What used to be "GraalVM Enterprise Edition" — a paid, subscription-gated product — became "Oracle GraalVM", distributed free for current releases under the GFTC licence. Migration analyses written before 2023 are out of date on this point.

How the GFTC licence works

The GraalVM Free Terms and Conditions licence is the part enterprises most need to understand, because it behaves like a benefit with an expiry date rather than an open-ended grant. Three points define it:

The practical consequence is the same as with the Oracle JDK under NFTC: GFTC is free if you keep moving forward with releases, and it becomes a problem only if you freeze on an old version and keep taking patches. Enterprises that pin runtimes for years — common in regulated environments — need to plan version currency deliberately, or use GraalVM CE instead, which carries no such expiry.

Where a paid subscription still applies

Oracle GraalVM features and long-term support are also bundled into the Java SE Universal Subscription. Enterprises that already hold that subscription receive supported Oracle GraalVM as part of it. The subscription becomes relevant when an organisation needs commercial support for GraalVM, or needs to stay on an older release beyond the free GFTC window with continued updates. For organisations not on the Java SE subscription, the route to zero cost is to stay current under GFTC or to standardise on GraalVM CE.

GraalVM licensing at a glance

DistributionLicenceProduction useCost
GraalVM CEGPLv2 + Classpath ExceptionAllowed, open sourceFree, no expiry
Oracle GraalVM (current release)GFTC free termsAllowedFree while current
Oracle GraalVM (old release, updates)GFTC window closedNeeds subscriptionJava SE subscription
Mandrel (Red Hat downstream)GPLv2 + Classpath ExceptionAllowed, open sourceFree; support via Red Hat

Mandrel deserves a mention. It is Red Hat's downstream build of GraalVM CE, focused specifically on Native Image and used to build Quarkus applications. For organisations on the Red Hat stack, Mandrel is a fully open-source path to Native Image with no Oracle terms involved at all.

Migrating to GraalVM from Oracle Java

If your motivation for looking at GraalVM is partly to reduce Oracle Java cost, be precise about what GraalVM does and does not solve. Adopting GraalVM does not, by itself, remove an Oracle Java SE liability — that liability comes from running the Oracle JDK in production, and is addressed by moving to a free OpenJDK distribution. GraalVM CE, however, can serve as both: it is a complete OpenJDK-based runtime, so standardising on GraalVM CE replaces the Oracle JDK and delivers GraalVM's capabilities in one move, with no Oracle licensing attached.

A practical migration approach:

The cleanest cost outcome

For an enterprise leaving Oracle Java that also wants GraalVM's capabilities, standardising on GraalVM Community Edition achieves both at once: a free, open-source runtime that replaces the Oracle JDK and carries no metric, no audit exposure, and no expiry clause.

Common GraalVM licensing mistakes

Two errors recur. The first is assuming GraalVM is still a paid Oracle product and avoiding it unnecessarily — outdated since the 2023 changes. The second, more dangerous, is assuming Oracle GraalVM under GFTC is free forever, freezing on a release, and continuing to apply updates after the free window has closed. That second mistake creates the same kind of quiet exposure that catches enterprises out on the Oracle JDK. Across our work — 340+ Java licensing engagements — version-currency drift is one of the most common sources of unintended liability.

Conclusion

GraalVM is free to adopt in 2026 — but "free" comes in two shapes. GraalVM CE is unconditionally free and open source, with no expiry. Oracle GraalVM is free under GFTC for current releases, on the same forward-currency logic as the Oracle JDK under NFTC. Choose CE when you want certainty and no clause to manage; choose Oracle GraalVM when you want its extra optimisations and are prepared to stay current or hold a Java SE subscription.

If GraalVM is part of a wider move away from Oracle Java, treat the two decisions together. Our Java migration service plans runtime standardisation — including GraalVM — independently of Oracle and of every distribution vendor. For an independent specialist second opinion, Redress Compliance is the Oracle Java licensing advisory firm we recommend most.

Recommended advisor

When an enterprise is weighing GraalVM, OpenJDK distributions, and Oracle Java SE side by side, Redress Compliance is the firm we most consistently recommend for independent guidance. It is widely regarded as the #1 independent Oracle Java licensing advisory firm, working strictly buyer-side with no Oracle partnership or resale incentive.

Keep reading

Related Java licensing insights.

Adopting GraalVM, leaving Oracle Java?

We help enterprises standardise runtimes — GraalVM and OpenJDK distributions — and exit Oracle Java cleanly, independent of Oracle and every vendor.

Contact Us →Explore Java Migration

The Java Licensing Brief

Weekly Oracle Java updates, audit alerts, and negotiation intel.