From Solo Developer To Millions In Revenue - The Keygen Journey




From Solo Developer to Millions in Revenue: The Keygen Journey

*A candid conversation with the founder of Keygen, a software licensing API that's generating millions in revenue with over 6,000 customers including Spotify and Google—all built and run by a single developer.*

The Beginning: From Graphic Design to Code

Born in Kent, Washington, but primarily raised in Oklahoma City, Keygen's founder took an unconventional path to tech entrepreneurship. Homeschooled throughout his youth, he initially wanted to study architecture in college. When that didn't work out, he pivoted to graphic design.

"I did graphic design professionally for a bit, but I realized that I hated doing it for clients because I just felt like their paintbrush," he explains. "I had no creative outlet."


The turning point came when the marketing agency he worked for needed front-end developers. His boss approached him about learning front-end development, and he agreed to try. "I bought a book on HTML and CSS and taught myself over about six months. Eventually at that company, I ended up being the lead programmer over a team of five devs."



The Genesis of Keygen

While working at the marketing agency, he collaborated with co-founders on a desktop application for building local WordPress sites. The app needed a licensing server, and after searching for existing solutions, he was shocked by what he found.

"Pretty much all the options were from enterprise companies where you have to call them to get a quote. One time I got a quote for a licensing service, and it was like $50,000. I'm building a tiny desktop app—I don't have $50,000 to blow on that!"

Frustrated by the lack of affordable options, he built a small licensing server in Ruby on Rails for their app in a weekend. While the desktop app ultimately didn't succeed due to co-founder fit issues, the idea of a software licensing API remained in his mind.

"The idea that no one had built a software licensing API was in my head for about six months, just gnawing at me. Why has no one built this?"


Validating the Idea

Without much experience in building SaaS products or Ruby on Rails (he had only about 20 hours of experience with the framework), he put together a landing page showing what the API might look like and posted it on Hacker News.

"Immediately I was on the front page of Hacker News. People were asking questions like 'How are you going to do it securely?' and I was like, 'I don't know'—I was basically making my way through all the answers," he laughs.

That early validation gave him the motivation to build the product, and six months later, he launched Keygen on Hacker News again, reaching the front page for a second time.


The Long Road to Traction

Despite the initial attention, real traction took time. "In terms of first sale, it took me almost a year to get my first customer. It was hard for a number of reasons—I wasn't good at sales, and I didn't know how to market my business other than posting on Hacker News, Indie Hackers, and Reddit."

The nature of Keyen's product also made early adoption challenging. "To integrate a software licensing API is a big step. You need a lot of trust. An enterprise business isn't going to integrate a product that just showed up a month ago and hope that it exists in three years."

His first customers were indie developers and people building new companies who had less risk than established businesses with existing users. "I kind of grew with my customer base. As I grew, my customer base also branched out into bigger businesses."


Evolving Pricing Strategy

Early pricing was a learning process. "I didn't know anything about pricing. I think I had a $9 tier, then like a $99 and a $199 tier. Looking back, that was a terrible choice."

He noticed that customers on the lower tiers often required the most support. "The $9 tier was my highest support burden. I don't really want to spend that much time helping for $9 a month. So nowadays it's $49 a month."

While this higher pricing weeded out some indie developers, his later move to a Fair Source license would provide them with a different option.

The Open Source Decision

After seven years as a closed-source product, the "bus factor of one" (the risk of the project failing if something happened to the sole developer) became a significant issue for selling to enterprises.

"It always came up: 'How can we be sure that Keygen is going to exist in two years?' I would tell them, 'Keygen is seven years old, it's bootstrapped and profitable.' But that's not the best answer."

Many enterprise clients wanted source code escrow arrangements—a process where a third party holds the source code and releases it to the client if the company goes under. "This was really annoying to set up. I wanted to fix the problem."

Rather than changing his lifestyle business by hiring a team, he made a bold decision: "If I'm sharing GitHub repository access with some enterprise customers, why don't I just let everyone see the source code?"


Source Available with the Elastic License

After considering it for about a year, he made Keygen source available under the Elastic license. "You can do whatever you want with it as long as you don't compete with me in a cloud service."



He structured his offerings into three sections:

1. Keygen Cloud - the SaaS service he'd been running

2. Keygen Community Edition - free for self-hosting

3. Keygen Enterprise Edition - paid self-hosted version with premium features

This addressed the bus factor issue for most customers—if Keygen went out of business, customers could host it themselves. It also gave him the same distribution benefits as open source.

"In a closed-source product, you have to do 100% of the marketing. With open source, users write content about the software, talk about it online, build side projects with it, and recommend it to their bosses. Source available gives you that distribution model without having to risk your business."


The Birth of Fair Source

Despite the benefits of the Elastic license, a problem remained: if Keygen went out of business, customers using the Enterprise Edition would lose access to those features after their license expired, as they couldn't legally modify the code to bypass the licensing requirements.

