Trending February 2024 # Activecampaign Event Tracking With Google Tag Manager # Suggested March 2024 # Top 9 Popular

You are reading the article Activecampaign Event Tracking With Google Tag Manager updated in February 2024 on the website We hope that the information we have shared is helpful to you. If you find the content interesting and meaningful, please share it with your friends and continue to follow and support us for the latest updates. Suggested March 2024 Activecampaign Event Tracking With Google Tag Manager

Wouldn’t it be great if you could send website event data to ActiveCampaign?

ActiveCampaign is a great tool for implementing your marketing campaigns. However, the process becomes a little complicated when we try to send the user information from Google Tag Manager to the ActiveCampaign account. 

In this guide, we’ll learn how to set up a tracking method that can send the user data from the Google Tag Manager to the user profiles in the ActiveCampaign account with the help of Google Cloud Functions.

If you’re new to Google Tag Manager, we’d suggest checking our Google Tag Manager tutorial first to go over the basics.

An overview of what we’ll cover: 

So let’s start!

An Overview of Event Tracking With GTM

ActiveCampaign makes a large number of digital marketing applications available for use. 

However, the process becomes complicated if you want to send the customer data from your Google Tag Manager account into the ActiveCampaign account. 

You’ll need to install a proxy here so that your ActiveCampaign and API keys don’t get exposed.

In a previous edition, we recommended configuring the Google App Script as an intermediate step between ActiveCampaign and Google Tag Manager. 

However, it is now an outdated method. Additionally, due to the hassle while setting up the same, we came up with this new method. 

You could also use Zapier. However, it isn’t built for tracking. So as you expand your data level on Zapier, it will become expensive in no time. 

We found that Google Cloud Functions, a product under the Google Cloud platform, can be helpful here. 

We can use this as a proxy and send data from Google Tag Manager to Google Cloud Functions, and finally send that data into ActiveCampaign to trigger the event tracking system. 

Google Cloud Functions is not only cost-effective, but it’s also reliable because it allows us to keep a log of the data. Hence we can see the process in real-time. 

To simplify the process, we have broken it down into four major steps. 

First, we’ll get an overview of the entire process. 

Next, we will be setting up the Cloud Function. This will act as our API proxy that enables us to send our data to the ActiveCampaign account. 

In the third part, we’ll set up a custom Tag template. We have specially developed this Tag for ActiveCampaign API that will enable us to send data from Google Tag Manager to the Cloud and finally to ActiveCampaign. 

In the fourth part, we’ll use specific techniques that will enable us to identify a user when they access our website and re-identify them when they take an action on our website. We’ll also learn to send this data to ActiveCampaign API. 

The fourth part is essential because it helps us to recognize users when they come to our website and what actions they perform. This helps us in making our system more effective. 

Let’s get started! 

How The Tracking Method Works

We want to send the event tracking information from our website to a specific ActiveCampaign contact. 

However, sending the event tracking information for different users is not as easy as creating a Tag on a page. 

This is because the event tracking information contains specifics that allow the information to be sent after a user has been identified. 

You need to send an Event Key along with the data to successfully track the users. 

Since this key needs to be confidential, we built this unique mechanism. 

We’ll first set up a Cloud Function on the Cloud platform. Then, we’ll send the data from Google Tag Manager to the Cloud Function. 

Finally, this Cloud Function will transfer our data to the ActiveCampaign. We’ll then need to find the correct user profile and forward the corresponding information. 

Towards the end, we’ll successfully be able to create the Google Tag Manager deployment. 

We’ll be using the Cloud Function Proxy URL and User Identification Method as Contact ID, Event Name, and Event Value. 

We’ll also add a trigger to fire the Tag on a specific event on Google Tag Manager. 

Finally, the last part of the tracking deployment will be about user identification. 

Website User Identification

We need to identify the correct user when they come to our website and send the corresponding data to the right profile in ActiveCampaign. 

One of the easiest ways of executing this process is to attach a URL with a unique query string in an email that we send to the user. 

This will act as a contact record to uniquely identify the user to send further information. 

We need to retain this information because we may lose this string once the user jumps to any other URL on our website.

Hence, we’ll build a cookie to remember the string that was generated from the email. 

So at the end of this process, our Tag configuration should have all the essential information that we have spoken about.

We’ll also preview and test our Tag at the end. 

So open the website from the URL in the email with the string attached. 

In this case, the string number is three.

We’ll open our Google Tag Manager to check any Tags that were fired. 

We can also relocate our user under a similar sequence number in the contact record. 

Additionally, there are a few things we need to take care of for this process to work. 

The Templates You Will Need

The first requirement is to set up a Cloud Function. This will act as our proxy where we’ll be sending our data. 

Next, we need to set up ActiveCampaign event tracking from Google Tag Manager. We’ve created a custom Tag template for that.

Finally, we need to find a process to identify a user with an email link, send that information to the right profile, and remember it through a cookie. 

