I don't exactly disagree with what MicroGuy says, but speaking as someone that has been doing SEO for about 10 years, it's only part of the story.
If you have a great site with good content that is constantly updated that's great. And if you have content that people need or like and they return, that is also great. But how are they going to find you in the first place? Yes, search engines will find and index your site and bring you some traffic, but if you don't have at least basic SEO, your site cannot reach it's full potential. I consider basic SEO to be the process of having unique page title tags, meta description tags, and meta keyword tags.
SEO stands for Search Engine Optimization and that's really not a good name for it. You don't optimize a search engine, you optimize a web site FOR search engines.
At it's core, SEO is the process of having on your site, the keywords and keyword phrases that people use to search with. If you have that, your site will be found more often then sites that don't. It's as simple as that.
To optimize your site, you do some keyword research and find out what people are using. You make a list of all the things that people use to find a site like yours, then you add that to your site as much as possible, following a few rules: Don't over do it. Always use good English usage. And combine keywords into sentences that are also good advertising copy.
Along with this is making sure your page title tags, meta description tags, and meta keyword tags are also optimized and unique for each page of your site.
If you don't think SEO matters, try optimizing a section of your site, or just one page. Wait at least one week, or maybe more if you site is not being indexed very often. If you don't see a big change in traffic to that page, contact me and I will check it and give you some free advice.
Back to your original question, companies that offer SEO vary widely is price, techniques, and skill. You should talk to more than one before you choose someone, learn as much as you can about SEO first, and make sure you understand what you are paying for and what you will get for your money.
If a company offers to get your site to rank for certain keywords or phrases, make sure someone us using those keywords to find sites like yours. A top ranking means little if there is not much traffic. Also, remember that just because you GET a top ranking, that does not mean anyone will click on your listing. Lastly, even if someone DOES click, it does not mean they will become a customer.
I hope this helps...!
