The first step is to brainstorm a list of somewhat generic keywords. For example, if you are a shoe store in Poughkeepsie, the temptation will arise to try and rank number 1 for the term "shoes." Well, that's a start, but ranking for the word "shoes" is probably aiming a little too high for a mom and pop shop in Upstate New York, which is why it's very important that you know the site well enough to come up with a good list of pseudo-generic "modifiers" for your keyword:
* Location (Poughkeepsie shoes, shoes upstate New York, shoes 12601)
* Price (cheap shoes, affordable shoes, quality shoes, comfortable shoes etc)
* Types (running shoes, walking shoes, jogging shoes etc)
* Industry specific (anti-pronation shoes)
Lengthening the List
At this point you should have a good list of pseudo-generic keywords. The next step is lengthening that list using your favorite Keyword tool (I will be using Overture in this example).
Each time you plug a keyword into your tool of choice, it will return the number of searches conducted for that term over a given period of time. It will also suggest keywords from the tool's database that are similar to the one you entered.
The basic idea now is to go through the list returned by the keyword tool and copy any and all similar terms as well as their corresponding search values, which relate directly to the site you're optimizing. Then, paste them to a spreadsheet program so that they can be further edited later.
Once you have copied and pasted, just go through the list row by row. Delete keywords that don't have to do with the website you're optimizing (which is why it's important to know what the site doesn't feature) and repeat with the next pseudo-generic keyword on your list. The idea is to identify as many keywords as possible.
Narrowing the List
So you have a long keyword list; it's time to narrow it down. I narrow my lists by deciding if the potential gain for a keyword is relative to the competition. In order to make that decision, I need to know three variables:
1. The number of searches on a particular keyword (already got those from Overture)
2. The Amount of Competition (I'll show you how to find your competition in this section.)
3. Will the keyword lead to conversions (this is up to you)
Below is a method for thoroughly determining competition for various keywords:
1. Do a search for one of your keywords
2. On the first SERP find the last listing with the keyword in the title tag that is either a homepage of any kind or is a sub-page which is not associated with a domain whose Pagerank is greater than 6. (This is the page you will need to beat, if one does not exist, ranking will generally be easier)
3. Find out how many unique links with the keyword in the anchor text whose linking page has a Pagerank of 1 or higher for the competitor (This is how many quality backlinks you'll need to acquire)
The aforementioned is a meticulous method for determining the competition for all of your keywords, and unless you're planning on building a tool that will automate this process, I would suggest taking a more general approach by using advanced search strings in the search engine of your choice.
The technique that I am about to demonstrate uses the following string:
intitle:"Keyword Phrase" inanchor:"Keyword Phrase"
This string will return the total number of pages with, largely, the two greatest factors contributing to ranking for a keyword:
* Having the keyword in the page title
* Having the keyword in anchor text pointing to the page
It's a down and dirty method for assessing competition. This is how it's done:
1. Go to http://www.startlaunch.com/research/.
2. Copy your list of keywords into the box, click "submit".
3. Click on each link.
4. Find and copy the number of pages that the search engine returns for this query from the top right of the SERPs to a new column next to the corresponding keyword in your keyword list spreadsheet (this is your competition).
5. In another new column, divide the number of competitors by the number of monthly searches for each keyword.
6. Sort the table from low to high (ascending) using that column.
What you have done is created a ratio of competitors to searches. When determining competition, you generally want the keyword to be searched on more times than there are competitors for that word. So the closer the ratio is to 0, the better the keyword.
These techniques will point out which terms have the most competition, but competition alone should not dictate which words make the final list.
Remember when selecting keywords: words on a higher competitive level should be placed on pages that will receive deep links in groups of 2 or 3 where all of the keywords are very similar like:
*Running shoes, Shoes for running and buy running shoes online
*Web design in Atlanta, Atlanta Georgia web design, Atlanta web site design
This way, you won't have to remove highly competitive, but potentially lucrative terms from your list, provided that you make a concerted effort to perform link-building for the pages on which those terms reside.
For smaller terms, in my opinion, the more the merrier. They can be given their own pages or be mentioned on other highly trusted pages of your site.
That's it. You should have all the information you need to select a strategically viable keyword list. Remember, keyword research is the cornerstone of a successful SEO campaign. Knowing the competition for your keywords will aid you in site layout, as well as focusing effort on SEO only where it is necessary. Ultimately, it will make your optimization process more efficient, allowing your sites to rank for more keywords with less work, which is a goal that all SEOs strive to attain.