Google Analytics automation using Selenium webdriver - google-analytics

I am doing automation of GA using Selenium web driver. The issue I am facing is sometimes when I trigger the events from Selenium web driver are getting recorded on GA and sometimes they don’t. The behavior is totally random of which events get showed up on GA real time. I do see the Active user increments under Events so that means the script is talking to GA.

Related

Google Analytics not displaying data from GTM

I'm trying to create a Tag in GTM that will show as an event in GA when triggered. In addition, I'm trying to see the debug mode flow on GA that is coming from GTM in preview mode.
Debug mode not working
Earlier when setting up the account, I noticed the Debug Mode in GA isn't receiving any data from GTM. I tried implementing the debug_mode = true (Fields to set) in the GA4 Configuration Tag, as well as using the Google Debugger extension. Both didn't work.
GA4 Events not working
Although GA is reporting regular activity (sessions, engagement, etc.) it fails to gather the new GA4 event I set up in GTM. I followed a step-by-step tutorial by MeasureSchool on YT (https://www.youtube.com/watch?v=IkMRRcwEfi8) to accomplish this. Didn't work either.
Preview mode not showing GA Container activity
When entering "preview" mode, while the GTM container is reporting successful Tag fires, the GA is displaying a "No hits were sent by this container" message.
At this point, I am convinced there is a broken connection between GTM and GA, since quite remarkably, the two work perfectly on their own.
However, before I restart the entire process and start from scratch, I was wondering whether anyone has a clue to how this can be solved?
Many thanks!
You haven't completed debugging properly.
Use the network tab in chrome's devtools for debugging. Or use adswerve's datalayer debugger to get the same info in the console. Make sure you see events flowing to google's "collect" endpoint. Disable your adblockers. Make sure the tid field in the event payload is the same as your GA's property id if you still attempt to use GA UA, or it has to match your measurement id if you're using GA4.

How to speed up loading of Google Analytics 4 tracker?

I’ve been experiencing a discrepancy in terms of page views between GA4 and GA3, both installed through GTM page view event.
I notice that GA4 is much slower to send the collect request compared to GA3, literally takes 3-4 seconds more from my office connection and pc.
I think that this is the main cause of discrepancy between the two.
Is it possible to somehow speed up GA4 tracker?
I remembered Google design this feature.
Here is the reference from a blog post
One thing you might have noticed is the delay it takes for the hit to
be sent. When you load the page, you can see how the browser waits a
few seconds before dispatching the hit to GA. This is because GAv2
batches requests automatically, which, again, is a great feature
upgrade.
Link
GA4 now will send multiple event as one request. But you don't need to worry about this will lost some event if user close the browser suddenly.
Here is the article from Google
Note: When a user's device goes offline (for example, a user loses their internet connection while browsing your mobile app), Google Analytics stores event data on their device and then sends the data once their device is back online. Analytics ignores events that arrive more than 72 hours after the events are triggered.
Link

Workbox Google Analytics doesn't work log events to resent later

I'm trying to implement the Google Analytics's Workbox Plugin on my application, which works most of the time offline. I used the webpack plugin as well to generate the service worker (SW). I used the method GenerateSW({offlineGoogleAnalytics: true}). But, unfortunately, after the SW be registered it didn't created an database for the workbox background sync, neither a table for the request (as seeing on this demo). On my application the SW is active and running but it doens't make requests, neither setup the indexDB. I'm using and local version of the gtag.js and it works as expected when the application is online, the events are logged on Analytics real time dashboard. But offline the requests aren't saved to be resent later. What I missed for this feature to work?

Can I switch my Google Analytics property from GA4 to UA?

For some reason PowerBI does not accept GA4 as a connection, so my data is stuck in GA4.
PowerBI does support Universal Analytics (UA), but I cannot find a way to convert my GA property.
Is there a way to do this or should I start over again and create a new property as UA?
PowerBI currently doesn't support GA4 as a destination because the underlying api is not product ready yet. See the response in the microsoft power BI community here: https://community.powerbi.com/t5/Desktop/Power-BI-Google-Analytics/td-p/1679530
For information about the api's and their current state:
This is a link to the api documentation the plugin is using (for universal analytics): https://developers.google.com/analytics/devguides/reporting/core/v4
This is a link to the api documentation of GA4 (which is still in beta): https://developers.google.com/analytics/devguides/reporting/data/v1
Regarding a solution for your issue:
In GA4 is it possible to export data to big query, which can be processed there and imported to PowerBI: https://learn.microsoft.com/en-us/power-bi/connect-data/desktop-connect-bigquery
The export only works from the moment you enable it, so it is not possible to access the data this way before the enablement.
Second option is using data studio to connect to your GA4 data to be able to access the data you have measured before.
First off as everyone says you cant change the type of your Google analytics account if it was created as UA then its UA if it was created as GA4 then its GA4. There is also no way to exxport data.
Now lets look at the underlying cause of your problem Google analytics connector in Power BI Desktop rely on the Google Analytics Core Reporting API this API is used to extract data from Google Analytics UA accounts. There is a very big difference between the underlying data structure of a UA account and a GA4 account they are not completable in any way shape or form.
Thats why the Google analytics team is currently developing the Google analytics data api This api has the ability to connect to Google analytics GA4 accounts and extract data. At the time this post was created Power BI Google Analytics The Google analytics data api had just been released and was still in alpha test phase as you can see from the change log this API is still under development. I haven't checked but it looks like it may even be out of beta now. (TBH I am not really sure of the exact date it was released publicly as I have been in the alpha test group for a long time.)
However that being said a lot of the client libraries used by this api are still under development as well Google .Net Client library for Google Analytics Data API for example is still in beta. At the time that post was written i am almost 100% sure the client library had not been released.
This means that any power bi connector is probably not going to be released until both the API and the client library are considered stable. I know the team is working hard on the API and I Haven't seen any breaking changes in a very long time.
So to the user who added a bounty to this looking for an updated answer.
IMO I don't think you have long to wait before everything is stable enough for applications like the Power BI to start appearing that support GA4. That is assuming that someone creates one.
You can't covert GA4 to UA (or UA to GA4).
In your case you can create a new UA Property and start to track in it:

Google Tag Manager and sending data offline

I have a question to the following case. We want to track a content platform using google tag manager. However, not every time the platform is online but GTM would send data to our internal server. Therefore our concern is if data collected during this offline period will be kept or if we loose them.
Do you know if there is some period during which data collected offline through Google Tag Manager is kept and once it gets online then it is sent to Google Analytics?
Thank you,
Lukas
No, that is not how Google Tag Manager works. GTM for web is basically a javascript injection engine. It bundles your configured tags,triggers and variables with a selector engine and injects that into your page. There is no serverside component that stores data.
I'm sure one could come up with a solution to your problem - e.g. store your data with localstorage in the browser, poll you server to see if it is available, and when it's online send the data with a queue time parameter to Google Analytics. However that has nothing to do with GTM.
Having said this, it is hard to understand your use case - if your server is offline, then where does the data come from ?
If you have an offline PWA app (with a Service Worker), you can use the Workbox Google Analytics module to handle the collection of data, and to report it upstream when your site comes back online.
This module has a service worker fetch handler that intercepts the calls that you would make with analytics.js or gtag.js, and stores your data locally in IndexDB in the event that the call fails because it is offline.

Resources