Open, source-available — the new KeygenStar us on GitHub arrow_right_alt

Open, enterprise-grade licensing & distribution

Keygen is an open, source-available software licensing and distribution API, built for developers, by developers. Self-host or try Keygen Cloud today.

Free during development, no upfront commitment


We've designed Keygen's API to be easy to use for developers of all skill sets. Use our official SDKs or grab your favorite HTTP library.

keygen.LicenseKey = "C1B6DE-39A6E3-DE1529-8559A0-4AF593-V3"
// Validate the license
license, err := keygen.Validate(fingerprint)
if err == keygen.ErrLicenseExpired {
panic("license is expired!")
if err == keygen.ErrLicenseNotActivated {
// Activate the license
machine, _ := license.Activate(fingerprint)
"activated machine %s for license %s!\n",


Keygen was born in the cloud. Cloud is in our team's DNA. With Keygen Cloud, we'll handle all the hard stuff while your team focuses on product.


Let your team focus on product, not in-house licensing and distribution. Save time by using Keygen Cloud as a ready-to-go licensing solution.


Skip the expensive up-front and ongoing costs of an in-house or self-hosted licensing solution. Save your business development time and money with Keygen Cloud.


Effortlessly go from hundreds of users, to thousands, to hundreds of thousands and beyond. We'll handle the infrastructure so your team can focus on product.


We strive to ensure that data stored within Keygen Cloud is as secure as possible. TLS, HA, continuous backups, data encryption at-rest, in-transit, and at-work.


Keygen EE, our Enterprise Edition, is perfect for businesses that want to self-host Keygen.

Keygen EE comes with the following:

* SAML/SSO is under development.

docker run --name keygen.1 -p 3000:3000 \
-e DATABASE_URL="postgres://postgres:[email protected]:5432/postgres" \
-e REDIS_URL="redis://host.docker.internal:6379" \
-e KEYGEN_LICENSE_FILE_PATH="/etc/keygen/ee.lic" \
-e KEYGEN_LICENSE_KEY="C1B6DE-39A6E3-DE1529-8559A0-4AF593-V3" \
-e KEYGEN_ACCOUNT_ID="c8ef4b4b-9a0a-49c7-8ea4-c47d13aa11f9" \
-e KEYGEN_HOST="licensing.enterprise.example" \
-e KEYGEN_MODE="singleplayer" \
-v /etc/keygen:/etc/keygen \
keygen/api web

Open, source-available

Keygen CE, our Community Edition, is free to self-host for personal and commercial projects.


Keygen CE is free (as in beer) to self-host for any project. We want to make licensing accessible for everyone.


Keygen is source-available. Browse the code, clone it, fork it, modify it — Keygen is 100% open; nothing's hidden.


Join our communities on GitHub and Discord to make friends, talk shop, and get community support.


Want to see something new in Keygen? Open an issue or pull request and let's talk about your new idea.

Ready, set, run

Clone it, run the setup, then serve. That's it. Self-hosting made easy.

git clone && cd keygen-api
bundle exec rails keygen:setup
bundle exec rails server

Trusted by over 6,000 software businesses all over the worldincluding these industry leaders

Ready to get started?

Sign up today, or reach out.

"Licensing was planned to make up at least 25% percent of planned dev time for our product so it's awesome to see that we've been able to cut it down to 2.5% with Keygen." – Ranorex

Free during development, no upfront commitment

Or interested in self-hosting Keygen EE? Contact sales for a 30-day no-strings-attached trial.