Let’s start with the first step toward implementing this process!

Google Cloud setup

The first step is to set up the Active Campaign API and connect it to our Google Cloud Function. But to connect it to Google Cloud Function, we’ll need to first set up the account. 

We’ll need access to the Google Cloud Console for the Google Cloud Platform to set up Google Cloud Function.

We’ll go to the Google Cloud website. You can log in to it with your Gmail account, or you can sign up for a new account as well. 

As soon as you log in to your new account on Google Cloud, you’ll receive a credit of $300 for joining. 

However, you’ll still need to enter your credit card details to process this setup further. 

Adding a credit card to the process will enable us to send data to the system from an unauthenticated endpoint, which is an essential aspect of our process. 

We now have a project under Google Cloud. 

Our next step will be to set up a billing process. 

You’ll need to enter your account details here to successfully set up a billing process for Google Cloud. 

Furthermore, Cloud Functions are relatively cost-effective. For thousands of events that you may send per month, the charge will remain a few cents. 

But if you have a more comprehensive range of audiences on your website and you send millions of events, the charge can go up comparatively. 

However, we still find Google Cloud to be more cost-effective than other portals like Zapier. 

Once we have our account set up, we can start to build our Cloud Functions. 

How to Build Cloud Functions / Create Cloud Functions

Add a Function name so you can track it without hassle. You can also choose a Region for your campaign depending upon the type of requests you want to receive. 

This might take a while to enable. Meanwhile, we’ll go back to our Google Cloud page. You’ll need the codes for the chúng tôi file here. 

The codes are available in our repository. 

Copy the entire code from here. Open our Google Cloud page again. Replace the existing codes with the ones we copied from the repository. 

At the very top of this code, you’ll need to fill up the information about the API key, API URL, Event Key, and Active Campaign account ID.

As a rule, this information should not be shared with anyone. However, we have created a demo account for visual purposes only.

Once you add your information to the chúng tôi code, you can be sure that your information won’t be shared publicly with anyone.

We just put this information to execute the Cloud Functions. Ensure that even after replacing your information on the codes, you have still retained the quotation marks.

We’ll now learn how to fill up the ActiveCampaign ID and Event Key. 

ActiveCampaign ID and Event Key

Let’s go back to our Active Campaign account. Go to the Tracking option below the Developer.

We can see the Tracking Code here. We can find the Account ID in the code itself. Copy it from here and paste it into our chúng tôi code. 

Let’s come back to our ActiveCampaign account. You can find Event Tracking under the Tracking code. 

You’ll have to keep the Status as ON in case it isn’t. You can find your Event Key just below the ON option.

Copy the key from here and paste it to the chúng tôi code on the Google Cloud account. 

You can directly copy the code from here and replace it with the code on your Google Cloud account. 

Now we’ll need to export the function while going to the endpoint. Hence, copy the function from the chúng tôi code, and paste it as our Entry point.

Let’s deploy this function now.

Deploy Your Google Cloud Function

This may take a while to load. 

We’ll be able to see that our Cloud build API is now enabled. 

Next, we’ll learn how to whitelist the events. 

Whitelisting Events in ActiveCampaign

We’ll now come back to the Tracking section in our ActiveCampaign account. 

Once added, you’ll be able to see the event listed under the Event section. 

Note: We can track only the white-listed events. 

ActiveCampaign will now be able to receive these events. 

Function Permissions

Let’s come back to our Google Cloud account.

As mentioned earlier, we need to Allow unauthenticated access to our Function. We’ll be able to check it once our Function has been deployed.

We can see that it will allow allUsers access in the description as well as Cloud Functions Invoker. 

If you don’t already have allUsers access, you’ll need to set it up in order for this process to work.

It will lead us to the overview menu. It can show us how often an event was invoked.

You can check the Logs to see if there were any errors for any events that have been invoked.

Let’s now see how to send this data to our ActiveCampaign account.

Sending First Test Data Into ActiveCampaign

Copy the trigger URL from here and paste it on your Notepad. 

Currently, this URL won’t work because we haven’t attached any information to it. 

However, we need to attach a testing string to the URL. You can find this string from our repository. 

Under Testing, you can find a string for Cloud Function URL. Copy this as well and paste it to your Notepad. 

Once you’ve copied the URL correctly, you also need to fill in your information. 

We’ll need to replace the EVENTNAME, EVENTDATA, and CONTACTID from the string given in the repository with dummy data to test it. 

You can find the contact ID from the URL of the profile. In this case, it’s 2. 

We’ll copy it and replace it with the CONTACTID in our testing URL.

We’ll also need to fill up an event name. We have already whitelisted a few events in the Tracking column of our ActiveCampaign account. 

We can choose and copy the name of any one of these events. In this case, we’ve copied testing. 

We’ll replace EVENTNAME with the event we copied. 

We’ll also replace EVENTDATA with any random property of an event. 

