That all depends really on who you use. I have been stung in the past by slick, promise the world type people who talk a good job but deliver Nothing. Most of these are ongoing pay monthly types , all branded beyond belief. And they generally charge like the light brigade.....
The most knowledgable tend to be the little independent web builders who are well known in your locality. The one I found, stumbled across by accident when I needed some coding done where I lived a couple of years back, He would do a little bit here and there for me 20 and 30 quid at a time... and then sit back and see what effect it had over a month or so.
Most people think SEO is a quick fix,, its not, it takes time. Google needs to see your sight develop and for your hits to increase.
Because time isnt an issue you could do worse than research the web on SEO techniques , linking and the like and try it yourself..
Remember Search engines don't see pictures, its your test that count, Visuals only come into their own when humans look at your site.
Script up some text in a word document. tweek what you think your keywords should be. and have a play with the adwords tool. It will surprise you In my location the tool tells me that no one is searching for a window cleaner in this town. however 26 search for carpet cleaning, 12 search for conservatory cleaning... So if I set a site up simply keyworded for windows. and no one searched for it. It would be like shouting toward the sky and expecting a passing alien to hear you... Top tip use teh tool to search simply on your area name. it will give you teh top 50 searches each month with your town name in it. See if you can incorporate some of these in your pages...
If you are trying to tune the background Keywords in the Page reports / SEO part of your page I wouldn't bother too much. I believe search engines don't get too excited by it. the place to have your keywords is in the main text on your page, You can put your location in with your name and number in the Site header along with your name and the service you are promoting. You can repeat things like alternatives on the Site footer, so that if you have multiple pages the same phrases are found on each page.
Sorry gone all gushy again....