As a professional Search Engine Marketer, I have tried every ethical optimization technique available to try to achieve top search results. Some work well and others do not show any sign of improvement in ranking once completed.
What I have come to realize is that search engine optimization and good ranking take diligence and lots of patience in achieving great Search Engine positioning.
You can have the right keywords, the right met tags, quality page content, great back links, and submit to engines regularly. There is not magic wand you can wave to see your listing suddenly blow your competitors site off the map and get you in that top spot.
A new site can take anywhere from 1-6 months to show up in the search engines with the right SEO techniques. Existing web sites can take anywhere from 1 to several weeks for the adjustments you made to show the new positions.
Each search engine will update its data at different times. Google may index your site data within a week after you make your adjustments and take another week to shift your position for the keyword. MSN may take 1-2 weeks to index your data and your update your new positioning. Yahoo can take up to a month to update you web site data and positioning. Be patient it will happen.
I recommend optimizing your sites with the time frame in mind. If you advertise holiday specials, then you need to optimize you specials page in advance to target the holiday keywords.
Your Search Engine Marketing Strategy should be part of your overall Search Engine Marketing plan. If you have available funds, pay for paid inclusion or pay the advertising for the keywords you wish to target while you are waiting for the natural placement to occur.
When you start to get great placement in the free ads area, turn off the pay per click ads for those words. Now you're getting free traffic.
Remember free placement does not happen over night. You have to be patient, do your work, and make sure your information is relevant to what you want to list for in searches.