We’ve chosen to add CloudFunction here. 

Once your entire URL is complete, you can copy and paste it on a new tab and press enter to load it. 

We’ll be able to see a message on the screen “sent event”.

We’ll now be able to see this event on our Google Cloud console. 

It may not be visible right away. However, you’ll be able to see the user movements under the user profile that we created. 

We’ll be able to see the event name that we entered for the user, testing, in this case. 

The event can be seen as testing, and the event data can be seen as CloudFunctions, just like we entered. 

 Now our Cloud Function is ready to operate! 

Setting up Event Tracking Template

We’ll move on to the third part of our guide to set up a custom Tag template that you may install. 

The file will now be saved to your system. 

Let’s open the Google Tag Manager account that is linked to your website. 

We’ll need to set up Tags and triggers for our process from scratch.

Open the tpl file that we just saved. 

Once it opens, you can also check the code on the Template Editor. But ensure that you don’t make any changes to this file as it may not work otherwise. 

Save the file once it’s installed from your system into our template. 

We recommend you manually download them from GitHub as these codes can’t be found in the community gallery.

Cloud Functions may not be the standard way of performing this tracking, but we still recommend it due to its cost-effectiveness and ease of setup. 

Once ActiveCampaign is installed as a tech template, we’ll create a New Tag with ActiveCampaigning Event Tracking as its Tag type. 

Now we need to add Tag information as well. The first one is Cloud Function Proxy URL. 

Copy the trigger URL from here and paste it into your Tag. 

Let’s see what else needs to be added to this Tag. 

Tag Configuration

We’ll need to put in the event information like User Identification Method, Event Name, and Event Value. 

First, we’ll choose the User Identification Method. Previously, we chose Contact ID as the method because we already had that information. 

However, you could also use other methods here. You can use the User Hash that you already have in the background. 

You can also use an Email Address, but we don’t recommend it due to PAI reasons. 

For ease of the process, we’ll again move forward with the Contact ID. 

Next, we’ll fill up the ActiveCampaign Contact ID. we already know this field, so we’ll fill up the Contact ID of our test user, which is 2 in this case. 

Next, for the Event Name, we’ll again go with testing. 

For the Event Value, we’ve just put in any value. We’ll put GTM in this case. 

We’ll also add a trigger for our Tag. We’ll choose All Pages as our trigger type. 

Let’s add a name to the Tag and Save it. 

Our next step will be to test the Tag we just created. 

So let’s see if it works! 

Initial Testing

Let’s preview our Tag on the website we have linked. 

We’ll be able to see that our event has been fired on the Google Tag Manager account. 

Also, when we open the test user profile on the ActiveCampaign account, we’ll be able to see the corresponding event recorded. 

So we’ve been successful in sending the event data from Google Tag Manager to the ActiveCampaign account. 

However, this is just for testing purposes. The trigger used here is All Pages. 

So if the user keeps on moving to the next pages continuously, there would be a tracking known as sidetracking that will go on. 

In order to prevent this, we need to customize our trigger. 

Add a Trigger

Let’s reopen the trigger from our Tag. Add a new trigger. 

Once the trigger is done, we’ll also make a few changes to the Tag. 

Setting up Variables

Make sure that the event names you choose are already whitelisted. 

We have previously whitelisted a few events. Make sure that you choose an event from them. Otherwise, it won’t appear on the ActiveCampaign account. 

For the Event Value, we’ll choose Page URL as the variable. 

Let’s test it in Preview mode to see if it works! 

Final Testing

We’ll go to our website and add a product to the cart. When we come back to our Google Tag Manager account, we’ll be able to see that the event has fired successfully. 

You can also see the same information on the test user profile from your ActiveCampaign account. 

You can see the page URL shown in the event because that is how we have created it. 

Our next step will be to identify a user. 

We already know the Contact ID of the user that performs actions on our website. But now, we’ll find a way to dynamically identify this user as well to send this data to the correct ActiveCampaign profile. 

Adding a Dynamic User ID to Links

We’ll use a cookie technique to remember our users. 

We’ll need to set this process in the Google Tag manager itself. Here, we’ll change the way a user is identified in the Tag itself. 

Currently, we are manually providing the contact ID of the user inside the Tag itself. We’ll replace it with a dynamic system. 

So when a user comes to the website, we’ll identify the user and the corresponding profile on the ActiveCampaign account, and finally, we’ll send the data to the correct profile. 

There are several ways to do this process. The one which we recommend needs us to identify the users by links sent through emails. 

This is the most effective method in this case, as ActiveCampaign is also an email tool. 

We’ll send the email to the user with a link inside it. Once a user opens our website through the link provided, we’ll be able to track the user data with the help of the string attached to it. 

How can we send such information from ActiveCampaign? 

Emails from ActiveCampaign can be sent by campaigns, automation, or directly from the user profile. 

For testing purposes, we’ll choose to send an email from the user profile itself in the ActiveCampaign account. 

