Step 1

Make a list of important, relevant topics based on what you know about your business:
Think about the topics you want to rank for in terms of generic buckets. You'll come up with about 5-10 topic buckets you think are important to your business, and then you'll use those topic buckets to help come up with some specific keywords later in the process.
Put yourself in the shoes of your buyer personas -- what types of topics would your target audience search that you'd want your business to get found for? If you were a company like HubSpot, for example -- selling marketing software (which happens to have some awesome SEO tools ... but I digress ... you might have general topic buckets like: "inbound marketing" (21K) "blogging" (19K) "email marketing" (30K) "lead generation" (17K) "SEO" (214K) "social media marketing" (71K) "marketing analytics" (6.2K) "marketing automation" (8.5K)
This data allows you to gauge how important these topics are to your audience and how many different sub-topics you might need to create content on to be successful with that keyword.