Many hosting providers (like WordPress, blogger etc) give free hosting. We can’t say free hosting is freedom. In free hosting, we don’t get full control. Like we can’t put google ads of our own to our free hosting site but the hosting provider may put the ads on our free site. This is the basic business policy of the free hosting service providers. Suppose as a company you have invested well to give a private hosting service and you have enough space.
Then you decided to use the free spaces to make a little money. And for this, you hire some programmers and give your website some controls to the visitors so that any individual visitor can create a subdomain with a limited space, choose a theme and use it on their personal website.
When an individual uses that space for his/her personal blog and brings some visitors by interest then the hosting providers get some profit by putting ads on his/her blog. The profit from a single user may be very low but considering thousands of users blogs the company can make a good amount of money. We can’t say that is a very good profit for the company but it is better than not making money when you can make it. The real profit comes when a user rents some more spaces and other facilities from the company and becomes a premium customer.
Till you are a free customer of a hosting company you can’t have your personal domain and you have to carry the company’s name with your site name like abc.wordpress.com, also you can’t use AdSense like programs to make money from your blog though you can use your blog for affiliate marketing. That’s a good news!