:::: MENU ::::

Real Estate SEO: Queries Segmentation in Data Studio

As I mentioned in the previous article on Data Studio SEO Dashboard, one advantage of Data Studio is that it allows you to personalize your existing data with custom dimensions and segment the data based on them. This is where the real power of Data Studio starts to show.

The inspiration for this model is this great article by Lee Hurst (in fact, this is the article that has shown me the beauty and flexibility of Data Studio and motivated me on creating my own SEO Dashboards). Because for almost a decade my freelancing practice had a major part of Real Estate SEO (United States/ Canada/ Dubai /Romania), this was the vertical where I first saw the opportunity to use this model of query segmentation in my SEO reporting process.

Data Studio Dashboard for Real Estate SEO

The Real Estate SEO Data Studio Dashboard included in this article pulls anonymized data from a real estate client. I have cleaned up the queries in order to increase the anonymization and here is the description of the case:

“Data comes from a real estate agency that deals with both rental and property sales. They operate in an area with 3 neighborhoods and the properties they are handling are apartments, villas, and townhouses.”

See the interactive dashboard here

How to create  this Real Estate SEO Dashboard

The data we are going to use in this dashboard is from Search Console (Site). Based on our case characteristics, we need 3 custom dimensions (and an optional one):

  • Property Type
  • Transaction Type
  • Area Type
  • (optional) Number of Keywords

Property Type Code

When REGEXP_MATCH( Query, ".*apart.*") then "Apartaments"
When REGEXP_MATCH( Query, ".*villa.*") then "Villas"
When REGEXP_MATCH( Query, ".*townhouse.*") then "Townhouses"
Else "Other"

Personalize this code by adding after line 4 as many properties types you have on your site.

Transaction Type Code

When REGEXP_MATCH( Query, ".*rent.*") then "To Rent"
When REGEXP_MATCH( Query, ".*sale.*") then "To Sale"
Else "Other"

Paste this as it is as there are only 2 types of transactions.

Area Type Code

When REGEXP_MATCH( Query, ".*XXX.*") then "area 1"
When REGEXP_MATCH( Query, ".*YYY.*") then "area 2"
When REGEXP_MATCH( Query, ".*ZZZ*") then "area 3"
Else "Other"

Personalize this by adding all the areas you cover on your website

Number of words Code

When REGEXP_MATCH( Query, "^[^ *]+$") then "1 Word"
When REGEXP_MATCH( Query, "^([^ .]+[ ][^ .]+)$") then "2 Words"
When REGEXP_MATCH( Query, "^([^\\s.]+ [^\\s.]+ [^\\s.]+)$") then "3 Words"
When REGEXP_MATCH( Query, "^([^\\s.]+ [^\\s.]+ [^\\s.]+ .+)$") then "4 Words+"
Else "Other"

Paste this as it is. Code has been kindly provided by Sergiu.

Real Estate SEO Dashboard implementation

Now, for the final step, we need to add these newly created dimensions to our report. For the best results, I do the following:

  1. Add a bar chart for each dimension
  2. Use impressions as the main metric (to sort the chart by your market visibility no matter what metric is selected)
  3. In the style tab of the chart, for Left Y-Axis check “Show axis title”. This way, when other optional metrics are selected you always know what you are looking at.
  4. Turn on optional metrics and add the remaining metrics (clicks/average position/CTR). This allows for in-depth SEP performance audit
  5. Sort: Impressions. This shows by default your market visibility but also when other metrics are selected you can quickly identify potential issues or opportunities. That means that when, for example, clicks are selected and the bigger bars are on the right side, you have growth potential for the left side bars.
  6. For each bar chart, create a filter to exclude “Other”. Keep in mind that each bar chart shows only a percent of the total queries/impressions and showing “Other” will decrease the visibility of the important bars.
  7. In the date range section, I always choose the last month option (after all this is part of a larger monthly SEO Report)
  8. In the interactions sections, check “Apply filter”

Now you are all set and ready to get both SEO and Business insights provided for free by Google Search Console

How to use this Real Estate SEO Dashboard

Using this analysis model, we will be able to answer simple questions without any interaction with the bar charts:

  • Which type of transaction drives more traffic?
  • What is the order of the property type by volume of impressions?
  • Which area is the most popular?

Using multiple selects we can answer complex questions like:

  • Which area is the most important for apartment sales?
  • In which area is the highest interest for villas?
  • In Area 3, what transactions are the most searched?

Each of the above examples can be further segmented using the number of words in a query (1, 2, 3, and more than 4).

