Trigger Groups in Google Tag Manager. What’s new in this?

Trigger Group is the new update in Google Tag Manager which is present in trigger type and can be added to tags. This interesting feature allows a tag to match multiple trigger conditions by establishing a grouping among those triggers. This won’t fire the tag until every trigger in the group has fired at least once.

This is a unique feature which you will not find in any other tag manager except Google Tag Manager .

Image result for unique animated quotes

So, let’s get this started….

How to create a Trigger Group?

Fire up the Google Tag Manager, the Trigger Group is present within the trigger workflow. To do so, select Triggers from GTM interface, then New and then Choose a trigger type to begin setup option.

Trigger Configuration interface

You will find Trigger Group in the bottom of “Choose trigger type” option.

“Choose trigger type” option

Click on the Trigger Group and you will see the configuration screen.

Trigger Configuration interface

Here you can add multiple triggers based on your business objective.

Note that each and every trigger that you’re adding to Trigger Groups must fire as many times as it appears in the Trigger Group.

Also you can add a single trigger multiple times, but it should fire as many times as it is added to the group for the Trigger Group to work.

Examples of Trigger Groups

Example 1: PDF downloaded and Emailed us

We have setup this trigger for users who have downloaded the PDF from the site and then emailed us. This will fire up as soon as both the conditions are met.

Image result for examples

Example 2: User engagement check

This tag will enable you to find out the user engagement on your website. The combination of scroll depth and time spent triggers can help you do so.

For example this trigger will fire as soon as the user has scrolled 75% of the page and watched 90 seconds of the YouTube video.

Example 3: Wait for the All Pages trigger to fire first

In this Trigger Group, we have All Pages trigger along with the Event trigger. It signifies that the Event trigger will hold no importance until the All Pages trigger has fired.

Example where this cannot work

This trigger will not work in case of multiple pages. You cannot put multiple triggers on different pages, they have to be present on a single page.

Perhaps this idea will be extended further so that we can actually query the history of Data Layer on any given page. And, wild thought, maybe even persist this information across pages, so that a Trigger Group could fire based on multi-page conditions!

As of now it works only on a single page.

Things to keep in mind

  • Trigger Groups can’t be used as an exception since it can only block from firing is itself.
  • It will fire when all the triggers listed within have fired irrespective of the order, it won’t fire again even if the triggers listed within fire again.
  • Trigger Groups don’t replace the grouped triggers. The triggers you add to the group don’t need to be added to any tag at all – they can exists solely for the sake of Trigger Group itself.

I think now we’re pretty much familiarized with the Trigger Groups and will be able to implement them in our business.

If you need help with this, then we are a crazy team of Google and Adobe Certified Analytics Experts who eat, breathe, sleep and dream Analytics. And we’ve made it our purpose and passion to electrify your business’s potential through Analytics.

Contact us here.

Thank You.

How to Install Facebook Pixel through Adobe Launch

Hello, Hope you are doing sensational today. In this post, yours’ truly is going to teach you how to install Facebook pixel through Adobe Launch.

Adobe Launch is great tag management tool. It has certain features which do not exist in any other tag management solution which makes it very easy to deploy any kind of JavaScript based tools.

Now, before commencing the meat of the topic, I am assuming that you have at least basic familiarity with Adobe Launch or any other tag management system.

So *Drums Roll* Lets begin

What is Facebook Pixel?

Image result for facebook pixel

Facebook pixel is an analytics tool that helps in measuring the outcome of your advertising on Facebook by understanding the user activity or navigation on the website.

It helps mainly in conversion tracking, optimization and re-marketing.

From tying conversions back to your Facebook ads to tracking events, actions taken on your site, all of this is done by Facebook pixel.

Why should you use Facebook Pixel?

Facebook is a major social media platform that can drive a great deal of traffic to your website. By using Facebook pixel, you will collect insightful data regarding actions and conversions that result from Facebook traffic.

One of the great things about Facebook Pixel is that it can be implemented on your site in many different ways, and with Adobe Launch there is an inbuilt extension to do just that.

