How would you send offline events and antidate them of more than 4 hours (which is the limit of the qt param)?
You can use measurement protocol (https://developers.google.com/analytics/devguides/collection/protocol/v1) to send offline events to Google Analytics, but you cannot place them in the past (the moment when the hit arrives in Google Analytics is authentic).
Related
What is a reliable way to send server-originated events (like purchase and refund) about specific mobile app users to Google Analytics 4 today?
As far as I can see, GA 4 Measurement protocol is still in the alpha stage. I've tried to implement it, however, it does not work (events sent to it are available in Realtime Dashboard and in intraday BigQuery table but they are not present in the daily dump of BigQuery and in the Google Analytics dashboards. Recently even this stopped working and I can't see any events nor in BigQuery neither in Realtime Dashboard.)
Also, there is a feature called Google Tag Manager Server Container.
I've found there a way to send events to GA4. However, it seems that GA4 Tag supports only events which were collected from web pages (it has Measurement ID parameter only, which corresponds to a specific data source in Google Analytics), but does not support mobile apps.
I've updated refund information with transaction ids which i get from our e-commerce site API. it seems our api sent transaction ids that was not sent to Google Analytics 360 in the first place. So I see refunds in Google Analytics 360 that is not added as Sale before.
I have API Call response ids logged.
Can I make a call to Google Analytics to rollback that actions for that ids ?
Any idea ?
Google analytics data is write only. Once the hits have been sent they are set in stone there is no way to rollback anything you sent to Google analytics.
If this is an ecommers transaction then what is normally done is that you send another hit negating the original hit. So if you sent 1 and you want to remove it you send a -1 and it works out in the end. see reverse eCommerce transaction
I recently created a new Google analytics account for testing purpose and for this account(tracking id) sending event hit, pageview hit and exception hit using measurement protocol(server-side protocol) is working and I am able to view statistics in google analytics.
But when I try to use tracking id from an old google analytics account (which is used in my production environment and it has been used to send event hit and pageview hit using analytics.js), google analytics doesn't show event hits or pageview hits sent using measurement protocol(server-side protocol).
Any help will be appreciated. Do we have to enable accepting requests from measurement protocol somewhere in google analytics or developer console settings?
I just had the same issue while testing on the hit builder tool, and the issue was that I was filtering my IP from Analytics so the events weren't showing on the real time dashboard. I removed the filter and the events started showing up.
I'm trying to implement the Enhanced Ecommerce tracking with Google Analytics and ran into a few questions.
Can you only send impressions with the pageview event? So how would I send impressions of items loaded after the initial pageview event?
I wanted to send product impressions on search result pages, which are in blocks of 10. When I try to send along with the pageview, it never sends, I'm guessing because it's too long for Google, so how would I send multiple at 1 time? I can get upto 6 products and have it still work.
Should I just use an event to track impressions? Would this solve the sending and size issue if I made a call for each product?
Any guidance would be appreciated. I feel the documentation is lacking a bit with some specifics.
You don't need to necessarily send ecomm data with the pageview. As stated here https://developers.google.com/analytics/devguides/collection/analyticsjs/enhanced-ecommerce, in the "Sending Enhanced Ecommerce Data" section:
Note: Ecommerce data can only be sent with an existing hit, for example a pageview or event. If you use ecommerce commands but do not send any hits, or the hit is sent before the ecommerce command then the ecommerce data will not be sent.
There's also more information in this SO post: Tracking catalog product impressions - Enhanced Ecommerce Google Analytics.
I'm not sure if there is a hit limit for EE transactions as there are for other types of hits (limit of 500 hits per session), but if you are worried that you'll reach some limit, whether it's EE or not, or if you think you'll send more than 20 hits per second, then you can throttle the hits being sent to Google.
Mixpanel, Localytics and so on record events even when the user is off wifi and send it over when he comes back again. I couldn't find much detail if Google Analytics is able to do that. So is it?
I think this is what you are looking for.
The Google Analytics Measurement Protocol allows developers to make HTTP requests to send raw user interaction data directly to Google Analytics servers. This allows developers to measure how users interact with their business from almost any environment. Developers can then use the Measurement Protocol to:
Measure user activity in new environments.
Tie online to offline behavior.
Send data from both the web and server.
https://developers.google.com/analytics/devguides/collection/protocol/v1/
More specifically there is a parameter called queue time - you can send an offset between the time when an event occured and the time is was sent to the server.