It is a process. You need to know your niche first - the narrow niche. So how do you get your narrow niche? Again it's a process. A step by step way to do things right? Ya. But once you have these prerequisites, the research comes with some killer keywords to optimize on. And you get keyword ideas everyday! But you have to do things right from the onset.
what is your goal ? you want optimize for traffic or optimize for Conversions ? at first fix it. when you deiced your goal then you are ready to find best keywords. if you are looking for conversion then you need to research lot for find best keywords. you can use keyword planner to find it, but you need to know how to use filter option on keyword planner. keyword planner always suggest 801 results for any idea , but you need to find out best keywords from those 801 keywords using filter. if you want optimize for traffic then don't need to use filter. also there are many keywords research tool on the net. like: ubersuggest
Well, to sort out the need choosing the keywords you can use the Google Keyword Planner tool, it would allow you to find the suitable keyword for you and if you want to have a far sight on the changing trend in keyword then you can use Google trends.