When it comes to running an open source business, the question I’m asked second most often is "How do you market your services?" (The first is "How do you make money selling free software?") I wish I had a concise, step-by-step answer, but I don’t. The best I can do is to relate some of my experiences.
The truth is, I was always a little suspicious of marketing. Most of what I see on a daily basis just looks like lies. (Will drinking a particular brand of beer make me skinny, athletic, and irresistible?) But, still, the question persists: Without marketing, how do you let people know that your business exists? Not to mention that marketing usually goes hand-in-hand with sales--and sales, after all, are how your business continues to exist.
I’ve often seen the sales process represented by the idea of a funnel. The wide, top end of the funnel represents a pool of possible customers, while the small end represents the number who actually become customers. If the ratio between the top and the bottom of the funnel remains constant, then the best way to increase sales is to increase the number of possible customers — i.e., make the top end bigger. Thus, marketing.
One misconception, at least with respect to open source, is the idea that the pool of potential customers is represented by a project's community. The term "community" has been overused a lot lately, so I would like to define it as those people who download and use open source software, subscribe to mailing lists and forums, and, perhaps, those who open bug reports and submit patches.
It turns out that these people make poor prospects as customers. They got into open source (and your project) because they already possessed the skills required to use the software without assistance. The chance that they’re going to need extra help—and that they’ll need to buy it from you—is slim.
For example, when I teach a class about OpenNMS, I often ask the students if they are subscribed to the main OpenNMS discussion list. Usually, less than one in ten raise their hands. In fact, more than half of our commercial customers contact us for the first time without ever having installed the software. And that’s because our customers don't come to us looking for open source software. They come to us because they want to find the best solution to their problems—and, in many cases, that solution includes open source software.
For more on this idea check out a post by Stephan Walli (complete with pretty pictures) that illustrates what I've observed.
This is not to say, however, that in the open source business world one can ignore a project's community. Quite the opposite. For not only are there the inherent benefits one gets from community contributions, the community is also one of the best ways to get the word out about your project. Remember, before you can gain a customer they have to know a) that you exist, and b) that you offer a viable solution. The community can do a lot to let people know these very basic facts. They make the top of the funnel bigger.
In short, one of the best things an open source company can do is spread the word about the project, or projects, with which they are associated. Active participation in those projects is a must, as is involvement with local users groups and some of the larger regional conferences.
There is difference, however, between attending a trade show as an open source company and attending as a proprietary software company. When I worked for a proprietary company, we went to trade shows with the goal of generating orders. When I go to an open source conference, my goal is to increase the general awareness of OpenNMS. I don't expect conference attendees will whip out their checkbooks and buy support; rather, I know that by meeting some of our team and learning about the software they’ll gain an increased awareness of our services, which, ultimately, will generate orders.
The final thing I want to talk about is finding a good marketing person to help you out. In much the same way that I can talk about the services of my company providing value when deploying OpenNMS, a good marketing person understands the value of marketing and can help you realize it.
It took us awhile to find someone. We worked with a number of people who were big on creating flashy websites, search engine optimization (SEO), and of course, your company's presence on social networks. I didn't find much value in it—people don't buy our stuff because of our website, and as for SEO, if you type "open source network management" into Google, OpenNMS is the number one hit. We've done nothing to artificially inflate our standing (well, except perhaps mentioning it in this article).
Our marketing person did two things. First, she got me to realize the true role of marketing is to get your story told, not to "trick" people into buying your product. She was also pretty impressed that we had a story to tell—part of the negativity associated with marketing comes when someone has to embellish to create an interesting story. Simple truths can be more effective than hyperbole.
Second, she had us focus on what we did as the OpenNMS Group, not what OpenNMS did. These are two separate things. Not being familiar with open source, she had no preconceived notions, and as we talked about our business, she (and a second person working with us) came up with the core idea that our services "get the network to work." Companies invest a lot in IT infrastructure not because they like the technology, but because they believe it will improve production and eventually the bottom line. We realized that our company’s mission was to help our clients get the most out of their IT investments—and that’s different from our previous focus on just deploying a great management solution or being evangelists for open source. Every company can benefit from going through this process, and you would be surprised to see the benefits of defining that core message (and in some cases, finding out what that message turns out to be).
The last thing we did was start a process to try to get more of our commercial clients to talk about why they used our services. The emphasis was less on why they chose to use the software and more on what they found valuable with our company. This is harder than you might think — not because of any lack of enthusiasm, but due to the internal politics of getting permission to talk about it. The default answer is "no," and you have to work hard to change it. In fact we have a few clients that won't allow us to mention that they even exist, much less that they use OpenNMS.
Customer stories are probably the most important part of our marketing strategy. People buy the things that people similar to them buy. And while I could promise you that using OpenNMS will make you smarter and better looking, I doubt you would believe me. When someone sees a customer story, however, they take notice, especially if it is from a business similar to their own.
Marketing an open source company, then, isn't much different than marketing any other business, but do remember that your project's community is probably not the best place to look for commercial customers. Be truthful, and be able to explain what your company does. Finally, get your clients to talk about how great you are. One sincere, independent endorsement is worth more than hundreds of blog posts, tweets, and status updates.