One common misunderstanding about SEO is that you are not purchasing a position on Google. The reason for this confusion is probably due to Adwords, and people who have purchased an ad on google confusing this with an organic position. When you buy an ad on Google, your ad and website link will show up in a position that is associated with the amount of money you pay for the click. If you want to make sure you show up at #1, you simply outbid everyone else and you will show at #1. SEO is quite different than this, and many times companies sending you solicitation emails about guaranteeing you showing up on the first page of Google are actually referring to ads instead of organic positions. Basically, anyone can purchase an ad but only the best websites with the best information on a subject will show up in the organic sections. These positions are created through ongoing content and SEO tactics.
If you can guarantee placement with an ad, isn’t that better than SEO? The answer is if you care about how much it will cost you to be there. Basically, in the ads sections your competition is everyone who cannot figure out how to rank organically, and therefor are willing to pay for it. While you are absolutely paying an SEO company to build your rankings, the idea is that if you can get into a first page position organically for a hard to achieve keyword, the money that you would pay out in ad clicks to keep a first page position showing will be far more than the money you would pay to an SEO company for their work. If an ad is costing you 10 dollars per click and there are potentially 100 people per day clicking on it, that is $1,000 per day that could be paid to an SEO company to work towards an organic position. Lets say that company gets you into a number one position in exchange for $5,000 in fees per month, that will translate to about $25,000 in savings every month. The value of a position is what it would cost you to get the same exposure placing ads, and SEO will almost always generate better results.
So how long do you need to keep SEO going once you have achieved the desired position? That answer depends upon the competition in the space. If there is not a lot of competition and none of the competitors are doing any SEO work, then you might stay in that position forever with no additional work. However if it is a competitive word you can rest assured that the competition realizes that by them not being in that position any more they are losing business to you, so they are going to ramp up their own SEO efforts to regain it. This means that you will probably be doing SEO forever on your site, as long as you want to maintain your rankings. If the rankings positions are generating more in revenue and business than you are paying to the SEO company to keep your position high, then you are making money and should not stop. It is fine to try and scale back the work once the position has been achieved, but you should do so while watching for downward movement while doing so. If you begin to fall, then more work needs to be done.