We can now send personalized information from the mail itself. For example, if we type “%”, it will direct us to convert it into a lot of other options. We’ve chosen the first name on the user profile. 

We’ll also add a link to this email. Let’s type the website address in the link. 

However, we’ll need to add a query string at the end of this link. We’ll be including the account ID for this link. 

Hence, the string that we add after the website address will be /?acid=. We’ll also add the custom contact ID of the user to track them. 

So, we’ll also add %CONTACTID% at the end of the string after the “=” sign. 

We’ve chosen contact ID here because it’s the easiest method for our Tag configuration. However, you can also choose email if you are careful with it. In this case, the CONTACTID will change to EMAIL. 

Also, you can choose the subscriber hash option which is in sync with the Tag configuration. In this case, the CONTACTID will change to SUBSCRIBER_HASH.

Send the test email once done. Let’s open the link from this mail to see how it works. 

We can see that once the link opens, it suggests the exact ID number of the person as in our ActiveCampaign account. 

Let’s see how to add this contact ID information from the ActiveCampaign account to our Google Tag Manager account.

Pulling User ID From “URL” Into Google Tag Manager

First, we’ll need to create a new variable. 

The type of variable will be the URL variable, and our Component Type will be Query. 

We have chosen a Query key of “acid” for this purpose. 

Add a name to the variable, and Save it. 

After saving, we’ll see if this works. 

Let’s open the preview mode for our variable on the website. 

For testing the query, we’ll reopen the URL we mailed earlier for checking the contact ID of the test user. 

Once the website opens, we’ll come back to Google Tag Manager to see if it fired correctly. 

We can check in the Variable section the url – acid is showing a value of 3, and has been fired successfully. 

However, once we shift from the current page we opened on our website to any other page, we’ll be able to see that the string has disappeared from the URL. 

Let’s see how to track user movements in such cases.

Capture User ID in a Cookie With Google Tag Manager

In this case, our current Tag variable won’t be able to identify the user movements anymore. 

Furthermore, we can use cookies to remember the data in the Google Tag Manager. 

Cookies are a great way to track user movements irrespective of the number of times they change the URLs. We can always track them as long as they are on our website. 

Let’s create a cookie now. 

You can create a cookie in Google Tag Manager itself. Open a new Tag. 

We’ll choose the Tag type from the Community Template Gallery. 

We’ll search for the keyword “cookie”. We’ll be able to see many different solutions for creating cookies. Not all of them can actually make cookies. 

Our Tag template is still open. Add a name to it. 

The Cookie Name can’t be changed to anything else. So we can just add any cookie number for it. 

We don’t need to fill in any Optional Description. 

Choose the Cookie Value as url – acid, the one which we have already created here. 

Save it once done. 

We’ll also attach a trigger for this Tag. 

Choose the trigger type as Page View. 

We’ll command the trigger to fire on Some Page Values. 

We’ll keep the conditions as url – acid does not equal undefined. 

This is because we want to track the user when we already have a definite url acid and can put this value in the cookie. 

Add a name to the trigger, and Save it.

Also, save the Tag. Let’s go to Preview mode and see how it’s working. 

Let’s again open the URL which contains the acid string along with the user ID, which is 3 in this case. 

Go to Application → Cookies. You’ll find a list of all the cookies here including the cookie that we just created, custom cookie 7. 

This will also show a value of 3, as our user ID is 3 in this case. 

Even if you change the page you are currently on, the cookie will still be there. 

However, we still need to pull this information from the cookies into our Tag. 

Pulling User ID From “Cookie” Into Google Tag Manager

We’ll create another variable on Google Tag Manager. 

The variable type will be 1st Party Cookie, and Cookie Name can be copied from the developer options themselves. 

The name is customCookie7 in this case. We’ll add a name to the variable and Save it. 

We’ll also implement it inside the Tag we created. We’ll change the ActiveCampaign Contact ID to customCookie7, and Save it. 

Let’s preview this and see how it works. In order to preview correctly, we have deleted the previous cookie track to set new ones. 

Let’s reload the URL with the string of user id. 

We’ll be able to see that our Tag has already fired on the Google Tag Manager. 

We’ll also open another page on our website, so the URL doesn’t contain a string anymore. 

We’ll try to add a product to the cart. We’ll also be able to see that our Add to Cart Tag has also fired. 

The Tag also shows the ActiveCampaign Contact ID as 3. 

We’ll also see if this information is visible on the ActiveCampaign profile of the user. 

You can even try to open other pages on your website with the same user ID, and you’ll still see that the Tags will fire.

As long as the user won’t change the browser or delete the cookies, we’ll still be able to track the movements on our website. 

However, you’ll need to make sure that any links you send to the users should have the query link attached to them. 

Unfortunately, there’s no other way to track this information by sidetracking on the ActiveCampaign. 

One thing we need to ensure here is that our process won’t track the users who come to the website without any query string attached to the URL. 