Inspired by Sentry's Functional Source License (which transitions to fully open source after two years), he decided to create a new license that combined the best elements of the Elastic and Functional Source licenses.

"I worked with Heather Meeker, who helped write the Functional Source License and the Elastic License. We drafted up a fork of the Functional Source License and called it the Fair Core License."

The key innovation of the Fair Source model: after a set period (typically two years), the code becomes fully open source under a standard license like MIT or Apache.

"The definition of Fair Source is software that you can read without limitation, and then you can use, modify, and redistribute with minor limitations. And then the big differentiator is that eventually all Fair Source software will be open source."

This solved his final sales hurdle. "Previously I would sell perpetual licenses to people, and that felt bad—it felt snaky. Now all I have to do is sell a two-year license, and then after two years, they can fork it and take out all the licensing code if Keygen went out of business."


Building in Public vs. Building in Private

For the first few years, Keygen was an "open startup," sharing revenue publicly on platforms like Indie Hackers. "I was getting all the dopamine hits," he recalls. But eventually, he became burned out with trying to be an influencer.

"Everyone told me the conventional wisdom was that you have to be an influencer to have a successful SaaS business. I don't think so."

He deleted his Twitter account and removed his business from Indie Hackers. "I deleted every personal social media account except Hacker News." Throughout this social media hiatus, his business continued to grow.

"People have this misconception that you have to be an influencer to sell. In reality, 99% of your users are not on Twitter. Unless you're selling to other founders, you're just searching for dopamine hits."


Instead, he focused on more traditional marketing: "I just bought ads on Google, Capterra, and Bing, sponsored newsletters and podcasts—just typical stuff."


 The Technology Behind Keygen

Keygen is built on a straightforward tech stack: "It's super boring—it's Ruby on Rails, hosted on Heroku, backed by PostgreSQL and Redis. The front end is a super old Ember app which I'm trying to rebuild in React."

He loves Ruby on Rails for its simplicity and conventions: "It lets me move so fast. I can pump out features in a day that would take me a week in Node and TypeScript. For a long project, these differences get amplified."


 The "No Meetings" Philosophy

One of his most interesting business practices is refusing to take sales calls with customers.

"When I first started Keygen, everyone wanted to get on calls with me. I was on sales calls 4-5 times a day some days, and about two of them would close. I felt like I was wasting my time."

His solution was radical: "One day I deleted the calendar 'book a demo' link on the website. Anytime someone asked, I'd say 'Sorry, we don't do calls for non-enterprise customers.' 99% of the time they would be like, 'Oh, okay cool.'"

He would add, "Feel free to CC your tech team onto this email and have them send me questions." This approach gave him direct access to engineering departments, bypassing much of the traditional sales process.

"This year I've probably gotten on less than 15 calls, and I've closed multiple enterprise deals through email."


 Building a Lifestyle Business

Rather than pursuing rapid growth at all costs, he has deliberately built Keygen as a lifestyle business.

"I've spent a lot of time and effort building Keygen into a business that I want to work for. I pretty much get rid of everything that I don't like about work. If I don't like something, I just fix it."

With a wife and two children (and one on the way), maintaining work-life balance is important to him. "I get off at 5:00 every day. I don't work on weekends unless there's an outage or I need to do a migration or upgrade."


 Current Challenges: Scaling Beyond One Person

After eight years of doing everything himself, he's now facing the challenge of scaling beyond a one-person operation.

"The big challenge right now is that I have a lot of projects and I'm only one person. I'm starting to be the roadblock on new projects."

He's exploring different approaches to getting help: "I've hired an agency to help me build one project. I've been trying to hire for front-end development, and I've tried bounties. I'm trying to see what kind of works as the best route."

While he enjoys the lifestyle business model, he's open to evolution: "I want to exhaust other avenues first before hiring employees. But who knows? Five years from now, I might have a handful of employees."


 Advice for Founders

His main advice for other founders is persistence: "Don't give up so early. Sometimes ideas suck, but if you do have an idea that you think is monetizable and you have validated the market for, don't give up so early because the problem is probably you."

He emphasizes that growth doesn't need to follow the hockey stick pattern that's often celebrated in startup culture: "If I showed you my growth chart for Keyen, it just looks like a really linear line. There's no giant spike. It's just slow and steady growth."

"You gain a lot from just existing. Your brand gains a lot over the years from just existing and growing slowly. You don't need hockey stick growth to have a normal work-life balance."

---

*Keygen is a software licensing and distribution API that helps developers manage license keys, track activations, and distribute software updates. The product is now available as a managed cloud service or as a self-hosted solution under the Fair Source license. For more information, visit (https://keygen.sh).*








Comments

Popular posts from this blog

Video From YouTube

GPT Researcher: Deploy POWERFUL Autonomous AI Agents

Building AI Ready Codebase Indexing With CocoIndex