Stating a truism - to make a billion dollars, you either have to get $10 from 100M sales, $10k from 100k sales or $10M from 100 sales. Although each option leads to the same revenue, there are major implications as for the amount of support and attention you can spend on each customer.
Google/Facebook/Twitter obviously run the "$10 from 100M sales" model - meaning the only way they can provide profitable support or moderation is via inanimate algorithms, and deal with the PR fallout when they go wrong.
That isn't necessary though - other companies like Microsoft, Oracle, and SAP also have tens of millions - to billions - of customers all with their own support requirements: the solution is simple: make the customer put up their own money as collateral for getting to speak to a human.
Microsoft charges $500 for a single business-class support ticket with ~8 hour return time[1] - and you get the money back if the ticket was not a PEBCAK issue. If you're a company that depends on Azure or Visual Studio or Windows Server then keeping $500 around just makes sense.
I just don't understand why Google and other companies that deal with long-tail customers don't provide this as an option.
[1] In practice, if you have an Enterprise support contract, the effective cost is much lower AND you get a much quicker response time - but there's more paperwork involved.
Say what you will about how crappy Win 9x was, but they definitely drove the average tech support load to much less than one call per machine.