Generating revenue to sustain a product and a business may seem self-evident, but it has not been the prevailing wisdom in the Valley or in the developer community over the past decade as the mobile age has dawned. VCs, established firms, and small developers have all thrown untold money, time, and effort behind free services with an eye on user base and with revenue as the afterthought. This model has given birth to some pretty amazing services — who can imagine Twitter reaching its current size if you had to pay for it from the start?
Yet despite the success of free, we have begun to see what happens when long term sustainability comes as an afterthought. After years as a developer-friendly platform, Twitter has all but squandered any remaining developer good will as it has come under increasing pressure to monetize the service. Instagram, as part of taking a massive pay day from Facebook, saw fit to assign the rights of millions of photos to Facebook for advertising purposes before publicly backtracking in the face of user revolt.
There is no doubt that free can lead to huge user bases and massive adoption. In the face of venture capital or existing cash stores, the siren call of free often sounds like a low-risk bet on future profits. In practice, free is a costly mistake that businesses and small developers should avoid, and users should run away from like the plague.
I'm going to assume for a moment that if you are reading this blog you care about making great product. Selling to lots of users is at least as important to you as being proud of what you build. Most folks in this camp aren't looking for a quick sale or to flip their business to a big buyer. If you care about the long term success of your business, you want users handing you money for what you build. You want your acquisition of money closely aligned with what makes your users happy.
The rationale here is quite simple. Customers handing you money is your best signal to understand if you are building a solution that they want. Instantly, your incentives are aligned with your users. You want to build a great product that meets a need, and you want to do so such that you can keep doing that for a good long while. Without the real feedback of cash in exchange for what you have built, it is nearly impossible to know if you are building something people really want, let alone something they'll be willing to pay you for in the future. Having paying customers can create a base of active and sustainable users, help provide near immediate feedback if you take your product in a bad direction (they stop paying), can provide positive feedback when you make the right decisions, and sets you up to keep doing what you're doing for some time to come.
As a user, you send a clear signal to a business when you vote with your dollars: I am willing to pay for what you provide. If that situation changes, you vote with your future dollars and go elsewhere. The long term happiness of each participant is much better aligned than when a service is given away for free. In the absence of an exchange of money, the user is often at far greater risk, particularly if they are using a service that requires active upkeep by the business. Not only is user data at risk if the business never figures out how to make money, but the business often has perverse incentives to make money in other non-product ways, such as selling customer information or placing advertisements. Neither of these align with making a great product and it's not uncommon for product quality to suffer as a result.