So now, I think you might have got a basic context on the topic and we can go ahead with the process.

Extensions in Adobe Launch

An extension is an integration built by Adobe. If you think of Launch as an operating system, extensions are the apps that you install so Launch can do the things you need it to do.

Adding Extension

Image result for addition meme

Our first step will be to install the Facebook extension in Adobe Launch.

Post extension installation, put the Facebook Pixel ID within the interface of Facebook Pixel extension.

Once the extension has been installed it will show only the configure option like below:

Extensions Interface

The Facebook Pixel window will look like image below. Here you will have to enter your pixel ID which can be generated through Facebook Ads. We already have it in our case.

Click “Save” after adding the ID.

So now, you have configured the Facebook pixel extension. To send Facebook data based on the user behavior on our digital asset, we will need to set rules in Launch which will detect the key user actions and send the data accordingly to Facebook.

Sounds cool? Okay. Let’s move forward and complete this.

Rule Building

Image result for rule quotes

To add a new rule, click on “Rules” from the top banner and select “Add Rule”. This will open up the Create Rule interface.

Create Rule interface

Here put in the Rule Event and Conditions according to your requirements/goals.

For example I don’t want the above pixel to fire on page 2 of the site. So, I’ll put the condition like this.

Now open “Action Configuration” .

In this select Facebook Pixels from Extension and choose Action type based on your objective.

For example I want to select “Send Page View” as my type. This will get fired when my above set condition is met.

In the end Keep Changes and Publish the rule.

Final Saying

You will not see this data in Adobe Analytics, but rather in your Facebook Ads Manager account.

Using Launch you can configure the extension for just one facebook pixel id. If in case you are using multiple Facebook instances, you need to use custom html scripts instead of extensions in Adobe Launch.

If you need help with this, then we are a crazy team of Google and Adobe Certified Analytics Experts who eat, breathe, sleep and dream Analytics. And we’ve made it our purpose and passion to electrify your business’s potential through Analytics.

Contact us here.

Thank you.

Nary_Max?…What is it & Why it’s important

A blog on Nary_Max!

So, I have a simple question……Why do we use Google DataStudio? (Hint….the answer’s not the fact that its free)

Is it to show data and its different visualizations in a beautiful aesthetic format? Yes

Is it to show data  in a more dynamic and organized way, thus helping in analysis and decision making? Yes

But the basic answer for this question is – Reporting. The google data studio is a reporting platform that lets you collate data from all platforms in which you are investing effort (Well, almost all).

It is important to represent that effort properly to see the current performance of the organization, as well as for efficient future decisions. However, let’s face it, sometimes some data just cannot be represented. It may not exist, it may not be gathered, but for that time period, that data value is just that – A null.

And in data studio, if you are using calculated fields to create another metric, one of your unpredictable problems could be that the data with which you are calculating another metric contains null values. And you definitely cannot show a “null” for your organization’s efforts.

So, the question is, how to translate your null value into a 0 (Zero) when calculating another metric?

For doing that, Nary_Max is your go to function!

Meaning & Example

Basically, this function among n variables, that is, among different rows of data, can pick up the maximum data set. This in itself is a useful application of Nary_Max

But we were discussing on how does it help null values, right?

Let’s take an example to explain that.

In the figure shown below,from data studio, there are 2 fields, that is cost and variable cost. In both the cost and the variable cost data there are null values.

Now, there is a requirement to aggregate these fields into a calculated field called total cost. For more information on calculated fields, you can refer to this blog post here

In the calculated field given above, Nary_Max function is used to differentiate between 2 sets of data and use the higher value. The 2 sets of data in this case mean the actual data and 0.

The entire formula used in the above field is: SUM(NARY_MAX(Cost,0))+SUM(NARY_MAX(Variable cost,0))

Therefore, it will differentiate between the values in both the the fields with o. If there is a null value in any one of the fields, then Nary_Max function will use 0, as it is a higher value than null.

The end result comes like this

The total cost now has 0, if the values involved in both the fields are null.

