If you're ok with never wanting an update, bugfix, or security fix, then a one-time purchase would sort of be alright. Most consumers, however, expect that the software they buy will get some kind of support over time.
I used to work at Microsoft. I can't tell you how many times my relatives/friends complained to me about Microsoft dropping support for XP. They expected that the software would be supported forever, even though they bought it once more than a decade ago.
A subscription cost matches the expectations of the consumer better than a one-time purchase, and better aligns the incentives of the company with the consumer.