Nowadays Google is all about content and is means that you have to optimize it according to Google guidelines. Most common mistake is not checking keyword density which has to be between 3% and 5%
There are two ways you can earn money from SEO?
Optimize your website make it rank on Google first page, get a ton of traffic and make money this way or you can charge a fee for improving somebody's website.
Well to make money you have to spend some. To make your website alive you have to pay for hosting pretty basic stuff. To make money with your website has nothing to do with website hosting, you have to learn internet marketing to find out more.
Cause it's a #1 search engine and everyone is using it so if your website starts ranking high on it then you'll get a ton of traffic and earn more cash :)