Creating a Blocking Trigger in Google Tag Manager

We need to build a negative trigger or a blocking trigger. 

We’ll create a new trigger with the trigger type as Custom Event. 

The Event Name will be all the events. Hence, we’ll type “.*”. 

We’ll set the trigger to fire on Some Custom Events. 

Our conditions will be cookie – customCookie7 equal undefined. 

We’ll add a name to the trigger and Save it. 

As the conditions in this trigger are counter to what we want, we’ll turn this trigger true as an exception for the one we already have. 

Let’s open our Tag and add this as an exception. Save the Tag once done.

We’ll again delete the existing cookies to test the new ones correctly. 

Let’s open our website without a query string URL and try adding a product to the cart. This is already a new string-free URL. 

We can see that the Tag didn’t fire. This is because our counter trigger stopped it from firing. 

We have made a download of this entire container and added it as well to the GitHub repository. 

You can add the container you downloaded from our repository here. 

Moreover, don’t forget that if you want to take this live, you’ll need to submit this as a version. 

FAQ How do I implement event tracking using Google Tag Manager and Google Cloud Functions? How do I set up user identification for event tracking in ActiveCampaign?

To identify users for event tracking, you can use links sent through emails. By including a unique identifier, such as the contact ID or email, in the query string of the URL, you can track users and associate their interactions with their corresponding profiles in ActiveCampaign.

What is event tracking in the context of ActiveCampaign and Google Tag Manager?

Event tracking refers to the process of capturing and sending specific user interactions or events on a website to ActiveCampaign for tracking and analysis. By using Google Tag Manager and Google Cloud Functions, you can set up a system to track and send event data to ActiveCampaign for targeted marketing campaigns.


So that’s all! This is how we can send the user data from Google Tag Manager into an ActiveCampaign account with the help of Google Cloud Functions. 

Sending user data to ActiveCampaign will require you to create a proxy in order to correctly identify the users. Furthermore, tracking this data will require cookies. 

However, if you have more user data on the ActiveCampaign account, instead you can pull the ActiveCampaign data into the Google Tag Manager to optimize it better.

You're reading Activecampaign Event Tracking With Google Tag Manager

Getting Started With Google Tag Manager

A tag is nothing but a snippet of code that you get from your tool provider, in our case Google Tag Manager. This code needs to be placed in your website code to instal he tool.

Tag manager, on the other hand, is a platform used to handle these tags. It centralizes all the tags and reduces the burden on web developers. It makes the data collection process simpler and more efficient.

Why do we need a tag manager?

By now you might have a basic understanding of what tags are and how they can be installed, so why do we need a platform like GTM to install tags when you can install them directly? Well, for that, we will look into some common problems that users face without a tag manager.

Complications with Tags and how does tag manager solve it

Highly dependent on the IT department:

Whenever you are adding a tag to a website you are basically changing the code and for changing you need access to the website which is with the IT team.

The IT teams have various other requests and if you go to them for implementing something in the middle of their sprint cycles then your request could be rejected and you’ll have to wait for the next cycle to begin for your tag to be implemented.

The IT team just needs to install the tag manager once and then the control can be transferred to the marketing/analytics team.

Multiple tags on various places and special cases

Tags need to be placed in various places in a code and tags will be required for tracking different events such as order completions or lead submission etc.

The IT team needs to implement the tags on all the specified places and after that, it will go through audits and validations which can be a time-consuming process.

Tag manager provides an interface to load tags without depending on the IT team. The tag manager gives the user the power to decide things like – where to load the tag, when to load it, etc.

Update/Removal of tags

It can happen that you no longer need a tool on the website or you might need to update the 3rd party tools. So to do that, you first need to locate the code on the website and then remove it, which again could be cumbersome.

Tag manager centralizes all the tags in one place for easy removal/update. You just need to update the tag in the interface of the Tag manager and that update will be published on each and every page with that tag.

Hence to summarise,

Tag manager provides a platform to host javascript and HTML tags of 3rd party tools.

Centralises all the tags for efficient handling

Reduces dependency on the IT team. The developer just needs to install the tag of the tag manager once and then control can be transferred to the analytics or marketing team.

It makes it easy to update/remove/publish tags

It makes it convenient to handle special cases such as installing tags that track only a particular event.

Installation of Google Tag Manager on your site

Create an account with your company name and select the country as the company HQ.

Scroll down to the container setup section, add the container name as your domain name (considered the best practice), and select the platform. You can create multiple containers in a single account for different platforms. For instance, if a company has a web app and an android app, then they can create two containers within the same account but of course with different target platforms. For this tutorial, we will focus on web platforms.

Just in case, if this dialog box does not show up or you close it, there various other ways to find the installation code.

I. Go to admin and find the option of “Install Google Tag Manager”

Overview of GTM UI

