Keyword Research for SEO_1280x720

Keyword Research for SEO: A Step-By-Step Guide For Beginners and Experts

Affiliate Disclosure: My blog is supported by my readers. When you buy through links on my site, I may earn a commission, at no extra cost to you.

Have you just started a new website or are looking to expand the content of your existing website? You are at the right place as I will show you my personal content strategy. Using my keyword research process, you will be able to find keyword opportunities that your site can rank for, and then, boost your search engine visibility quickly.

In this detailed step-by-step guide, I will expose you to my method of doing the keyword analysis, for each type of situation: For a new website or, an existing website.

Don’t worry, I got you covered 🙂 This gonna be a very long, but also, very detailed guide so grab a coffee, you’ll need it!

How Do I Research SEO Keywords?

To build a list of keywords that will be optimized for SEO (Search Engine Optimization), you will need a few tools. My recommendation is to opt for a paid tool because it will provide you with better analysis and better actionable data that will help you to optimize your content better.

The process is complex but at the same time, it is simple. It’s like anything, as long you haven’t learned it, it is complex. Don’t worry, if you follow carefully my guide, you will be able to generate content ideas and boost the organic traffic of your website in a short amount of time!

But before starting, it is important that you know the tools that are available to you.

Below are the most popular SEO tools, with a short description explaining why they are a great choice.

Top Keyword Research Tools (Paid)

When it comes to doing keyword research, that is important to have the right weapons in your arsenal. Having good content pieces is essential to offer your visitors a great user experience but you also need to satisfy your search engine best friend, Google!

To find the best keyword opportunities for SEO, you will need to use premium SEO tools, which will provide you with detailed SEO metrics and superior keyword analysis.

Here are the top keyword research tools:

1. Semrush

Semrush is definitely the top keyword research tool in my opinion. They have the largest database of keywords and personally, I find that the keyword data is more accurate.

What I like with Semrush is that you can simply put your focus keyword and Semrush will return you with a massive list of keyword suggestions for your target keyword, including keyword phrases, keyword variations, questions related, and much more.

The keyword difficulty score is not as easy to follow as Ahrefs but anyway, you will find out later in this article that keyword difficulty IS NOT a good metric to use.

Semrush is what I personally use for my keyword strategy, because the keyword data is superior, and you get much more for a lower price, compared to Ahrefs especially.

Semrush is much more than just a simple keyword research tool, it’s a complete marketing suite… But we will stick to their keyword research feature for this guide.

Pros of Semrush:

  • Bigger database of keywords.
  • Fewer restrictions on limits.
  • Very affordable (especially if you take into consideration all the features offered, including those outside their content marketing suite)

Cons of Semrush:

  • The interface (UI) is not user-friendly.
  • The tool is not only for SEO, which makes it very confusing at first.
  • Confusing keyword difficulty score

Conclusion: Semrush is amazing for keyword research, it’s where I start every time I need to proceed with keyword research tasks.

2. Ahrefs

Ahrefs is considered the king of all SEO tools out there… It’s a clear favorite and with reasons! The UI is a charm to work with, the tool is super easy to use, and there is nothing that beat their proprietary metrics as of today.

I absolutely love their content explorer, it’s part of my keyword strategy and I’m not sure I could live without it. This is REALLY POWERFUL.

In addition to their content explorer feature, I think we can all agree that they have the best backlinks database and the most accurate domain rating metric. But I will stop here, as I really want to focus on the keyword research side of the tool!

Ahrefs have similar features to Semrush, you enter a seed keyword in their Keywords Explorer and Ahrefs will return you with a list of keyword opportunities. Like Semrush, you will have many keyword data, like search volumes, CPC data, keyword trends, keyword difficulty, etc.

To compare Ahrefs with Semrush, the query “camping” will return 1,449,768 keyword opportunities in Ahrefs, vs Semrush which returns 4,621,874 keywords, 3x more! (snapshot taken on 2022/06/07).

Pros of Ahrefs:

  • UI is so easy to use.
  • Content Explorer is unique in its genre… and so powerful!
  • Keyword difficulty score is better.
  • Powerful filtering feature.

Cons of Ahrefs:

  • The software is expensive.
  • Usage limits are so restrictive.
  • Exporting data is very limited (comes to usage limits issue)

Conclusion: The content explorer feature can be hardly replaced as it’s really unique in its genre. The good news is that, even with the recent pricing increase and their new usage restrictions, we can still use the content explorer without really caring about our usage limits, with their $199/month plan.

3. WriterZen

