They let people believe that streaming is cheap, but it is not. A server can send streams to many people at the same time, but not so many as it seems and sever up time is a cost, in terms of energy and in terms of sysadmin time. Maintenance of the network is also expensive, especially in the US where most of the people live in low density neighbourhoods.
To that you have to add the cost of the big data servers that check everything people look at and profile their customers.
The dirty cheap subscriptions were meant to attract new customers, the service was heavily subsidized. The companies looked profitable just because other companies bought more ad space than necessary. Overadvertising is the preferred method to give stealth subsidies, but it is a cost for the other businesses of the network. After a while they have to shift those costs to the customers.
To get an idea of the cost choose any cloud service and see how much you pay for the server usage by the hour. Try to llok at all the other costs involved in the business, production of dedicated content is not cheap. All the company staff, the administration and the billing have a cost.
Do not go by assumptions, measure, try to get an idea of the real costs.