In the world of online marketing, there are two possible ways of driving traffic to your business' website : paying for ads, or trying to rank it as high as possible on the search engines, action better known as Search Engine Optimization. SEO divides into on-site optimization and off-site optimization. A good SEO company will have to combine the two in order to achieve what I like to call "a SEO blast".
The blast is so powerful that it can pop a website up to the top of even millions of others in as little as one month. Of course, you can pay Google to show your website at the top of certain keywords, but you would then have to pay separately for each keyword, blowing your expenses way too high. Let me tell you a thing : paid traffic is targeted, but will only last if you keep paying, while the traffic you get from the search engines is constant, also targeted, and free. So what will you chose ? Pay daily for a year, or pay once for probably more than that ?
On-site optimization is the way your website is structured, and its design ( especially the position of everything, in order to convert better to sales ). Depending on what type of service you are providing, the platform of your website can differ from WordPress to a custom made script. The SEO company you choose might recommend WordPress. The advantage of the WordPress platform is that you can constantly create new content that pops up for new keywords you chose. After your website gets a very high page rank on the search engines, you won't have to build links to each article, as they already are well seen and pushed to the top ( this is something your company should teach you, among with other things, but it usually limits to being/hiring a good writer ). Since WordPress' aspect is now very easy to modify, a custom design might not be worth anymore.
Off-site SEO is all about one way link building. The more websites that provide links to your website, the better the search engines like Google and Yahoo rank you. You may think that you can build links on your own, and you are right, you can do that by participating in forums ( signature ) or leaving comments on niche related blogs, but that is exhausting and useless in the end. Just do it if you really do read blogs and forums, and don't spam.
Compared to what you can do, a good SEO company can build links that are of very high quality. The links are blended in a series of articles and content that is keyword optimized for your niche, not only providing better listing in search engines, but driving targeted traffic from other websites directly to your site.
In order to get your site optimized at a very fast rate, the service providers must create a powerful timing algorithm of posting content, to make the links appear online as naturally as possible, preferably in a viral way. If the links keep spreading on their own even after the optimization is ready, then you should thank your company twice, as people all around the globe now share your website around.
As long as your website is smartly monetized, and the traffic you drive in converts fairly easy to sales, purchasing Search Engine Optimization services will always have a good return on investment. A good SEO company is what every website with expectations needs most in order to succeed.