Deciding which keywords to use is a very involving and complex task that will require a lot of study. The most important is to understand that:
1 - Getting a high ranking with search engines should not be your main objective. You main objective here is to get a high rank for the right keywords. Your site should be listed in the first two pages, at most at the third page (30th position) on important keywords that people are using to search contents relevant to your site. It is also important that your site gets listed high under a search for your own business name.
2 - Keywords that are not relevant to you or that are too generic might bring you traffic that will leave your web site right after it pops up. You should be looking for quality traffic not quantity.
3 - You should be aware of how much demand and competition are out there for the keywords you are going to rank for. You should be informed of how many times that keyword is used daily and what is the PR of it's current top listing web sites. This way you will know exactly who you are dealing with and will make the right decision. You can use the Keyword Tool to check keywords on Google and Yahoo.
4 - 1-word keywords are not good to target as they tend to be too general and not specific enough to the theme of a web site. Keywords of more than 4 words should also be generally ignored as most people who use a search engine to find something will generally type 2-word, 3-word and sometimes 4-word keywords.
The way it works is very simpe, if a keyword is very popular, it means that it brings a lot of traffic, but if it is very competitive, then it very difficult to be on the first SERPs (search engine result pages) for that keyword unless you already have a righ ranked domain or several external links with that keyword in its hypertext. A good sollution is to find well popular keywords that are not so competitive so you can actually grab some traffic.
Search engine spiders (Robots), as I mentioned before on the SEO Basics page, can only read text and they are looking for valuable content. After all, the whole point of a search engine is to help people find information, and information comes in the form of text. (Robots do not read images neither Flash contents.)
Google and other crawlers use a complex system to determine what keywords are relevant to a web site and how relevant those keywords are for that site. This information is obtained by tracing all the written information on your web site. One thing they use is the so-called "keyword representation". In a simple version, keyword representation means that, if a keyword is not found in certain places of a web page, then that page is not relevant for that keyword. And if that keyword is only mentioned a couple of times on the page, then that page is not 100% relevant for that keyword. In other words, there is a very detailed oriented computerized system that will make sure search results are relevant and this is what makes a crawler efficient! What we should do, at our ends, is use the system properly so we can get the most advantages out of it.
What I suggest is that you should use your keywords on the writing contents as much as possible, say it many times on each page, as much as you can, to make it as much relevant as possible to that page.
There are many places in your HTML you can include keywords, but the Page Titles and Meta Description tags are arguably the most important elements of your Web site. These places are not the most important in terms of their ability to improve rankings in the search engines, or in terms of the search engines's algorithm, but are most important in terms of their ability to drive quality traffic. Which is, after all, the ultimate goal of search engine positioning.
It is important that the HTML heading tags were correctly used within the code. The H1 header is the most important and can only be used once per page. Important keyword content should be placed within these tags.