No is the most answer people would say, and that's partly true, but only if you are using free platforms. But realistically, there will be a small cost to start a blog if you want it to look professional.
1. Buying a domain, but then this is not a must. But if you use a free platform, your website URL wouldn't be as neat and slick, instead the platform's own domain would be in your URL too.
2. Web hosting, unless you are using free materials and platform, this is one the expenses.
3. No blog starts with a ton of viewers unless it's a blog of a celebrity, but advertising can sometimes cost money as well.
But then when you are successful with your blog, the income generate can totally pay for these costs and have some surplus too!