Within GTM, you will have two broad choices of tags – featured tags (built-in) and custom tags. As the name suggests, featured tags are optimized for use on the platform, whereas custom tags need to be installed manually, although the process is fairly simple.


Triggers are basically a group of conditions that, when met will fire certain tags


Categories of triggers:

Page load

User Engagement



Variables provide information about the interactions. For example, if it is a page view event, what page is it, what is its URL etc.

Variables are used in

Variables in triggers: you can use variables to set triggers, say fire this tag when the page URL contains /thankyou

Variables in tags: variables can be used to pass values to tags, such as a conversion tag that will need values like price, product id, etc.

There are two types of variables

Built-in variables:

These are built-in variables and are not customizable. New containers do not have any user-defined variables therefore built-in variables are pre-enabled.

According to the container target platform you have different built-in variables in a web container some of the common built-in variables are: page path, page URL, referrer, etc.

User-defined variables: The second type of variables is the user-defined variables, where you can define your own variables, and there are several types of user-defined variables categories available such:

Navigation – page URL, HTTP referrer

Page variables – 1st party cookie, custom javascript

Page elements – element visibility, DOM element

Tags – what do you want GTM to do?

Triggers – when do you want to fire these tags?

Variables – what value do you want to pass to these triggers or tags?


In a container, you can have various workspaces; for the free version, up to 3 workspaces are allowed (as of now). Having separate workspaces helps in avoiding overwriting changes made in one workspace. Suppose you are implementing a GA4 tag in your workspace and the other teammate is working on something in the same workspace and saves and publishes the changes. This could lead to overriding and errors.

Preview Mode And Submit

On the right-hand top corner, you will find two buttons, preview and submit.

As the name suggests, this is a feature in GTM that allows users to preview their changes before it is sent live. Since GTM will primarily be used by the analytics and marketing team, they might end up breaking something on the page if not done right. Hence, using this Preview mode, you debug your tags, triggers, and variables.

The submit button is used to push your changes to the environment, it could either be published live to the audiences or forwarded to the quality analysis.

Installation of GA4 tag in GTM

Add in the account name

In the property setup, add the property’s name as the domain name as we did in GTM. If you have an eCommerce site select the currency of your country and also set the timezone as your current time zone.

Press Create

Select the web platform

After you do so, you should get a pop-up window like the one shown below:

Copy the “Measurement-ID”. This ID is the unique identifier for your data stream. Different GA4 properties will have different measurement IDs.

In Google Tag Manager

Go to “Tags” (Available on the left-hand navigation bar)

A window will appear, like the one shown below:

Now here is where you will paste your measurement ID and save the name as

“GA4 – Global – Config”

Scroll down, and you will find the triggering section. This is where you specify when you want to fire this tag.

Select that and press “save”

That’s it; you have now connected GA4 to GTM; all that’s left is to “submit” the changes. But before that, let’s preview it.

Note: You need to install this extension for debugging:

The preview mode will automatically open up your website, and on your site, you should find a pop-up of tag assistant: This will show you if your site is connected to GTM or not.

Next, to verify data is being sent to GA4

Go to your GA4 dashboard and go to “configure” (available on the left-hand nav)

Then go to “debug view” – This feature allows you to debug your website in preview.

Your debugView should look something like this:

Another way to test your GA4 tag is by using an extension called Omnibug.

You will find an option of Omnibug. This will show all your tags and their information.

In your Google Tag Manager interface, go to the variables section.

Save the trigger with a suitable name like – “Generic All links”.

Now to send the data to GA4, we will need to create a GA4 event tag.

Go to the “Tags” section in the GTM dashboard.

From the drop-down of the configuration tag, select your GA4 global configuration tag that we created while installing GA4 through GTM.

Now, let’s tell the tag when to fire

GA4 – debugView

Finally, if everything is working as expected, you can submit the changes, and the tracking will be initiated!


There you have it, getting started with Google Tag Manager. After following up with this article, you should be able to,

1. Install Tag Manager on your site

3. Create tags, triggers, and variables in GTM

The media shown in this article is not owned by Analytics Vidhya and is used at the Author’s discretion.

Google Analytics Real Time Gets Event Reporting

Every website owner needs to be using Google Analytics. It’s what helps us identify our problems, successes, and future content opportunities. The amazing Google did it again. They just came out with real time reports for ‘Events’. This allows those of us, who are Analytics fans, to get a better idea of what is happening right now on our websites. It’s like tuning in for a TV show. Some webmasters are pretty excited as they’ll be able to quickly identify problems and successes; rather than having to wait several hours.

The new features are:

Shortcuts for your important real-time segments

Comparison real-time to overall data

Content Breakdown by Device (mobile, tablet, desktop)

Real-time Events Report

1. Real-time segment shortcuts 

We all know that there are certain segments that interest us more than others. Here we have the opportunity to create shortcuts to our favorite segments without having to create the filters each time. Such a time saver!

2. Comparison real-time to overall data

