Google Modern SaaS services are akin to Swiss Army knives – they can do anything. At the same time, clients only use the features of a SaaS service that they need. With time, continuous development of these services becomes very hard, as there get to be too many features to support.
The need arises to define which features should be prioritized for further development. The logical way to prioritize features is to invest in the most popular, and the popularity of each feature can be determined by user behavior tracking.
Google Tag Manager as a User Activity Tracking System
Google Tag Manager (GTM) is a free tool for managing marketing activities and tracking various metrics for web-oriented products. The main features of Google Tag Manager include
1) the ability to aggregate all tags (types of data that will be tracked) in a single place;
2) the ability to implement GTM by adding only a single script to a webpage;
3) the ability to change tracking settings without changing page code or involving developers.
How to use Google Tag Manager with SaaS:
1) Register the product that needs to be tracked on the GTM website.
2) Customize tags on the GTM website.
3) Receive scripts that need to be integrated into the tracked product in order to complete setup.
When you implement GTM into your SaaS product, your Google Analytics account will start receiving data on user actions. Google Analytics provides extensive tools to further organize and visualize this data.
Using Google Tag Manager to Track User Activity within SaaS Services
Configuring tracking of SaaS-specific data
Setting up analytics for SaaS involves using Google Tag Manager to configure what data will be transferred, which is done by adding some properties to the DataLayer object.
The retailerId and userId variables contain the ID of a user who performed an action on the website as well as the ID of the tenant this user is associated with. When the trigger fires, the Google Analytics server receives the whole DataLayer object, which allows it to analyze the data for each tenant separately.
Any trigger types (page opens, clicks, DOM events, form operations) can interact with the DataLayer object. For example, when the PageView trigger is activated, the DataLayer object is filled with values and sent to the Google Analytics server as soon as the page has opened.
Related:-Jailbreak iPhone Now
Exporting data from Google Analytics
Sometimes data you collect needs to be stored on dedicated servers. The Google Analytics service allows you to download aggregated data using the Core Reporting API.
The Core Reporting API provides access to data from the majority of reports available in Google Analytics and allows you to
1) Create special summaries of Google Analytics data;
2) Automate operations with complex reports;
3) Use Google Analytics data for other business applications.
To export data you need to perform the following actions:
1) In Google Analytics settings, enable the API
Disadvantages of Google Tag Manager
1) Data is stored on Google’s servers and thus can be viewed and used by Google.
2) This solution is fairly pricey at $150,000 per year (the free version doesn’t guarantee that more than 10 million pageviews will be processed, while the SaaS version can process a much larger number of pageviews).
3) All tracking code is located on the client side, meaning
c. each tracked action sends data to Google’s servers, creating additional traffic.
4) Security vulnerabilities – Data on users and their relations to specific tenants of the SaaS service is usually stored in an encrypted format (for example, inside a cookie). The service itself is responsible for decrypting this data, and the decryption happens on the server side. With GTM, since data is sent to a third-party service (Google Analytics), you need to store the data in an unencrypted format to allow filtering by users and tenants.
5) GTM is designed to improve marketing metrics such as number of pageviews from third-party websites, time spent on each page, etc. Such metrics are usually irrelevant for SaaS services, as these services usually have different goals. The most important thing for SaaS services is to provide the best user experience. Therefore, a lot of GTM capabilities aren’t useful for SaaS services.
Custom User Activity Tracking System
The main advantage of developing a custom user activity tracking system is that you can account for all necessary cases at an early design stage. For example, you can implement server-side tracking, which is more secure than Google Tag Manager as it doesn’t require you to send unencrypted user and tenant data to third-party servers.
dvantages and Disadvantages of a Custom Solution
Google Tag Manager has a number of disadvantages that can be solved with a custom click tracker. A custom click tracker offers the following advantages:
1) Data is stored only on the server of the tracking service and is available only to personnel who develop and maintain the service.
2) There’s no need to store user or tenant data in an unencrypted form. Cookie encryption is performed on the server, as is tracking. This solution is more secure than GTM.
3) Only necessary tracking features are implemented, designed specifically to fit the SaaS service being monitored.
The cost of setting up Google Tag Manager and integrating it in a SaaS service is lower than the cost of developing a new solution from scratch. However, after Google Tag Manager is implemented you still need to pay a subscription fee of $150,000 a year.
At the same time, implementing a custom tracking solution includes paying for development and data storage, the requirements for which are constantly increasing. However, there will most likely be no need to increase server capacity, since you need only one lightweight server to receive data and write it to the database. The technologies used to implement a custom tracker are free, and the necessary software and operating system are already employed by the used. The price of development can also be reduced if you have an in-house development team available or are using an experienced subcontractor.