WriterZen is a new player in the keyword suggestion tools league, it has been popular recently because they’ve been one of the most popular tools on sale on Appsumo.

WriterZen is offering many features, starting from keyword research to content editor. Their marketing strategy is to sell it as an all-in-one solution for content marketing.

However, they have a very small database of keywords so I would not recommend relying only on them for your keyword data. It’s good enough though if you can’t afford for the big boys.

What makes WriterZen outstanding is its keywords clustering feature and its keyword golden ratio (KGR) filter. Once you have a list of keywords, that you gathered from Semrush or Ahrefs, you need to group them together, to boost your topic relevancy and avoid keyword cannibalization. More on this later 🙂

Pros of WriterZen:

  • Great UI and is easy to use.
  • Amazing keyword clustering feature.
  • Unique keyword golden ratio (KGR) filter.
  • Super affordable

Cons of WriterZen:

  • Small database of keywords
  • The content editor is not advanced as competitors (ie: SurferSEO).

Conclusion: WriterZen can definitely handle your keyword strategy if you are on a tight budget… you can use it to do your keyword research, cluster your keywords, and even, write your content using their content editor.

Despite the fact that WriterZen has a lot to offer for its price, I only use it for grouping my keywords together (keyword clusters) and for finding easy-to-rank keywords, via their unique KGR filter. It is quite useful, especially when you need articles for a project that is new or has low authority.

Free Keyword Tools

If you can’t afford a subscription for a keyword research tool, then you can always opt for a free keyword suggestions tool, however, it will come with its limitations!

Here are the 3 best free keyword tools:

1. Google Keyword Planner Tool

The proprietary keyword research tool of Google is 100% free. However, to be able to use it, you will need to have a Google Ads account, have all your payment information filled in, and have created at least one ad.

Once your Google Ads account is activated, you will be able to use the tool but you will realize fast how basic it is. The keywords suggested don’t come with any search volume…

Instead, it will provide you with a range for monthly search volume, which is REALLY WIDE. You can forget about SEO metrics like keyword difficulty, which is really helpful in the creation of your keyword lists.

Google Keyword Planner could be enough for getting some keyword ideas but don’t expect more from it. It is very limited.

2. Ubersuggest

Ubersuggest has been one of the most popular keyword research tools in the last decade, mainly because of its freemium model and the quality of its data for a free tool.

However, in early 2017, Ubersuggest has been bought by Neil Patel, which converted it into a paid tool in 2020.

You can still use Ubersuggest as a free keyword tool but it is heavily restricted now. To unlock all features, you will need to move to a paid plan.

3. SurferSEO (Browser Plug-in)

SurferSEO is well known for its content editor but they also built a great SEO browser extension, that will show you the search volume for any search queries, directly in Google Search, and that is very convenient!

Once you have enabled their browser extension, you can start typing in Google and you will see the search volume of your keyword, and for queries that Google suggests. Their plugin also adds a nice sidebar widget that shows keyword ideas based on your seed keyword, all that is accessible straight beside your search engine results.

SurferSEO has definitely won the heart of many SEOs when they have released this free keyword research tool. I have to admit it was a genius idea… It is an excellent lead magnet for their paid tool 🙂

My Keyword Research Framework

Now that you have the list of all keyword research tools that I’m using, it’s time to explain to you how to use them.

My keyword research framework looks like this:

  1. Find competitors – Ahrefs (Content Explorer)
  2. Extract keywords – Semrush (Keywords gathering)
  3. Group your keywords – WriterZen (Keywords clustering)
  4. Write your content – SurferSEO (Writing content)

1. Find Direct Competitors With Ahrefs Content Explorer

Ahrefs is well-known because of its backlinks database but it’s far from being the only impressive feature that Ahrefs has!

The Content Explorer is probably, in my opinion, their most appreciated feature, at least, it’s the one I appreciate the most! With Ahrefs Content Explorer you can find websites that rank in the same niche as you, filtering them by authority, traffic, language, and almost, anything you could have thought of.

I never have found a tool that is offering what the content explorer feature is offering, and that is the most effective way to find content opportunities.

If you can’t afford Ahrefs, you could still find competitors in your niche, manually with a Google search. The big difference with Ahrefs is that you can filter your opportunities by metrics, which is much faster, and remove the hassle of trial and error.

Put your target keyword (niche) in Ahrefs Content Explorer

Content explorer

In the example above, I want to find content opportunities for a website in the camping niche, so I’ve written “camping” and selected “In title” to find all content that has the keyword “camping” in their title. It should give you something like this:

Content explorer

