One idea that I have is to sell every major version (would be cool if I could give a discount to users of previous versions). Then, I could plan about 1 major version per year, while continuing to give bug fixes to the previous version for 2 more years (a core feature of the app is to connect to 3rd parties APIs online so previous versions will break without updates).I would also want to give early access to the next major version, so the users don't wait up to a year to try some of the new features. My idea is to start selling the next version as soon as the previous one leaves early access.
njhaveri|3 years ago
If you really want to offer perpetual licenses with paid updates, since you're a desktop app, you can roll your own licensing system and use FastSpring/Paddle/etc. It's a fair model, but it's a lot of work. It may be worth it depending on your audience - e.g. developers tend to care a lot about this stuff.
Selling this as a subscription is probably the best path if you can stomach the initial ire of users that don't like that model. Depending on your price point, you could consider a 4x-5x multiplier for a lifetime option if you want to try and keep some of them. Yes, you will lose some users that might have paid for a major version, but you'll probably make that up with the recurring revenue from less price-sensitive users.
Best of luck. I know this can be agonizing and there's no easy answer here.
curiousmindz|3 years ago
I see that you are also working on a desktop app and have the same concern.
Good luck :)