Mark Thomas Miller's logo

Why not to sell software as a one-time purchase

November 19, 2019

As programmers, we love to build our own products. But when it comes to selling them, we often forget that "I'll charge people once" makes it hard to build a sustainable business.

And who can blame us? Charging people once is how most products work! It’s easy to market and sell a t-shirt – everyone understands what they are, how to use them, and you can easily convey their benefits in an ad and sell it to the masses. Want your customers to make a second purchase? It’s easy to produce a t-shirt with a new design. It’s easy to get people to come back and buy another.

But software is not a t-shirt. It’s hard to sell. It needs support, maintenance, bug fixes, and new features. People don’t come back and buy another “software” if they like it. And you can’t produce a related “software” as easily as you can a t-shirt.

Even selling a trivial piece of software becomes hard once you add in customer support, taxes, maintenance, bug fixes, new features, finding your target market, setting up a landing page, creating promotional materials, handling legal documents, making a logo, accounting, setting up your company's bank account, processing refunds, differentiating from competition, and so on.

And then there's marketing. Let's say you make the best text editor in the world. You tell your friends. You post on Hacker News. You post on Reddit. You write some articles. Where do you go next? And after that? And after that? Unless you're constantly feeding the beast, the bulk of your revenue will be behind you, and you won't have an incentive to maintain your product.

So, if you want to sell software, choose a business model that makes your product easier to maintain over time, not harder. The ideal model collects multiple payments from the same customers. How you handle this is up to you: if you're running a job board, you can re-sell space to your previous customers. If you're running a web app, this could be subscription pricing. If you're running an API, it could be usage-based pricing. All you're trying to do is find a system that earns revenue without you needing to jump on more sales calls, run more ads, and convince more people of the benefits of your product.

Once you implement a good business model, each of your marketing efforts will start to pay dividends. That ad, or blog post, or conference talk won't just result in immediate revenue — its effects will continue into the future. Compounding payments will make it much easier to maintain your business. And it means that you can spend more time on what really matters: making your product.