This feature is just fantastic. We can now analyze pageviews and overall traffic side by side. Google is allowing us to create filters here. This will allow us to look at where the pageviews are coming from and see its direct impact on our traffic numbers.

3. Content Breakdown by Device (mobile, tablet, desktop)

This is by far my new favorite Analytics perk. Knowing where my visitors come from allows me to identify opportunities and problems with my content. Each device brings with it a certain type of behavior. People on desktop act differently than those who use their phone or even tablet.

Google will tell you which percentage is coming from which device. 🙂

4. Real-time Events Report 

You’ll want to set up Event Actions,Event Labels, and filters to make this happen.


Google is still innovating the way we see the data on our websites. These new features will most certainly help us have a better idea of what is really happening on our website. It will help us identify areas for improvement.

What do you think of the new changes?

Steelseries Sensei Wireless Review: A Gorgeous Mouse With A Gargantuan Price Tag

The Sensei Wireless mouse is one of the most impressive wireless input devices on the market, but it will cost you.

The SteelSeries Sensei Wireless Laser Mouse is a gaming mouse for everybody. Or, at least, everybody willing to spend $160 on a mouse.

SteelSeries is becoming synonymous with an overwhelming amount of customization, as you can see from the Sensei’s settings screen, below. There’s a lot to tinker with, which is great if you’re hardcore about your mouse. And you’d better be hardcore about your mouse, if you’re spending $160.

Name the setting and you can probably tweak it using the SteelSeries Engine 3 software.

A wired wireless mouse

The biggest deal here is that the Sensei Wireless can run wireless or wired. In wireless mode, the USB cable attaches to a large charging hub, made of metal and plastic. The charging hub is attractive enough, with an LED ring colored to match the mouse’s battery status: green for about 20 percent and above, yellow for 5- to 20 percent, and red for less than 5 percent. As with most SteelSeries devices these days, you can customize this to any color scheme you prefer (although the battery status is so useful I don’t know why you’d change it).

The battery is not removable, which gives me some worries.

The SteelSeries Sensei Wireless has an ambidextrous design that’s comfortable for both righties and lefties.

If you remain dead set against a wireless mouse, you can remove the USB cable from the charging station and plug it directly into the mouse. So if your Sensei Wireless goes dead in the middle of a work or play session, you can get back into action without needing to charge it on the base.

The battery is not removable, however, which gives me some worries. The Sensei Wireless is rated for 16 hours of battery life, but I don’t know how much the battery will suffer over time from day-in, day-out use and charging. I know that my Xbox 360 Play-n-Charge kit became useless after a year. If your Sensei Wireless gets to a point where it can’t hold a charge, then it turns into a Sensei Wired. End of story.

The Sensei Wireless transforms into the Sensei Wired when you remove the USB cable from its charging base and plug it into the mouse.

More customization

As I said earlier, you can change practically everything about the way the Sensei Wireless runs. A mouse’s sensitivity—the relationship between the distance you move the mouse on your desk and the distance your pointer moves on your display—is measured in counts per inch (CPI). The Sensei Wireless’s laser sensor can be set anywhere from 50 to 8200 CPI. The SteelSeries Engine 3 software running on the host CPU can boost the mouse’s CPI to 16400, although you’ll probably never need that much precision. The software will also let you establish two default sensitivities that you can swap on the fly by hitting the button adjacent to the scroll wheel. You could choose one for ultra-precise work and one for casual browsing, for instance.

Lift-off distance is adjustable from one to five millimeters. That’s great for someone like me who’s prone to barely lifting the mouse off a surface during tense games. You can set a lift-off distance that won’t register phantom mouse movements when you reposition. And then there’s angle snapping and polling rate, which you probably won’t mess with. High polling rates are good. Angle snapping is a rarely-used setting that makes subtle corrections to your mouse movements, but it’s there if you want it.

Sensei returns

And this is where the shortcomings of Sensei’s ambidextrous design become apparent. Two buttons are basically impossible to use whether you’re left- or right-handed. Right-handers like me can easily press the thumb-accessible buttons on the left side. But I couldn’t find a single comfortable position for my hand that allowed me to reliably hit the corresponding buttons on the right side.

Two of the side buttons on the Sensei Wireless are essentially useless (the two on the right if you’re right-handed; the two on the left if you’re a southpaw).

And at 2.7 inches wide, the Sensei is a bit smaller than I prefer. I have somewhat large hands and am a fan of the claw grip, so I ended up swapping to a palm grip to reduce cramping. This mouse is also a bit back-heavy—I assume because of the battery. When you lift it off the desk, the rear of the mouse has a tendency to pivot downward and put strain on your fingers. If you reposition your mouse constantly, the effort will wear you out.

Bottom line

Wired or wireless, the Sensei Wireless is an impressive mouse. Few wireless devices offer such high polling rates, and SteelSeries packs an impressive amount of customization into its software. The battery-status indicators, while superfluous, are impressively splashy (and evidence of the company’s obsession with pretty lights).

