My name is Saleel and I am the co-founder of GingerTag. This is my first of (hopefully) many blogs to come. Today, I will be writing about why we build GingerTag and what we are planning ahead.
I am a Software Developer by trade and have worked for three companies in the past, mostly in Full Stack Developer role. I have had to integrate Google Analytics with various websites/products we build. Integrating Google Analytics has become a standard practice and GA is now the de-facto analytics platform for the web. And GA does a decent job at that - its free, plenty of reporting options, you can add multiple users, etc.
But the problem I noticed was most people (especially non-developer background) were finding it difficult to read and understand the metrics reported in GA. Overall, Google Analytics was slow, organized poorly, and heavy for common use cases. Here are some painful factors I noticed:
Viewing events required users to navigating to
Behaviour > Eventspage and locating the event corresponding to a button click (for example). Events are captured with three parameters in GA namely,
Label. People were not sure what each action, category and label meant and what they correspond to.
There are events which required additional parameters to be captured. Sometimes you will have to concatenate and squeeze the data needed to available three params.
Filtering the data based on Cohorts like traffic source, country, etc were difficult in GA.
If you need to see all useful metrics in one place, you need to setup custom dashboard and reports, and even those had limitations.
Bounce rate is painfully inaccurate, especially for single page applications, as GA consider all single event sessions as bounce. But for many SPAs, users triggering only one pageview might have interacted with the website a lot. Metrics like Session Duration, Time per page is also inaccurate because of the same reason.
Apart from all these, Google Analytics capture and report many additional data like demographics of users, their age, gender, all of which is collected from elsewhere. This is not only useless (for many websites), but also an invasion of privacy of end users. Because of this, many browser extensions were made to block analytics tracking (especially GA), and eventually some browser started to block tracking by default.
I was looking forward to build a simple alternative of Google Analytics. When I looked up online, I found there were already some simple, privacy-friendly analytics platforms. There was Fathom Analytics and Simple Analytics, which I felt was too simple and didn't provide all necessary metrics. My goal was to build a simple platform, but simplicity in user experience and not by liming useful insights. One should not need to use another analytics tool alongside in order to achieve what they want. I later discovered Plausible and felt like that was something that solves many of the above problems.
I decided to work on a new analytics platform with my brother Salah and named it GingerTag. We wanted it to be better than other Google Analytics alternatives. There was one problem that no-one was solving - tracking custom element interactions without adding events. This was how we came up with the idea of no-code goals tracking (you can track button clicks, form submissions, video watch, etc from by selecting the elements from your page). We felt it would make it easy for marketing team to track certain things without involving developers.
We started working on GingerTag around May 2020. We spend a lot of time on technical design, coding, performance testing, etc, and we were able to build a MVP by around December 2020.
We gave our platform to few of our friends to test and collect feedback. There were suggestions and feature requests, but overall feedback was good.
We officially launched on ProductHunt on February 1, 2021. The launch went well and we received 50+ new registrations. Many users appreciated the UI and the simplicity of the application. There were couple of feature requests like:
- A free tier plan.
- Mapping users with their internal userId.
- Automating various action when users do something.
We decided not to immediately work any of those, except for the free-tier. Since analytics consume lot of bandwidth and resource, we were no in favour of a free plan at first. But we decided to add a small free-tier for personal and open-source websites in a case-by-case basis. We also received some free credits from AWS which can be used for this purpose.
Since our launch we have seen many "simple analytics" and "privacy friendly google analytics alternative" coming up. However, building a product is only half the work, it is execution that matters.
We will be focusing on solving problems in analytics domain and fulfilling customer requirements in simple ways. We will try our best to make GingerTag cover all use cases so that one wont need to use an additional tool alongside.
We will give flexibility to the user to choose the level of tracking they need to do. Many simple analytics platforms omit important details in regards to privacy, for example: only country of the user is captured, but not the state or city. But it is important for local businesses to know the state level metrics. And it is not quite an invasion of privacy as pin-pointing users from state/district is not usually possible.
Another thing in this regard is tracking users over multiple days. Metrics like "New Users" over a period of time are not shown in GingerTag, as we do not track users beyond one day (as this could possibility violate GDPR). But we want to give this option to our customers if they choose to (after getting the consent from end-users). So if the end-user agrees the consent they are tracked over days and if they decline, it will fallback to default behaviour (daily reset).
The tracking script is specific for each website - based on the their configured goals, level of tracking, etc. This means even for doing all the above, you only need to integrate our script once in your website.
We will be focusing on integrating with various tools to automatically capture relevant events and goals (like a auto-configured analytics platform). For example, if users install our plugins in platforms like WooCommerce, Magento, Shopify..etc, GingerTag will capture events like
add to cart,
purchasewithout additional configuration. The dashboard will show metrics like 'Top Products', 'Conversion Rate', 'Sales Amount'.
Even for normal websites, we might be able to scan and find important user actions (like button clicks) that can be auto-configured as goals.
Custom Dimensions: You will be able to tag sessions based on various custom parameters (no personal info of-course), and they can be used as filters in the dashboard. Some common use cases for this are
Theme: Dark Modeto find out how many people are using dark mode.
Language: Frenchto find how many people use a specific language.
Integrations: As mentioned above, we will be creating platform specific plugins for various platforms.
API: GingerTag Dashboard is powered by our flexible GraphQL API. We will be exposing this API for general usage (with authentication), so users can build widgets and tools on top of data collected from their website.
At the moment GingerTag is not open source. One reason for this is that we are exploring on-premise installation and support for medium to large scale businesses (with some customizations), as a secondary business model.
But we might be open-sourcing GingerTag at some point of time. Open source often goes together privacy, but it is important to note that being open-source doesn't inherently ensure privacy. One can still deploy a different version (that store real IP address of the user for example) than that is being open-sourced. Eventually everything boils down to the trust on the people behind the product.
We are looking forward to make GingerTag a trustless platform, because that is what is more important than just being open-source. As of now, our customers needs to trust us (and other similar tools) that we don't store PII or sell data. We are exploring a way where this would be technically impossible for us to do, even if we wanted to - meaning our customers don't need to trust us.
A solution for this would be to build a decentralized version (open-source) of our pixel server. Tracking request go to random, globally distributed machines that encrypt the data before forwarding to us. This way, we only store the encrypted data which can only be decrypted by your key in the client side dashboard. This is in align with recent trend towards decentralization and Web 3.0 technologies. But this is very difficult to implement, both technically and practically. We will be looking in this direction nonetheless.
At the very least, when we go open source, we will to find a way to ensure that the deployed version is same as what you see in the Github.