Once upon a time there were many profitable business models for selling software.
Then software got big. You weren't selling a thousand copies anymore, now it's a billion.
The economics of software is that the price you "need" to charge goes down when the number of users goes up. If it costs ten million to develop and you have a thousand users, they each have to pay at least $10,000. If you have a million users they only have to pay $10.
If you have a billion users they each only have to pay $0.01.
You can get more than the $0.01 from each user through advertising. What you can't do is get an amount on that scale through payment processing, because the transaction overhead is larger than that.
So now you have a user that the advertiser is willing to pay $0.03 to advertise to. The users themselves are willing to pay $0.05 to not be spied on, but you haven't got any efficient way to get $0.05 from them. It'd have to be much more than that to justify the payment processing overhead, and the user isn't willing to pay that much.
So it's not a matter of the users being unwilling to pay, it's that we don't have an efficient way for them to pay that small of an amount.