1. SEO Companies Have Much More Experience
When it comes to SEO, experience is everything. SEO can only be taught to a point, then experience teaches what really works and what doesn't. You can't just read a few articles on 'How To SEO' and call yourself an expert overnight. And sadly, that is what most of the so-called experts do these days. They're mostly just doing guess work. And, while searching keywords from free tools available online and then tossing them in an article might be called SEO, it's not nearly enough to boost your site's traffic and actually provide a half-decent return on your investment.
Experienced SEO companies have been providing these services for years. They've probably worked with many other clients providing the exact same services as you and they know what works and what doesn't. Partnering with a good SEO company will eliminate the risk factor from your marketing campaign and assure that you get exactly what you're paying for.