I don’t think a lot of people understand what it takes to actually run a profitable business, let alone a profitable software business.
When a developer puts their software on a subscription model, they have to balance a lot of different things, it’s not all about maximizing profit. And what you end up paying for—development—is only one piece of the equation. You still need to do marketing and support. You think SlackJaw is on this community for free?
Developer salaries still need to be paid whether or not you’ve sold any licenses. If you put out software traditionally where users have to upgrade periodically, that forces users to make a decision every time a new major comes out. That might sound fine from a user’s perspective but it’s a nightmare for software development.
Let’s say you’re a software company. You just spent the last year polishing a new version. Marketing wants to put X, Y, and Z features in it. What if those features don’t sell as well as they thought? Maybe it’s a down year? You can easily found yourself in a hole financially and the only way out is to have multiple revenue channels—hopefully you built more than one app—or you might have to start laying people off.
And what about Operating System upgrades? OS upgrades can often touch a lot of developer code but users still expect your app to work and will blame you when your app doesn’t work on the latest and greatest. And they sure as hell don’t want to pay for an upgrade just for OS compatibility— You didn’t add any features, it’s more or less janitorial work. And worst of all, you have users who think the software they bought 7 years ago (and possibly 4-5 major versions ago with slightly different interface tweaks over the years) should still run and be supported on their brand new M4 Mac. It’s a rat’s nest.
Subscription is really the only profitable way to do development these days. Every user has incentive to keep current which lowers support costs. That bug you fixed 5 versions ago? Just tell the user to download a newer version. Brand new features? You get all of them.
I’ve also seen hybrid models where you pay a slightly higher price but then you “own” the app. If you want updates, then you just pay for another year of them but your software stays locked at that version. That’s less ideal but it doesn’t force users into a subscription they don’t want. These tend to work better for utility apps where you only do a few smaller features a year. On an app like DJay, I don’t know how you’d even put it out without subscription, as it’s constantly updated. One DJ’s must-have feature is another one’s “meh”.