Concepts / Getting insights and analytics / Segmenting your analytics data
Sep. 26, 2019

Segmenting Your Analytics Data

Although unprocessed analytics data provides meaningful information, it is important to remember that searches to your site have a variety of sources: different countries, different platforms, different languages, etc. These unique sources contain valuable information that can be lost when your analytics data is averaged out across all your users.

To view analytics data for subsets of your searches, you need to assign category labels to your users’ searches. These labels are assigned through the analyticsTags search parameter. Analytics tags are passed with a user’s query at search time. They allow you to separate your search data into subsets that can help clarify:

  • User behavior.
  • The effectiveness of your search implementation.

Why you should segment your data

Let’s say you go on the analytics page of the dashboard and see that your No results rate is 20%. This is higher than you want it to be: one in five searches performed on your site returns no results. Because this is not a dramatically high, you assume something small is wrong with your index configuration. However, what if the underlying cause of your high, no results rate is the following: every search made through your mobile site returns no results and mobile searches consist of 20% of searches made to your application.

Your analytics data, as a whole, tells you that your no results rate is slightly bad. While this is true, what is causing your low, no results rate is not a small error in your implementation, but rather a big error that impacts a relatively small subset of your users. Without segmenting your analytics data this cause is not immediately clear. If there was a way to parse your analytics data into mobile users and non-mobile users, you could draw meaningful conclusions quickly: your mobile search implementation is broken, while your index is excellently configured.

You might argue that you could find the error quickly by looking through no result searches, or that you would catch a significant error in testing. Although these are both fair conclusions, they miss the important underlying point: averaged data can hide outliers and obscure meaningful information.

What are analytics tags?

Analytics tags are strings that you pass with your user’s queries that categorize and detail their searches. You can pass any string as an analytics tag, but you should pass the same tag for searches that share the same search environment. For example, you could pass the mobile analytics tag for all searches that originate from mobile phones. Additionally, you can apply multiple analytics tags to any search.

It’s important to note that Analytics Tags let you view more than just out-of-box analytics for a subset of your analytics data. They can also be used with click and conversion analytics which we’ll cover in the next section of the docs.

What should you tag?

You should use analytics tags to group similar search environments.

To get you thinking about the potential use cases for Analytics Tags, consider the following variables:

  • Mobile vs. Desktop
  • Data retrieved from a user’s account (age, gender)
  • First-time user vs. recurring user
  • Search language
  • Country of origin

When deciding on the variables you want to use as analytics tags, make sure you consider the following:

  1. Your analytics tag must not be overly specific. This will lead to a small sample size and therefore ineffective data.
    • for example, if you make analytics tags for every possible birthyear, your data will likely be spread thin because there are too many possible values.
  2. You must be able to find the information you are trying to pass as an analytics tag at search time.
    • for example, if you want to use your user’s age as an analytics tag, your users must provide it in a way that is accessible at search time.

Implementing analytics tags

Once you find a variable you want to use for analytics tags, you have to conditionally assign your tag to searches. This should be managed in the back-end of your applications. To clarify the process, let’s take an example: suppose you want to add analytics tags for searches in different languages.

Finding segmentation variable

Let’s assume your site has a Pick your language drop-down that lets your user select the language of your site. You can use this element to assign a language analytics tag. For every search, pass the language tag related to the value your user has selected from the drop-down.

Interpreting results

Analytics data reveals problems, but doesn’t necessarily provide solutions. It is important to carefully consider the implications of your analytics data. You should combine the data with user and software tests to make sure that your conclusions (and in turn your solutions) are sound.

Continuing the example above, suppose that you view your analytics data with the German Language analytics tag applied. You notice that this subset of your users has a very low conversion rate and hypothesize that the German translation of your catalogue is bad. While this is a good guess, you can’t know if it is correct if you don’t talk to your users and actively check the quality of your translation. Testing helps ensure that the changes you apply to your search implementation address the problems revealed by your analytics data.

Viewing your segmented analytics data

You can view the analytics data associated with a certain tag by entering its name in the Tags input box of the dashboard’s Analytics tab. Note, for now you can’t input multiple tags.

Location of the analytics tags input box on the the dashboard

To get an overview of the features and metrics of the Analytics tab, check out the analytics metrics and reports section.

Did you find this page helpful?