You have to spend for at least a domain name and then a web hosting plan. A domain name will cost you around $15/year and hosting will cost you around $3/mo. But if you buy hosting from Bluehost, then you will get a domain name for free. So, your total cost of starting a blog could be around $40-$50/year only.