Or I can have a website and sell directly.
Is hosting a website free? How much do you pay for the bandwidth and storage to sell software online? Also, you'll have to provide a secure payment system for your customers, secure data storing and so on.
All this adds up to the cost. Would setting up and maintaining this be cheaper than paying 20%-30% of an app?
(This is a legitimate question, I'm curious about it)