What I do is to take websites that I know are popular in the niche I'm in, then analyze them using Semrush and then check which keywords their ranking for. Semrush also gives me the number of searches the keyword gets every month.
Then I choose the keywords I like from all the websites and simply outrank those websites
D: most of the time though, not always.
There's a lot of tools you can use to check keywords a website is ranking for, like Alexa or Google Keyword Planner.
Other methods would be to use Google suggest. Just go to google.com and search for your keyword but don't hit enter. For instance you can type "Make Money" and hit space bar on your keyboard then Google will suggest different popular key phrases people use. I took a screenshot to give you an example, check the image below:
A great tool that will make this process a lot easier is ubersuggest.org
Another great tip is to find keywords that are going to be popular. You simply go to news.google.com then type "announced" + keyword and google will give you the latest announced stuff in your niche.
Try different keywords and always be broad don't use long tail keywords. If you have a good authority site your blog post will also show up in Google News when people search for that new thing.
Magazines are other great places to find good keywords. Check out magazines in your niche, look at the latest issue, you should find some great keywords in there.
You can also go to flippa, check which websites were just sold then analyze the sites in your niche using Semrush, Alexa or Keyword Planner.
There's more you can do to find good keywords, but hope that helps