In this tutorial, you will learn why breaking down traffic into branded and non-branded matters for analyzing your SEO efforts, how to do it, and a free Google Data Studio template that will save you a ton of time.
Why analyzing branded and non-branded searches matter
Should branded searches count in your SEO efforts?
I mean, if you get traffic on your website through Google searches users do that include your brand in their query, is it a result of your Search Engine Optimizations efforts?
Technically, yes, they do.
SEO is about increasing website traffic quantity and quality through search engine results.
Yet, how much does your SEO strategy influence these searches?
Unless your brand name is generic or commonly used—like being named “Data” or “Pets”—ranking on the first page of Google with this kind of queries shouldn’t be that hard.
The type of users that land on your websites after performing these searches have an intent for your company or product; they know you already.
Maybe they know you because they’re frequent customers, or someone told them about you, your brand was featured in a major site recently, or you went viral somehow.
Whatever the acquisition channel is, SEO wasn’t part of that success, but everything you do for brand awareness and positioning.
While traffic that comes from discovery, non-branded searches—i.e., when somebody searches the products your offer, but they don’t search your brand specifically—is directly attributed to SEO, branded searches traffic are a function of branding.
If you’re still confused about how to think of branded and non-branded searches, this table should help:
|Tesla newest models|
Tesla vs Toyota
Are Tesla cars the best?
|Electric cars brands|
Cars on sale
How to choose an electric car
As another example, if your company is featured in the WSJ or the NYT, chances are your brand will resonate, and some people will search it on Google.
While Google Analytics will report all this traffic as “Organic”, the actual acquisition channel is PR.
You should analyze the organic traffic that comes from branded and non-branded searches separately, but Google Search Console doesn’t come with any dimension to perform such query or break down.
But Google Data Studio lets us create such dimensions through Regular Expressions and CASE statements.
Let’s get started.
This is a step-by-step guide that anyone can follow, but it would be better to have basic knowledge of Google Data Studio.
You should create a Google Data Studio account (free).
Then, create a report and connect your Google Search Console account to it.
I will share with you to handy guides to do it if it’s your first time.
- Installing Google Search Console templates on Google Data Studio
- Connect Google Search Console to Google Data Studio – Google documentation
Google Data Studio report setup
Go to Google Data Studio and create a new report.
Then, choose Google Search Console as your data source.
Select the website you want to report on. You will be also asked to choose between two tables: Site impression and URL impression.
Basically, site impression shows site average position per keyword and URL impression shows landing pages break down.
For this analysis, I’d suggest you to pick Site impression, and click Add located down left.
Once you’re on the Google Data Studio report, we will create a table by going to Insert and choose Table.
Choose Query as dimension and Impressions and Clicks as metrics.
In this example, I can see the queries that drive most traffic from Google searches on my site (it’s in Spanish, by the way).
For this exercise, I will say that our brand name is “promociones” because Porter doesn’t have enough brand searches :(.
As you can see, there are many queries that contain the keyword “promociones”, but how much of our traffic site contains such brand name?
We will create a new dimension to visualize clicks and impressions with a branded searches break down.
Go to Add a dimension and click on .
Before doing our query, I will explain you how it will work.
I want Google Data Studio to create a field that tags every query as Branded or Non-branded if it contains the word promociones anywhere in the string.
We need to translate this requirement to SQL and we will use a Regular Expression or REGEX. Don’t worry, for this example I got you covered, but if you want to become a data analyst, you should learn them.
We will copy and paste the following command in the canvas.
WHEN REGEXP_MATCH(Query, ‘.*promociones.*‘) THEN “Branded”
You will replace promociones with your brand name*
I will explain you what this command represents:
We always use CASE to tell Google Data Studio or SQL to state a conditional just as WHEN this happens, then do that; If the condition doesn’t apply do something ELSE, and END the query.
This is how its basic structure looks like:
You can use a WHEN for each line to declare multiple conditions. These commands are not case sensitive, but I always type them as upper case as a good practice to distinguish them from other values.
Now we will run our first regular expression!
Regular Expressions (or REGEX) are a set of characters that work as commands to define a query that you perform on a string.
For instance, if you want to find the words of a string after the second “A” and it must be an upper case when doing a specific analysis, you would need a regular expression so the software can understand such a requirement.
For this example, we will use REGEXP_MATVH because we want to tag as Branded all the queries that contain the word promociones.
Let’s go back to our query:
Let’s see what this query represents:
- We will search on the values of the dimension Query
- The REGEX ‘.*promociones.*’ indicates that “promociones” can be located in any part of the string. The characters .* are maybe the most common ones when using REGEX as they indicate to start searching from the beginning of a string, and if placed in the end, from the end of a string. When used in both the beginning and the end, we’re telling the regular expression to look anywhere, in any order for the condition.
- We use THEN to express a result we want to get if a condition is fulfilled. In this case, we will tag as Branded all queries that contain promociones.
- And we use ELSE to set a specific value if no condition is met. In this case, it’s non-branded.
- We named our new dimension as Search type.
Now, let’s test our new dimension in a chart:
Yet, there are variations of queries like “promocion” that technically don’t match our rule, but should be counted as branded.
While this is just an example, it may be common for your brand to misspelled or has multiple brand names.
Let’s fix that.
You may adjust the regex we did to apply multiple variations.
We want to set as branded all queries that contain promociones, but also promocion.
This is how it’s expressed on Data Studio.
Copy and paste this formula:
when REGEXP_MATCH(Query,'(i?)promociones.* (i?)promocion.*’) THEN “Branded”
ELSE “Non branded”
The formula works pretty much the same. The difference is the vertical bar (|), which represents OR, and then another regular expression that matches promocion.
You can use as many OR as needed to add different queries variations that you may consider as “branded”.
Branded vs non-branded searches Google Data Studio template
We built a template to speed up your report setup. Hope you enjoy it!