In this way, the main calculated metrics which are observed by the shareholders are calculated even if they have null values in them.

If you need help with this, then we are a crazy team of Google and Adobe Certified Analytics Experts who eat, breathe, sleep and dream Analytics. And we’ve made it our purpose and passion to electrify your business’s potential through Analytics.

Contact us here.

As I am pretty sure, the above image summarizes itself.

Your one and only web analytics Chica here – Garima Mathur

How to capture scroll depth of web page using Google Tag Manager (GTM)?

In this post I’ll cover one of the recent releases for Google Tag Manager, which is setting trigger based on Scroll Depth. I will also provide step by step explanation on how you can implement various tags based on how deep the users usually navigate through your various web pages

Combining scroll depth trigger with Google Analytics can help you analyse till what point are the users usually interacting with content on your website.

It helps you in making some useful decisions for your web page and increase the user interaction by optimizing the content placement, layout and volume.

So, without wasting much of your time in introduction, let’s look at the steps to set a scroll depth based trigger on GTM:

  1. Click Triggers -> New
  2. Click Trigger configuration and choose scroll depth trigger type.

3. After selecting scroll depth trigger type, you’ll see two scroll depth options:

  • Vertical Scroll Depths
  • Horizontal Scroll Depths

You can select both Vertical and Horizontal scroll depth values in same trigger or any one of them as per your requirements.

After selecting the option, you’re required to set the scroll depth values as either percentage of the page height and width, or as Pixels. You can enter more than one values in both the conditions, but values should be positive integer separated by commas.

For example: 10,20,30, etc.

The “Enable this trigger on”option specifies when this trigger should start listening for relevant interactions. Following are the three options available:

  • Container Load (gtm.js) when the page loads, this one occurs the earliest among the three options
  • DOM Ready (gtm.dom) occurs after DOM is ready to be parsed. 2nd in order
  • Window Load (gtm.load) (default): after all initial content on the page has loaded, it occurs. This is last in order

You can select any one from the options as per your requirement or keep it on default, which is window load, if you aren’t sure which one to use for your web page from the options available.

4. Save the trigger.

Next, lets use the sensational GTM debugger and check in Preview & Debug mode if trigger is firing on set thresholds.

Now, lets setup a Google Analytics tag to record the scroll depth in your Analytics account.

Following are the steps to create a new tag for it and get this information in Google Analytics:

  1. Click Tags -> New
  2. Click Tags configuration and select Universal Analytics tag type.

3. Select track type as “Event”.

4. Following image shows a good way to record the scroll depth. Here I have used category as ‘Scroll Tracking’, Action would report the direction of scroll – horizontal/vertical and finally label would report the threshold value resulting in firing of this tag

5. Set non-interaction hit as true. This will affect your bounce rate calculations. Its up to you whether you wish to consider the scrolling a user interaction on the site or not

6. Select Google analytics settings variable as per your property UA – ID

7. Select the firing trigger for it, which was created earlier – the scroll depth trigger.

8. Save the tag and check in Preview & Debug mode, if tag is firing or not.

9. If tag is firing, you can check in GA under real time events report and check if category and actions values are coming properly as you have set them.

Like this you can set various other tags as well apart from Analytics that can change the user experience based on their scrolling depth, like introducing a pop up form etc

Enjoy coffee.

If you need help with this, then we are a crazy team of Google and Adobe Certified Analytics Experts who eat, breathe, sleep and dream Analytics. And we’ve made it our purpose and passion to electrify your business’s potential through Analytics.

Contact us here.

Found it informative? Leave a comment! You can also give us a thumbs up by sharing it with your community. Also did you know that you can light up our day by subscribing to our blog? Subscribe here –

Schedule an e-mail delivery for your existing reports in Google Data Studio

In this post you will learn about, how you can schedule an e-mail delivery of your Data Studio dashboards. This is a recent addition to the Data Studio arsenal making it one notch higher when it comes to data visualization

