jehna / ga-lite

Small, cacheable and open version of Google Analytics JS client

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Universal Analytics implementation (gtag.js API)

rfgamaral opened this issue · comments

Google recently started recommending one to track using gtag.js instead of analytics.js and I'm curious how this affects this project, if it affects it at all.

More information: https://developers.google.com/analytics/devguides/collection/gtagjs/migration

Asking this because the recommended way to install ga-lite from the README is a script similar to the old ways of setting up Google Analytics on our pages.

Yep, ga-lite imitates the older analytics.js. Perhaps in the future this project will transition towards using the new kind of API, but this is not planned yet.

Universal Analytics (gtag.js) offers a few upgrades to the previous Classic Analytics (analytics.js):

  • Custom variables => custom dimensions and metrics
  • Offline-enabled data sync
  • Android and iOS libraries

I'm labeling this issue as "wontfix" for now, but I'll keep it open for the future

If you're not closing that label might be a bit misleading though.

Anyway, from your point of view, if one doesn't use those new features, is there no issue in using this lib of yours? All my analytics will still be tracked as if I was using the original version?

Still, is the resume installation still the recommend one? I'm sure I've seen a blog post from you with a different, shorter implementation. Not sure if it was an older or more recent implementation.

@rfgamaral

if one doesn't use those new features, is there no issue in using this lib of yours? All my analytics will still be tracked as if I was using the original version?

All analytics (other than #46) are tracked normally. I'm using this in my own projects and it works just fine. You might see some differences in the amount of absolute visitors/events when migrating, because some ad blockers do block analytics.js, but they don't necessarily block ga-lite. But Google Analytics numbers are not absolutely accurate anyways (I'm generally seeing 20-50% less page views at Google Analytics than in my server logs because of the popularity of ad blockers, regardless of if I'm using ga-lite or the official analytics).

Still, is the resume installation still the recommend one? I'm sure I've seen a blog post from you with a different, shorter implementation. Not sure if it was an older or more recent implementation.

The one in README is the most up to date. The 1.x version had a shorter snippet (which is still available from npm/jsdelivr if you liked the old syntax) and it is not supported anymore in the 2.x version. The new 2.0 version introduced many new features, including event tracking, so you might want to use it if you're doing anything else than page view tracking with your Google Analytics.

Well, to be honest, I decided to just conditionally load GA if not being crawled by Google PageSpeed Insights: rfgamaral/ricardoamaral.net@a161379

I've switched over to using the gtag format for one of my clients, as they are now running multiple tracking campaigns, so the final bits of JavaScript are something like:
gtag('config', 'UA-XXXXXXXX-1');
gtag('event', 'conversion', {'send_to': 'YYYYYYY-YYYYYY});

It isn't clear to me, if ga-lite supports this or how to go about implementing it.

@jamesjohnmcguire Seems that you're using Google Ads on your site. This piece of code is responsible for sending the conversion information for Google Ads:

gtag('event', 'conversion', {'send_to': 'YYYYYYY-YYYYYY});
(See more: https://support.google.com/google-ads/answer/7548399?hl=en)

ga-lite unfortunately only supports Google Analytics; this project does not support any other Google Tag Manager related projects like Google Ads.

Снимок экрана 2021-11-18 в 20 06 03

Google's new way doesn't solve the Web Core Vitals problem