But now I need to filter this out. I will use the following filters:

– Domain Rating

Domain rating

Note: I recommend setting the max DR under 5 or 10, vs your actual domain authority. So if your DR is 35, set 25 or 30. If you start on a fresh domain, I recommend setting it to 5 (Max).

– Website (Optional)


Note: If you want to target a specific region, I recommend setting up the ccTLD that refers to your country here. (example: , ca, de, etc..). Do not put the “.” before the ccTLD.

– Website Traffic

website traffic

Note: In the website traffic, I usually put 5000, because I want to find websites with some decent traffic. You are free to adjust this if you feel that fit better for your site and its domain authority.

– Language


Note: In the language field, I just set “English” to remove all content in the languages I’m not interested in.

– Listing Filters

Listing filters

Note: I limit my research to 1 article per domain, and I exclude the subdomains and homepages from the listing.

Okay now that all my filters are in place, it’s time to dig into the filtering list of websites and find direct competitors.

A direct competitor is a website that is focused ONLY on your niche. You don’t want to get a website that ranks in other niches than yours. So in that case, I will limit my selection to sites that contain the word “camping” in their domain (or close variant), and that are content sites (I don’t want business sites).

Tips: If you want to target direct competitors that are affiliate websites, just add “best” or “review” to your focus keyword. In that case, I will make a search on the query “best camping” because I want to find other affiliate websites in my niche, to find easy-to-rank content opportunities.

Ideally, you want to find competitors in your niche (in my case, other affiliates in the camping niche), that have a lower DR than my site, but that have great traffic.


So after all my filters, Ahrefs finds me 496 sites, and from the first 7 results, I have already found 2 direct competitors.

The first one is creating a lot of content on RV (Recreative Vehicle), which is a great subtopic to Camping. The second has massive traffic and also focuses purely on camping. Probably just these 2 sites will generate easy 30-40 article ideas.

The other sites are either; Not in my target region, or the niche is too wide. For example, one targets the Outdoor niche, which will rank for a lot of keywords that we are not interested in, like hiking or fishing stuff.

5 minutes later… I’ve found the 5 direct competitors:

DomainDomain Rating (DR)Website Traffic

Now that my list of competitors is built, it’s time to extract the keywords from them. Let’s move to step 2!

2. Extract Organic Keywords From Competitors

For this task, I use Semrush but if you don’t have access to Semrush, you can also do it with AhrefsBoth tools have the required features to execute this task. I prefer Semrush because the keywords database is bigger and they have a higher export limit compared to Ahrefs.

Note: The method explained below works for existing and new projects. The Keyword Gap is meant to show you only the keywords for what you don’t ranks, and remove all the one you rank already.

Using a dummy domain, or a fresh domain will still give you the same opportunities as if you would have to export manually the list of keywords manually for each site, then remove the duplicates. You just save a lot of time doing it this way!

Okay so… If your website ranks already for some articles, we need to filter out the keywords that you already for. For this, it’s super easy… We will use the Keyword Gab feature in Semrush (or Content Gap in Ahrefs).

In Semrush, in the left menu, click on “Keyword Gap“, and then, fill your own domain name in the first field, and for the other 4 fields, put your competitors. Once done, choose your region and click on the compare button.

Keyword gap

Semrush will then show you all the keywords that your competitors rank, but that you aren’t.

Important: I suggest you add a filter to show only keywords that rank at the top20 because you don’t want to get keywords opportunities that you may be not able to rank on the first page.

Keyword gap

Don’t forget also to set a minimum of 50 organic traffic per keyword.

organic traffic per keyword

For my example, it gives me a list of 11.5K keywords that my competitors are ranking, but which I don’t (Using a dummy domain). All these keywords are “rankable” for a site having a low authority domain, <DR20. A lot of content opportunities for a site!

Now that your list of keywords is ready, it’s time to export! Click on the Export button and export to CSV.

export data

Ready for the next step!

3. Clustering Your Keywords Together

Why keyword clustering is crucial? Because it groups all keywords that should rank together, according to Google vision. It boosts your content relevancy, and at the same time, prevents any keyword cannibalization. You can learn more about keyword clustering on Wikipedia.

You remember, you exported your list of keywords from Semrush (or Ahrefs) in the precedent steps… However, your exported file is an excel file that contains multiple columns. For this step, we just need the domains list, not the rest of the data.

Open your Excel file, copy all keywords, paste them into a .txt file, and save it. It should look like this.

Once you have your .txt file ready, log in to WriterZen and move to the keywords importer section.

writerzen dashboard