With this new added feature to the data studio you can easily send the PDF format of the report by just scheduling the e-mail delivery in few simple steps. This will save you a lot of time and improve accessibility of your beautiful dashboards with stakeholders at multiple levels in your organization

So, how can you schedule an e-mail delivery for your reports?

1. View the report you want to schedule.

2. Click on the option “Schedule email delivery” in the upper right corner.

3. Select the date and time you want for the delivery of report to recipients.

4. Set the delivery frequency for the report.

Enjoy coffee.

If you need help with this, then we are a crazy team of Google and Adobe Certified Analytics Experts who eat, breathe, sleep and dream Analytics. And we’ve made it our purpose and passion to electrify your business’s potential through Analytics.

Contact us here.

Found it informative? Leave a comment! You can also give us a thumbs up by sharing it with your community. Also did you know that you can light up our day by subscribing to our blog? Subscribe here –

How to change the font size of axis and data label for charts in Google Data Studio?

In this post you will learn about the recent release in Google Data Studio regarding font size settings of axis and data label of the charts and how you can use it to make your dashboard more aesthetic.

Now you don’t need to put strain on your eyes to see small labels as you can easily change/increase the font size now, all thanks to new release feature of the product.

It will make your dashboards more attractive and can give more value to the elements added to the dashboard.

It is also an important feature as senior management are often particular about the branding of the official content.

Now you’ll further read about how you can change the font size of axis label or data label:

  • Select the chart for which you want to change the font size of axis label or data label
  • Go to the style tab of selected chart
  • See for the “Grid” option under style tab.
  • Now you can see the option to change the font size of axis and
    font size of data label
  • Change it as per your requirement

Enjoy Coffee.

If you need help with this, then we are a crazy team of Google and Adobe Certified Analytics Experts who eat, breathe, sleep and dream Analytics. And we’ve made it our purpose and passion to electrify your business’s potential through Analytics.

Contact us here.

Found it informative? Leave a comment! You can also give us a thumbs up by sharing it with your community. Also did you know that you can light up our day by subscribing to our blog? Subscribe here –

Market Basket Analysis With Google Analytics Data

Market Basket Analysis with Google Analytics Data is one fusions of Digital Analytics and Machine Learning

The data is easily available and it is fairly easy to clean.

In this post I will share steps to present steps on how to do that.

I am starting first with the code and its logic. And later I have briefly covered some theory.

First, getting the data

You can get the Google Analytics data into R by using the googleAnalyticsR package. Grateful to Mark Edmondson and team for creating this.

// if package not already installed then install it 
if(!(require(googleAnalyticsR)))install.packages("googleAnalyticsR") if(!(require(googleAuthR)))install.packages("googleAuthR")

//load the functions of the package

//Login with Google to grant approval to R to access your GA data ga_auth(new_user=T)

//you can replace the above with new_user=F after initial //authentication
//Get the account data structure - Accounts>Properties>Views

Now, in Market Basket Analysis we essentially want to discover how purchase of a set of items affects the purchase of other set of items

For this we need data presenting information on items bought together in various transactions

We will use “ga:productName” and “ga:transactionId” as dimensions to get the products purchased and their respective transaction IDs

We will use “ga:uniquePurchases” as the metric

You also need to provide a date range for this data in “YYYY-MM-DD” format

You need to provide the viewId which you can get from the account structure which we got using the ga_account_list() function above

//provide the view ID from the account structure above 
//provide the start and end data Start="2018-12-01" End="2018-12-31"

Table <- google_analytics(ViewId,date_range = c(Start,End),metrics = c("ga:uniquePurchases"),dimensions = c("ga:productName","ga:transactionId"))

//Remove the entries without product Name
Table<-Table[Table$productName!="(not set)",]

//Remove the entries without any purchases

//Remove any possible duplicates

//Replace unique purchase with 1, we just want the presence of product //in a transaction, we do not want its volume

The present structure of the Table is something like this :

But to perform the Market Basket Analysis using Arules we need the structure to be like this :

The transaction Ids along the rows and each product name along the columns. For this we will use the reshape2 package created by the legendary Hadley Wickham