Each selection (single or multiple) also outputs on the right side (not included in the demo) the keywords that belong to that selection for further analysis or sharing with other marketing channels. 

After we do our desired segmentation, we can also see the graphic trends of the four Search Console metrics (clicks/impressions/average position and site CTR) for the past 15 months.

Other Applications of Search Console Queries Segmentation

Real Estate Keyword Research

This applies to sites with some history (more than 12 months, optimally more than 24 months). Assuming that you have done your job well from an SEO point of view, you should have a better market overview than any other keyword tool can offer. One aspect that is not often talked about is the fact that once you are on the first-page*, the number of impressions is as accurate as you can get. This is demonstrated by the fact that 2 sites on the first page, for the same query, will have the exact number of impressions. 

I always use this model to identify keywords to track for ranking. I usually use 3 sets of keywords based on intent (Sale/Rent/Generic), each one with 50 keywords. Generic keywords are those with no clear intent (real estate agency/apartments [area] etc.)

*Being on the first page doesn’t mean only a rank from 1 to 10. You need to have a large number of impressions, too. This is to make sure that you are not counting personalized results.

Identify Real Estate SEO Weaknesses

A general overview of the metrics will easily bury your weaknesses. This analysis model allows you to quickly spot clusters (single or multiple selects) that require your attention. I recommend for real estate SEO an audit of the most important segments at least once every 4 months.

Identify granular seasonality in Real Estate

Making any selection (single or combined) will give you a historical overview of the selection. This allows you, as a Real Estate Business, to schedule internal resources based on upcoming highs and lows

Give data to other Marketing Channels

Outputs from the above 2 applications of the model can be shared with other marketing departments/specialists:

  • Identified low position keywords can be compensated with Google Search Ads
  • Identified seasonality can be used in scheduling Facebook Ads
  • Specific seasonalities can be used on content marketing calendars

Real-life example

This kind of analysis is not exclusively for SEO purposes. It also can be used for business analysis. One example that stuck in my mind: The first time I have shown the model to a client, he observed a high volume of impressions (high interest) in an area that he neglected for prospecting. As such, more real estate agents were allocated to that area to identify more properties.

Other usages

Other industries

Real Estate is a vertical where this analysis model is perfectly suitable, and with little effort, a high percentage of the keywords can be easily classified. 

Other industries that use the same model (personalized with proper categories) are for example:

  • Fashion (segment by gender/clothing type/season/discounts)
  • Travel (segment by destinations/hospitality type)
  • Niche eCommerce (not generalist). This usually implies a limited number of categories/subcategories

As a negative example (a vertical where this model has limited value) could be a general news website or a personal blog. In those cases, the semantic is way too fluid and complex to be classified in fixed clusters

Reduce “Others”

Whenever I start a new project, I start by creating its associated SEO Dashboards (Spreadsheet/Data Studio). On the queries segmentation sheet, my workflow is as follows:

  • Start with zero clusters (obviously)
  • Sort keywords by impressions and try to identify patterns among the first 100 results
  • Once a pattern and its associated root sequence are identified, the next step is their validation. For that, I use the search element to find all the keywords containing the root. 
  • A set of questions is used to see if the pattern is valid or not:
    • Are the numbers large enough? (over 5-10%)
    • Are the extracted keywords connected? For example, on one tech company that produces software for the automotive industry, I used “auto” as root. This was far from optimal as the company also offered software testing and “automated testing” keywords also were caught. As such, the root changed from “auto” to “automo”
    • Can the identified pattern be grouped with another to form a mixed cluster? In the above example, “automo” and “car” are used together in the Automotive group
  • Each time I consider a pattern valid I add it immediately. This allows me to go back to the “Other” keywords and try to reduce them furthermore. If the sites semantic is somehow well structured, the volume of “Other” Keywords should be below 20% in the end.

Identify questions from the users

As I mentioned at the beginning of the article, this is the article if you want to find out more about this topic (it also includes a step by step video)

Final conclusions

While based on a particular vertical (Real Estate), this analysis model can be easily added to any other SEO Dashboard to guide both your SEO activities but also to give you business insights. If you apply it in other verticals, let me know what insights you got and if you see further improvements to the model.


  • Tobias |

    How about adding a bar chart for the number of bedrooms? What would be the code for that?

  • Razvan Antonescu |

    @Tobias: Indeed number of bedrooms (or rooms in other countries) is recommended. Just create a new dimension and use:
    When REGEXP_MATCH( Query, “.*1 bedr.*”) then “1 bedroom”

  • Elijah Pruitt |

    I’m always very appreciative for shared information. It will definitely be beneficial to me on my Digital marketing journey.

So, what do you think ?