Then click on the Import Keyword button, set a project name, choose your region and language, and then, paste your list of keywords, or import your .txt file. Click on + Add.

keyword importer
Keyword importer 2

Once you clicked on the + Add button, WriterZen will start collecting the data for all your keywords.

Collecting data

After ~3-4 minutes, it should be completed. Then WriterZen will show you all the keywords in a sleek interface.

Keyword importer 3

To start the clustering process, you have to click on the Cluster button and choose Cluster All.

Cluster button

In the next step, leave the default setting and click on Activate.

Cluster project

For the option Group keywords with X similar results, it just means that it will do a Google search for all your keywords and will group them together if it finds X or more URLs that are the same, for the same keyword. I consider the default value fine for most cases.

Note: The clustering process takes time… WriterZen has to send a query to Google for each keyword you have imported and gather the top10 URLs for each of them, to finally, proceed with the keywords grouping (clustering). You can expect ~1h per 5K keywords (Ignore the estimated time).

Once the clustering process is completed, you can export them to Excel and move to the next step. Your exported file should look like this.


4. Content Selection + Writing Using Surfer SEO

Once you have your list of keyword groups, it’s time to select which ones you want to keep for your site. I won’t go into detail here because I’m talking about it in the next section…

But normally how I do it is I select the one that fits my audience, and assign them a topic (silo) that has been pre-established on my site. I plan to write another article later on how to optimize your site structure using SEO entities (I suggest you to subscribe to my newsletter to be notified by email, when I will publish new articles).

For content production, it’s important to never use a keyword that has the same meaning as another keyword. Let’s take this keyword group generated from our camping link as an example:

KeywordsSearch Volume
rocking chair camp22200
rocking chair for camping22200
rocking camp.chair22200
rocking camp chairs folding1900
rocking camping chairs folding1900
rocking foldable camping chair1900
rocker folding camp chair1900
rocking folding camp chair1900
rocker folding camping chair1900
rocking bag chair880
rocker sport chair880
rocker bag chair880
rocking bag chairs880
rocker sports chair880
rocking camp720
rocking camp chair with shocks260
rocking camping chairs with shocks260
rocker tailgate chair210
rocking chair camp chair170
rocking chair camping chair170
rocking camper chair140
rocking camp chairs near me70
rocking baseball chair70
rocking ballpark chairs20

As you see, out of 24 keywords, I have kept only 7. So how do I determine which search term to keep? Here are some tips:

  1. The keywords that come with the same keyword volume are “often” recognized by Google as being the same query. (Keyword variants that gives the same search results)
  2. If you have to choose between multiple variations, think about which one is the most natural. Which one sounds better? Don’t forget, you write for the users first!
  3. Try to use different keywords variation in your list, as an example, I had the word “rocking” multiple times already… so when I had the choice to choose between “rocker bag chair” or “rocking bag chairs”, I opted for rocker because it was a synonym. It’s always great to include synonyms in your headings.
  4. If you have multiple keywords with the same intent, just choose one!

So once you have made your selection for your next blog post, it’s time to do a Google search and look for PAA (People Also Asks) and Google suggests.

In that example, my main keyword is rocking chair for camping, so let’s see what Google tells me on this specific keyword:

rocking chair for camping
Related searches

So analyzing the Google suggestions, we can see the recommendation for “best rocking chair for camping”, that means we have a high buyer intent for this query. This also recommends we include the word “best” in our title and H1.

That’s an easy hack because we target already the keyword “rocking chair for camping” so we can just add “best” upfront and bingo… we target now 2 keywords for the same query!

And now let’s move to the PPA section… We see right there something really important!! Do you see it?

There 4 questions related to “heavy-duty chairs” for weighted persons. That means that a big portion of the audience for this query are heavily weighted persons. When you think about it… That takes all its senses, right? If you are fat, you may not be able to find a camping chair that fits your body in local stores, so you will check on the internet to find one.

People Also Asks and Google suggests are the best and easiest ways to determine the intent of your keyword, and determine which audience it addresses.

So now that you know a big portion of your audience will be fat people, do you think that would be a great idea to create a CTA promoting the best heavy-duty chair? It’s CRO 101, my friend 😉

Think outside the box! Take the time to analyze your query manually! Content marketing is much more than just finding some keywords, and writing about it. Targeting a bunch of keywords randomly simply does not work anymore. If that’s still your strategy, that would be time for you to revise your strategy!

Okay! let’s go back to our keywords selection. Now that you have a set of keywords ready, it’s time to paste the list into your favorite content optimization tool and get the list of entities recommended to include in your content.

