How to do keyword research that takes user intent into consideration

  • Sara Moccand-Sayegh

If you are here, then you probably are looking to understand why you need keyword research for SEO.

Learn more about our SEO service.

Keyword research is the starting point of every on-page strategy. Good keyword research will help businesses increase traffic & ultimately conversion.

Discover what our agency can also do for you in regard to On-page SEO & local SEO

What is a keyword from the SEO point of view?

A user will type a search query into Google, for example “wedding decoration ideas”, and Google will present the best possible results taking into consideration the search intent, location & various other factors.

Keywords or key phrases are the words or phrases that you want to place in your text to allow Google to understand the context & that “match” the user’s search.

Why is user intent important for SEO?

Behind every search query there is an intent, and Google is smart enough to recognize user intent. As a result, Google will display the most relevant results based on user intent.

4 stages of user intent:

  1. Informational search query
    In the informational search query “stage”, the user is trying to gather more information about a particular topic or product. For example, if somebody inputs “wedding decoration ideas”, they are looking for ideas. They are not looking to buy anything.
informational search query example with the keyword wedding decoration ideas

Informational search queries are interesting as Google proposes a large array of knowledge graphs & feature snippets. This could be one reason that working on your SEO for informational queries could be beneficial.

  1. Navigational search query

When people type a brand, then this is a navigational search query. For instance, if somebody types “Liip” in Google, they are looking for the web agency I work for. Same for a flower shop that sells wedding flowers.

  1. Commercial investigation

From a sales funnel point of view, commercial investigations are interesting as people are looking to make a purchase, but at the same time they are still looking for information. If we keep our example of somebody looking for wedding flowers, that person will probably type into Google “best wedding florist” or “best wedding flowers for September”.

  1. Transactional

A transactional query has a commercial intent. For instance, a user that types “buy wedding flowers + city” is clearly looking to buy wedding flowers.

To sum up, when thinking about search intent you need to keep in mind:

  • Informational intent is the beginning of the funnel & transactional intent is the end of the funnel.
  • The wording used by users in the search query is very important in classifying them & understanding their intent.

The image below is taken from the Ahref blog post on user intent. It summarizes user wording by dividing it based on the user intent.

table showing wording used to show user intent

Apart from the four search queries mentioned, as explained in the second edition of the book “The art of SEO”, it’s important to take into consideration that “search engines also look at sequences of search queries to determine intent”.

Now that search intent and the importance of it is clear, let’s focus on how to do keyword research that takes into consideration search intent.

Tools I use for keyword research

KWFinder by Mangools → Provides, ideas, volume & Keyword difficulty score
Mergewords → Provides all combinations of seeds
Search Console → Provides ideas

If you are looking for a free alternative to Mangools you can also use ubersuggest by Neil Patel.

For the purpose of this exercise, know that the topic we want to rank for is wedding flowers

Step 0: Find keyword Ideas. You need to start somewhere.

How to find ideas:
The first thing to do is to discuss with the expert in the domain (sales) & ask for a list of keywords. Sales will give you very specific & generic keywords. List the very generic keywords & the very specific ones in a different file. In this step, your goal is to create a generic list. You will get more specific during the other steps.

The list could start like this:

“wedding flowers” → Generic term
“wedding flower arrangement” → Less generic but still generic
“wedding flowers + city” → Not generic at all but I like to always add a location in my initial list. Especially for a local business

Step 1: Use keyword research tools to generate ideas

In this phase, we start using tools to generate ideas.

  1. One of the words in the list above is “wedding flowers”
  2. We use a tool called KWFinder to generate ideas related to “wedding flowers”

As we can see from the below image, I used the term “wedding flower” to generate ideas, I selected the country & the language.
Once you are done, you have a list of keyword suggestions as in the image below.

example of results from a Keyword research tool
  1. Next, we select all relevant keywords & export them in an xls or Google doc file.

Step 2: Identify keywords with similar topics

