How can I Count Instances of Search Terms in Google Data Studio? - google-analytics

I'm working with internal site search terms from Google Analytics in Google Data Studio. I need to count how many times users searched specific terms on the website. The problem is, the data is case sensitive and users often misspell words when they search, so that won't get tallied in a normal count function. For example, "careers", "Careers", "cAREERS", and "carers" are all different searches. What formula can I use to easily count how many times users searched different terms?

First add a field with the formula LOWER. Then add a field with case when to correct each possible spelling errors.
Another route would be to create a "sounds like" field. Here BigQuery give a nice function SOUNDEX. Data Studio does not offer somthing like that, but you can build a function with reg_exs so that: first character of word and then only the vocals of the word, but remove duplicated vocals first.

Related

Is there a way to consolidate event actions from a custom search page?

We operate knowledge widget on our website where users can search for keywords and get knowledge about a wide array of topics. We track these searches in Google Analytics via an event category, which makes the search queries event actions.
Not surprisingly, we face two issues:
Users spell the same query in different ways (e.g. typos, singular/plural, with/without article, etc.)
Users sometimes formulate search phrases as a single word, and sometimes as a complete or partial sentence (e.g. "item", "what about item", "give me details about item", etc.)
Is there a way to consolidate these very different event actions into one? Right now, we have results like this:
item: 20 searches
itme: 3 searches
about item: 8 searches
the item: 9 searches
items: 12 searches
give me details about item: 1 search
what about item: 1 search
etc.
The goal is to just have:
item: 54 searches
Is there a way (within or separate from GA) to make this happen?
Thanks for your support!
You could use search-and-replace filters to fine-tune the data in your Analytics views (not for historical data): https://support.google.com/analytics/answer/1034834?hl=en
Anyway, you can filter in the report filter with a regex (i.e item|itme|etc...), to combine all the cases, and read the value of the first row or the total.
You can also export the data to an Excel/Spreadsheet and do this work separately.

Bing Custom Search - sort/order by file modification date

I have been asked by a client to see if Bing Custom Search can order results containing links to PDFs by file modification date.
I know results can be ordered by the date the content was indexed (or re-indexed), but they are concerned with the actual age of PDF files as determined by the filesystem timestamp, and want to order the results by that criteria.
I could not find anything in the Azure documentation, and personally I don't believe it is possible, but I wanted to check in with SO first.
I don't believe this specific scenario is currently supported at the time. But if this is a feature you would like to see supported in the future, you may leave your feedback on Uservoice.

How to analyze multiple query parameters in Google Analytics

I'm setting up Google Analytics for a website where a user can find an event to attend (concerts, plays, etc.). The results can be filtered by 5 different parameters.
So, unfiltered results would look like: example.com/event-finder/
And filtered results showing concerts in January or February would look like: example.com/event-finder?type=concert&month=jan,feb
I'm struggling to figure out the best way to use the query parameters in Google Analytics to analyze filtering behavior.
Example questions I'd want to be able to pull answers for:
What percentage of results were filtered by type?
What percentage of results were also sorted by month?
What is the most common type filtered by?
I have full access to both Google Analytics and Tag Manager but I suspect I shouldn't do this with events or custom dimensions and that there's got to be a way to use the query parameters to do this in a clean way.
I've tried to use a new view and site search to group the types of filters. Seems like it could work, but seems hacky and limited.
I've considered pushing those values into custom dimensions, but that too seems like overkill.
I've considered pulling content reports into Google Sheets and sorting through things there, but I'm 1) not entirely sure how I'd do that and 2) suspect there may be an easier approach.
Let me know if you have any questions or need more clarification. Thanks!
Have you tried to use "category parameters" when configuring site search (admin -> view settings)? You could set the "type" as a category parameter. You can also enter multiple parameters in there.
Check this screenshot of site search configuration

Bing Search with market return strange result

I have a strange behaviour with Bing Web Search.
I have a search query "hawkers" OR "hawkersco" OR "#hawkersco" OR "#hawkers" OR "www.hawkersco.com" with market = 'es-ES', safeSearch = Strict and responseFilter = webPages.
So, I expect, that result will contain at least one of these words and it will be Spanish posts. In fact I get more of posts in English and its not contain these keywords...
If I try search one by one these keywords, without OR operator, I had expected Spanish posts.
Please, explain why it is? How to use search query for get expected results?..
Check the specification for Bing Web Search API. Possibly this might be as simple as changing market to mkt(since you listed all the other parameters as used). And that means you should have a value for setLang as well.
You're not getting Spanish posts at all?
In that case, see here.
Bing results are based on relevance. Regardless of Market or Language.
If the result is deemed relevant. It will rank higher compared to the
selected language, and appear in the results.
Freshness affects the results, in that you need relevant(popular)
sites in your language. For them to attain sufficient relevance in the
selected time period.
You cannot rely on Bing returning a single language exclusively, with
the settings as they are.

Google Analytics API: Creating arbitrary "dimensions" to group metrics

I have a requirement to programmatically get unique visitors grouped by partial matches on some fields. For example, assume I want to group my users by the source domain like "google" or "facebook".
A single user's visits might come in with a ga:source of "m.facebook.com" and then "www.facebook.com" on another visit, or "m.google.com" and "www.google.co.uk", etc. I can perform an API query specifying "ga:source" as the dimension, and it will give me the unique visitors for "m.facebook.com", "www.facebook.com", "m.google.com" and "www.google.co.uk" respectively. However users who visited via more than one of them in the requested period are counted in each group, so aggregating this data subsequently into "facebook" and "google" groups results in duplicate users being counted.
Would it be possible to group the "ga:source" dimension using a Regex (^(?:.*?\.)(.*?)(?:\..*) for instance) or some similar arbitrary mechanism so that I can get two groups of unique visitors instead: "facebook" and "google"?
I can of course, use filters to get each category and then perform multiple requests and that works fine, but being the lazy programmer I am, I was wondering if I could do it all in one go, or if anyone had alternative suggestions I haven't thought of.
The conclusion appears to be that the only way is indeed to submit a filtered query for each desired grouping of unique users. So I shall do that. :)

Resources