Review: Dashlane Is A Robust Password Manager With A Gorgeous Interface

A password manager is a must. Unless you’re using the same password for everything (not recommended) or have a truly phenomenal memory, your productivity can benefit from a place to store all your passwords and easily use them whenever necessary. There are several strong players in this field, such as LastPass and KeePass. Dashlane (free for basic version, $20/year for Premium) aims to take on both.

Dashlane is a robust password manager with additional room for your various IDs, credit cards and other payment methods, receipts, and notes. It comes with an auto-fill feature for online forms to which you can add different addresses, phone numbers, and other personal information you’re tired of typing repeatedly. There are two features that make Dashlane stand out when compared to both LastPass and KeePass: Its beautiful and easy-to-use interface, and its optional cloud syncing. The Security Dashboard analyzes your database, alerting you of weak, recurring, or breached passwords

Setting up Dashlane is exceptionally easy. LastPass and KeePass are both fairly easy to use, but they have nothing on Dashlane. The installation process takes you step by step through setting up the program, with clear instructions and smooth guidance. After choosing your master password for Dashlane–unlike LastPass, there’s no “password reminder” here, so you must remember it or lose access to your database–Dashlane will install itself on your browsers (Firefox, Chrome and Internet Explorer are supported), and will lead you through trying out its different features and interface elements.

If you’re already using a different password manager, you can import your database into Dashlane pretty easily. The import tool supports databases from Firefox, Chrome, Internet Explorer, LastPass, 1Password, RoboForm, PasswordWallet, KeePess, and custom CSV files, but the tool is a little finicky. For example, my KeePass CSV did not contain a filled-in URL field, as this is not mandatory in KeePass. Dashlane ignored every password that did not come with a URL, leaving me with no way to import my large password database into Dashlane. Fortunately, Dashlane can automatically add new credentials upon logging in to websites, so after using it for several days, most of my oft-used passwords were transferred to Dashlane without much effort on my part.

On every new login, Dashlane will offer to automatically save your credentials

Dashlane’s strong yet subtle browser integration makes logging in to websites a seamless operation, but doesn’t add unnecessary clutter to your browsing experience. Once a password is stored in Dashlane, it can log you in automatically every time the website is loaded, or auto-fill the credentials without logging you in. If you’re opening an account on a new website, Dashlane can generate a strong password for you right from your browser, and store it in your database in one fell swoop.

One of the most important aspects of a password manager is security, and with Dashlane, you can select your level of paranoia. Your database is encrypted with AES-256 encryption, only you know the master password to decrypt it, and you can enable Google Authenticator for extra security. Unlike LastPass, where everything is in the cloud, automatic cloud syncing and backup is a Premium feature in Dashlane, so free users don’t have to worry about it.

Even if you’re a paid customer, however, you can easily opt out of cloud syncs, meaning your password database is only stored locally, just like with KeePass. Unlike KeePass, though, Dashlane’s free mobile apps can be managed as separate databases, so you can access your passwords on the go without worrying about constant cloud syncs. When enabled, Dashlane syncs happen every 5 minutes, and there’s no way to control or reduce this frequency. The Premium version also includes Web access to your data from any browser, anywhere

Dashlane is an impressive password manager with some excellent features and a beautiful interface. It does require a certain amount of trust in the company, especially when using its syncing options, and for $20/year, its Premium version is expensive when compared to the alternatives. Nevertheless, it is the perfect password manager for the less tech-savvy, and even the experienced are sure to enjoy it, if only for the merits of its interface. It’s available in Android, iOS, and Mac editions, in addition to the PC edition I reviewed.

More (Google) Serps Research With Yolink

Yolink is a nice new tool that searches through the content linked from the current page (available to both FireFox and Google Chrome users). Basically, it works as follows:

I found the tool especially useful for various SERPs research.

Let me show one example: let’s say my main keyword is [diabetic diets] and I want to research which (and how many) pages found for its core term [diets] mention [diabetes] or [diabetic]. My steps would be:

1. (With Yolink installed) I search Google for [diets];

3. Now I can watch the tool generate snippets from the linked pages and highlight my search term:

The listing number represents the link on the base page (which is Google SERPs in our case);

If there are several extracts containing the search term within one listing, they will be marked with letters;

When you hover over any listing in Yolink results, you will be able to see its number on the base page:

4. Now just scroll through results to see which pages contain your term and how they use it:

Isn’t it useful?

More things you can do with Yolink:

Scan the current page links or text;

Send results directly to Blogger, WordPress, Facebook or Twitter.

Do you see yourself using this tool? Please share your thoughts!

The tool was reviewed under SEJ policy.

Update the detailed information about Activecampaign Event Tracking With Google Tag Manager on the website. We hope the article's content will meet your needs, and we will regularly update the information to provide you with the fastest and most accurate information. Have a great day!