Once you have a list of ideas, start coloring the words that have elements in common. For instance, in the file we created I can see the following connections:
Main topic (“wedding flowers”) --> yellow
accessories (Wedding table decoration, Wedding bouquets) --> violet
online purchase --> light blue
cost-centric --> green

example of common topics between words

You can get more granular than I did. For instance, in accessories you can separate Wedding table decoration & Wedding bouquets into two different categories, but for the purpose of the blog post, we can keep them together.

This will help you better understand which topics people are looking for. Once you have a list of topics, then you can start the 3rd phase - Seeds

Step 3: Create a list of seeds

As observed during the second step, one of the topics related to wedding flowers is cost (cost-centric --> green in the image above). Therefore, all the words related to cost will be classified under "cost".

example of words that have something in common

If we take into consideration the example of cost, then we will try to find all possible words that are related to cost. For each topic or category, use a dictionary of synonyms & antonyms & also look online. Find everything related to the word cost and add it to the column. Next, do the same for all topics you find.

Step 4: Define patterns

You must combine the "seed" of each category to define patterns to test. It is also advisable to invert the seeds in order to see which is the best "pattern".

example of how seed could be combined to create patterns

In the example of wedding flowers, you could combine:

Try all possible combinations of patterns. Obviously, if something really doesn’t make sense in the language you are testing, do not write it down. For instance, the pattern doesn’t make sense for a wedding flower page so I wouldn't write it down.

Step 5: Test patterns

  1. First, start by using to combine seeds and find all possible combinations. E.g.: --> “wedding bouquet price”
tool mergewords that helps to merge words
  1. Use KWFinder (or another tool) to search the monthly volume, CPC and the "difficulty score"
  2. Open your google or xls file where you have all the seed and pattern information. create a new page and give it the name of the pattern you are analyzing. Next, import the data you got from keyword finder.
data coming from kw research tool, showing volume & keyword difficulty score

Step 6: For each pattern, select the user intent

Example of user intent behind each pattern

Step 7: Select best patterns

  1. For each pattern, it’s important to analyze the volume and the keyword difficulty score to decide whether or not to keep it. E.g: general-accessories-cost vs cost-general-accessories


pattern that you wish to keep


Why is cost-general-accessories a bad pattern?

  • Just one keyword

  • Google interprets it in the same way: cheap centerpiece wedding = centerpiece wedding cheap

    If we have to choose between two very similar patterns we take the one that makes the most sense. In the previous example it was general-accessories-cost

  1. Why I eliminated the pattern general-accessories-decoration:
  • Although the volume for the keyword “wedding table decoration” is interesting, the KD for the keyword is high

  • As we can see from Google, the keyword “wedding table decoration” is informational and the goal of the flower shop website is to sell wedding flowers. So we are building a product page for transactional queries.

I selected in red the patterns that I do not want to keep

Once you have decided which pattern to keep, it’s time to choose your primary keyword for the pattern.

For example, as we can see from the image below for the pattern "general-accessories-cost" “wedding bouquet price” has an interesting search volume and at the same time the Keyword Difficulty score (KD) is relatively low. So it will not be difficult to rank from the SEO point of view. As a result, I would select “wedding bouquet price” as a primary keyword for that pattern

Step 8: Keyword mapping

Once you have a list of keywords and the pattern you want to keep, you need to decide where to introduce them on the website. If there is no appropriate page, then create a specific page for it.


Analyze competitors: when you are starting with the ideas, check which keywords your competitors are using. Moreover, if at the end of the analysis you have selected a keyword that none of your competitors is using, it’s highly possible that you misunderstood the way the keyword should be used. So check on Google.
In the first phase, when you are searching for ideas, you can also check where you already rank with the search console.

What next?

It’s not enough to carry out keyword research, you need to track progress. For this reason, it’s important to use a tool such as SEMrush, AWR or other tracking tools to see if your ranking has improved for a specific keyword.

Although keyword research is the base of on-page SEO, it is time consuming. If you do not have the time to apply the above methodology, do not hesitate to contact our SEO team:
English, German and French

Tell us what you think