A good google search will be much more informative, but always use 'Exact', sort by number of searches and look for low competition.
Using Google's ADWORDS (log in to your Adwords account) keyword tool: Has enough search volume (exact match) Has a good CPC (cost per click) Determine if you have a chance to reach Google's first page in the SERPs Search volume will depend on what you're promoting. CPC is to determine if people are spending money on the keyword. Use MarketSamurai or TrafficTravis (free version) to get page 1 SERPs info.
You probably will have to combine various metrics like the relevance, importance, search volume, competition etc.
Totally depends on the audience you targeting and the goals you have set for your project, on a general basis, always try to target high demand keyword with less of the competition.
If you are a beginner then it is recommended to choice keywords with low competition. Even if they are long tail it is fine so long as they have at least ten 10 searches a day. The reason I say this is so that you understand how to rank for keywords using easy ones before trying any more challenging ones. There are many factors when it comes to determining the competition of a keyword, such as the number of competing pages or the page rank of your competitors (only worry about the page rank if they are on page optimized for the keyword though). A good way to choose keywords is by seeing if there are any competitors (SEOs) that have page rank 0 blogs ranked in the top ten. The best way to choose keywords though is by finding people who have sold their blogs that already profit from search engines and outrank them. This will almost guarantee traffic and success for your site or blog.
researching competitors and their keywords is the most profitable strategy for the beginners, this are different services such as google ispionage, semrush, spyfu.