The trouble with charging people is you have to charge everybody the same[1], so you're leaving money on the table with wealthy users, and pricing out poorer users
Ads mean each user 'pays' you according to their spending power
Kinda socialist when you think about it! From each according from his ability...
[1] Obviously companies try to get around this with price discrimination, but it's hard especially for a network effect platform