//Creating a new data frame with the above logic

// Replacing Na values with 0

//Creating a duplicate to take row names

//The apriori function accepts only product entries the transaction..
//..Ids can't be in rows and need to be passed as rownames instead dcast1$transactionId<-NULL

//Free up some RAM

//The Input to the apriori function needs to be of //datatype"transactions"


Now our dataset is ready, we just need to input that to the apriori function from the Arules package. The package has been created by Michael Hahsler and team


//the choice of support and confidence 'll depend of domain knowledge..
//..and business objective
rules = apriori(dcast1, parameter=list(support=0.007, confidence=0.25));

//To view the results in Data Table format you can convert the above

//Convert the Support and confidence columns to %
// We will need scales package for this again by Hadley Wickham


Now, lets look at the result:

We have three terms support, confidence and lift. Lets understand each with the smart art below:

The above presents results for chances of purchase of Milk if Bananas are bought. In general, the you will read the results as chances of purchase of items on Right hand side if items on left hand side are purchased.

I personally like this solution a lot as the data is relatively easily available because of Google Analytics.

It presents quick insights on which items can be clubbed together as bundle.

Which items can be suggested at order confirmation page or through post purchase campaigns.

Which items can be suggested as add on in the purchase journey.

You can get as creative as you want.

Contact us here.

Found it informative? Leave a comment! You can also give us a thumbs up by sharing it with your community. Also did you know that you can light up our day by subscribing to our blog? Subscribe here –

How to enhance Google Adwords and Analytics Integration

Google Adwords and Analytics Integration- What is the objective of the blog post –

In this post you will learn how to customize your Google Adwords and Analytics Integration to link your campaign information to other areas of your site apart from landing page and conversion.

How it makes life easier –

With standard integration, one can analyse the performance of Adwords campaign along with the landing URL in terms of cost, conversion and revenue. But, what if you have other variables in the user journey that you are testing apart from the lander?

By using this customization technique you will be able to analyze how combination of your adword campaigns and other areas of your site are affecting the conversion and analyze the complete picture.

Real life scenario –

Suppose an eCommerce company is using Google Optimize to test its landing pages as well as product details pages.

The company want to see which adwords groups, lander and product page combinations are delivering the best results in terms of order conversions.

For this they create a google sheets dashboard to automate the report for analysis through the Google Analytics Addon like this :

Now, with standard integration the company will not be able to see this entire journey and will miss out on some critical information and they will rather see this ugly error:

But, they don’t need to lose hope. DataVinci to rescue. Lets get cracking.

What is the recipe?

  • 2 custom dimensions sanctioned at session scope (There can be more dimensions depending on the number of variables you are playing with)
  • Custom parameters in landing URL of Google Adwords campaign
  • 3rd Custom dimension to capture the Google Adwords custom parameter. Again, set at session scope

First, enable the custom dimensions from the Google Analytics admin. Name them appropriately and note down their index numbers. Make sure to set their scope at session level.

Next, customize your Google Adwords campaign parameters by passing in any campaign related information that you want to test. Let’s assume this information is ad group and you are passing this in “_adgroup” parameter.

This video tutorial provides the steps to update the custom parameters in Google Adwords :

Now, customize your Google Analytics implementation to capture the data in the respective dimensions.

This video tutorial provides steps to setup Google Analytics custom dimensions through Google Tag Manager.

Now what?

Ok, so when you set a custom dimension to a session scope, the last value that gets passed into it in a session gets associated with all the hits of that session. So, visualize this scenario in your head:

A visitor enters your site from your Google Adwords campaign. You have very smartly passed in custom information through custom url parameters in your landing URL. Your Google Analytics account captures this custom parameter information and stores it in a custom dimension, and since this custom dimension is set at a session scope, all the hits in your visitors sessions can be viewed against this value.

Also, on this landing page, we are capturing the landing URL in another custom dimension set at session scope. That means this information will also be available to be used with other data points captured through out the session.

