Road to commercialization
This chapter was written by Filip Rakowski, co-founder of Vue Storefront
In Chapter 5 you learned about different ways of commercializing Open Source projects. While these models differentiate a lot between each other the path to commercialization almost always looks the same way.
Building critical adoption mass.
The biggest strength of Open Source is is the way how it’s adopted. Adoption of commercial software is a multi-step process that always requires the end-user to give something in return. Even if a certain commercial tool offers it expects your creadit card number and/or email in return. Open Source adoption has no price. You just go to GitHub and copy the code. You can do this completely annonymously and in most cases you can do whatever you want with that code.
Adoption of Open Source tools is much faster than their commercial equivalents and you should leevrage it as much as you can and focus on growing adoption of your tool before you start thinking about any commercial offering.
Learning who your users are and what are their problems.
By giving your software for free you will meet a lot of people who want to use it in a ways that you havn’t thought about. You will also learn about their problems and struggles. This is the best way to understand who are your potential customers and what problems you can solve for them in a commercial product..
Positioning is always hard when you are new to the market but Open Source allows to gather the necessary data much faster which increases your chances of commercial success. You don’t have to sell anything to learn how your product is used. It’s often adopted without your active involvments.
Your only goal at this stage is to learn as much as you can about your users and build relationships. They will not only provide you with a lot of useful information but often become your first customers once you launch commercial offering.
Upselling solutions to those problems.
Once you learn enough about your customers you can start working on a commercial offering that will compliment your Open Source one.
When we launched Vue Storefront one of the most common questions we were getting were “Where to host it?” and “How to host it?” so we launched our own offering. This way our users had their problem solved and we had our first source of income. It was a win-win situation.
Once you know who is your customer you should invest into Community Intelligence tools like Talkbase that will allow you to spot users within your ICP range you can reach out to. Collect emails of your users from slack or a newsletter, connect the Community Intelligence tool with HubSpot or Salesforce and start reaching out to those who represent a company that could be interested in your commercial offering. Don’t be too salesy tho! It’s best to make them want to give something back by gaining their trust instead of being pushy.
Some users will decide to choose a different solution, and that’s alright.
It’s very important to not limit functionalities of your Open Source application after comemrcializing it. You may think that it’s a good idea to make your commercial offering the only possible solution for the problem your community has but this is not the reason why they decided to use your software. In most cases you will loose trust of your community and slow down the adoption. Trust me, it’s very hard to rebuild it once that happens.
Think about non-commercial users as evangelists or extended marketing team. While they won’t pay you directly they will recommend your product to others who possibly will, contribute back to te codebase or support other users on Discord.
Shifting focus without loosing community traction.
Many Open Source projects looses their traction and community after they start to commercialize their product even if they don’t limit the Open Source application features. Building a business requires a lot of work and dedication and usually is prioritized over growing the non-commercial part. Often the time you allocated for Open Source work is spent on helping paying customers that demand quick resolution of their problems. Community dies when you don’t take care of it.
You should make the team that is nourishing your Open Source community as independent from the commercial one as possible. Otherwise commercial problems will always eat their time.
For every company and product it’s different and you should always try to work out what is best for you but one model that I saw working is just not hireing the Open Source maintainer and sponsoring her/him through GitHub Sponsors. Some Open Source projects go even one step further and completely separate their commercial offering from the Open Source product. A good example of such company is Nuxt. Their commercial branch - NuxtLabs is an independent entity and Nuxt maintainers don’t work there neither on their commercial products. This allows them to keep a healthy balance and keep both commercial and non-commercial side growing without negatively imapctoing the other one.