Charging for API usage isn't as profitable as selling your users to advertisers. Otherwise twitter would already be living just off of selling the firehose.
First version of Twitter's API had no authentication, it was as free and open as it can get, so it got integrated everywhere. Everyone without technical knowledge could copy and paste a snippet into their WP powered blog or website, deploy it and enjoy the functionality. I think that was one of the primary driving forces behind Twitter's growth. Putting an API behind a paywall basically eliminates the majority of Average Joe's
Problem is that when you sell your users to advertisers, it's reducing the value of your service in the users mind.
I value websites with heavy advertising to be less attractive to me and less valuable. As more users get turned off, the websites will be able to get less money from advertisers.
It can become a snowball effect that kills a service.