Next, if the user navigates to the products page, we are capturing the version of the product page url as well and that too again in the session scope.

Now we have the three important dimensions which we want to see together broken down by the conversion metrics to make a decision. And this is how the report will look now:

Through the above minimal setup, the eCommerce company can clearly analyze which combinations are working better than others and push them to the broader audience.


Hope you liked this post on customizing your Google Adwords and Analytics Integration

How can we people?

Google Analytics is a very powerful tool when setup correctly. It can be customized to great extents and provide sensational insights to optimize your digital assets.

If you need help with this, then we are a crazy team of Google and Adobe Certified Analytics Experts who eat, breathe, sleep and dream Analytics. And we’ve made it our purpose and passion to electrify your business’s potential through Analytics.

Contact us here.

Found it informative? Leave a comment! You can also give us a thumbs up by sharing it with your community. Also did you know that you can light up our day by subscribing to our blog? Subscribe here –

What is an affiliate website

Have you been researching affiliate marketing? Maybe you’ve heard it’s a great way to make money online and are interested to learn more about what is an affiliate website.

Or maybe you want to know how you can make your own income producing affiliate website today.

People want to know about affiliate marketing and how it works.

Why is this a hot topic?

Because affiliate websites can make you a ton of money.

And the majority of affiliate marketing programs require that you have your own website in order to join their affiliate network.

Another major perk to creating an affiliate website is that it is a very inexpensive business to start up.

You can look at the cost difference between an affiliate business and a traditional “brick and mortar” business right here.

You’ll see two major differences between these two business models.

Most notably, the cost of start-up and the implied risk.

We’re talking under $500 to $1,000 dollars for the first year of an affiliate website business verses $10,000 to $100,000 dollars for a traditional business.

With an affiliate website business, your risk is low and your earning potential is quite high.

Now there are a good amount of factors that go into making a successful affiliate website (and I’ll discuss this later below) but if you can imagine the potential in affiliate marketing, then you’re halfway there.

In today’s post, we’ll discuss:

  • The benefits to owning your own affiliate website.
  • What it takes to create a successful online business.
  • And give you a step-by-step guide to create your own successful affiliate website.

What Is An Affiliate Website Exactly?

An affiliate website is any website or blog that utilizes affiliate marketing techniques.

So what does that mean?

What Is An Affiliate Website photo

Well, any website with advertisement banners is a form of affiliate advertising.

Also, text links.

Whenever you see a link that takes you to a website where you can purchase a product or service, again, is another style of affiliate marketing.

Affiliate marketing is performance based advertising.

In other words, an affiliate website will only receive a commission if the visitor they send goes on and makes a purchase.

So for example, you click on a link from one of your favorite blogs or websites and that link sends you off to say…Amazon.

Or any eCommerce website for that matter where you can purchase…

  • Products
  • Services
  • Educational Classes, etc.

Then if you buy something from Amazon, the affiliate site would earn a commission from whatever products you purchase.

In affiliate marketing, there are four players.

1). The Merchant – The person providing the product or service. In our example above, this would be Amazon.

2). The Affiliate Network – Contains the products from the merchant or a series of merchants.

They also handle the payments and sales commissions. Again in our example, this would be a subsidiary company of Amazon, called Amazon Associates Program.

3). The Publisher – This would be the website owner who is publishing the content to market the product. If you look at my article, Does Amazon Sell Fake Products, and click on my Amazon link for the most popular computers, then go to Amazon and buy a computer, I would be the Publisher in this example who receives the Amazon commission.

4). The Customer – This would be the website visitor that clicks on the Publisher advertisement and then is taken to the sales page of the Merchant.

If you clicked my link above and bought something from Amazon, then you’d be the customer.

Affiliate marketing websites use tracking links and banners throughout their websites to market products.

If the website sees a lot of traffic, that means more potential customers which equates to higher potential sales and increased revenue for you.

Building affiliate websites is an art form. It’s far more than just throwing up a bunch of banner ads and affiliate links throughout your website.

Hope this was helpful.

Subscribe to our blog to receive regular content like this.