Just don’t go crazy… Ignore the density, focus only on the entities to include. The density is not important, the entities are though. I will explain why you need to have the important entities included in your content in an upcoming article.

What Are Good SEO Keywords?

A good SEO keyword is a keyword that comes with an intent that you can satisfy. Before wanting to rank for a specific keyword, you have to make sure you can satisfy the search intent.

Can I satisfy the demand of the user?

If the answer is yes, then it is a good SEO keyword. When you are writing content for your blog post, you should always keep the intent of your query in mind! Let me give you an example.

I want to rank for the keyword “best loans for students”.

What do you think the needs of the user is? If you would be that user… What would you like to know? Personally, I would like to know the following:

  1. What is the best rate I can expect to get as a student?
  2. What are the requirements to get a loan?
  3. Does students have a better rate?
  4. Can I pay it before the end date?

This discussion is close to another process called CRO or Conversion Rate Optimization. Why? Because when you are looking to improve your CRO, the first thing you have to know is the needs of the user that will visit your page and then, solve these needs. If you can do this, you will increase your conversion rate, and also your ranking! Why? Because it’s part of the Google algorithm!

Note: If Google sends you traffic and sees that this traffic comes back, he will understand that you haven’t fulfilled the needs of its users. For that reason, Google will stop recommending your content.

Logic right? It is! Google is a complex machine… but when you understand how it works, everything becomes simpler.

Google is constantly making tests in the search results. Google can decide to take a webpage that is ranked #5 and move it to #2 for a few days, just to compare the data with the precedent webpage that was ranked at this position.

If your webpage fulfills better the user needs, then Google will leave you in position #2, and the other webpage will be lowered in ranking.

That is why you absolutely need to fulfill the intent for your main keyword when creating content. Choose keywords smartly, and write for the users, not just for Google.

How to Satisfy Intent?

The best way to satisfy the intent is to find what your target audience wants. Search your focus keyword on Google, and look at the Google Suggests, and the People Also Asks section.

Note: Use a VPN, and connect to your target country before opening a Google chrome new window (in guest mode), and then search your query on Why a VPN? Because otherwise, Google will give you data based on your IP address and your analysis will be wrong.

Build a list of all questions you can find, ask yourself what you would like to know for the same query.. and then, make sure to answer all questions in your content.

Many think that you just have to integrate all People Also Asks questions in your content to satisfy the intent, but that’s not completely true. That’s why I suggest you to add headlines based on your own questions, even if they are not targeting a specific keyword.

Remember… Write for the users first, for Google second.

When you are done with your article, reread it completely, and think from a user point-of-view; Does the article has replied to all my questions? If yes, then you did your job and Google should recognize it!

The same applies to this article… As a user that wants to learn how to do keyword research for SEO, does I have satisfied you? I asked myself this question, I have reread my article, and I think the answer is yes!

I have satisfied the intent of the query, I’m ready to hit the publish button!

Why Using This Keyword Research Strategy (Content Gapping) Over the Tradition Keyword Explorer?

Before, like many, I was using a keyword explorer and was looking for keywords based on: keyword difficulty, parent topic, phrase keywords, etc…

The problem with this strategy is that you rely only on your keyword research tool data, which is backed by what exactly? What tells me that your keyword difficulty metric is better than another tool? Which one to trust? You could think of targeting an easy keyword relying on its difficulty level but in reality, you are targeting a competitive keyword.

What I prefer in my strategy, over the standard method that relies on a keywords explorer tool, is that it’s based on more facts! If I see that a domain DR10 ranks for a keyword in top5… No matter what is the keyword difficulty reported by SEO tools, I know I will be able to rank it with my DR20 domain.

There are many keyword research strategies… Some target long-tail keywords, others prefer relying on a keywords explorer tool, starting from a seed keyword, and exploring the different parent topics associated with the keyword, to finally build their keyword lists from there.

From my experience, the strategy described in this article is what works the best. Especially for low to medium authoritative domain names.

Each strategy has its pros and cons. If you just want to find content ideas that you can write on and rank for your domain, use my strategy. If you want to build a complex structure with a lot of topics and sub-topics, then use the keywords explorer. Free free to use what you are most comfortable with 🙂


There are many keyword research strategies, but some work better than others. What is really important when you search for content topics or keyword ideas, is to think out of the box, and take into consideration all your user’s needs. Your audience is your bread and butter, without them, you are nothing so take care of them.

Never forget that you are writing for real users, not for a computer machine. Make the users happy, and you will make Google happy.