Google Analytics - How to identify sessions when downloading data through API - google-analytics

I plan to download data from Google Analytics through API, possibly hits using Client ID as a primary dimension. However, I do not know how to identify the sessions in which these hits belong. Any ideas? Thank you.

If you've already set up and started tracking client ID as a custom dimension, then you can report on which hits belong to which session via the ga:sessionCount dimension.

Related

Get google analytics stats for a user identified by a custom data layer property

We have the following scenario:
Website A has GTAG installed and tracks every page visit, sending a internalUserId along in the dataLayer (when the user is logged).
Website B is a CRM where we list all users, and it uses the same database as Website A.
In the CRM we need to see what pages each of our users have visited.
Proposed solution:
Ideal solution: call Analytics API passing internalUserId and returning a list of pages the user visited.
Alternative 1: make Website A call an internal API that registers a visit, along with any other metadata. Unfortunately the dev team behind Website A wants to avoid this approach as it will send yet another request on every page, thus slowing the page down.
So the suggestion was to leverage analytics to gather this information.
Alternative 2: somehow instruct Tag manager to call an external API every time a visit occurs, and send along any meta data. I don't actually know if Tag manager offers this service or not.
The alternative 1 & 2 will mean that we will store the visit stats, while the ideal solution will use Analytics stats.
So the question is:
Does Analytics API offer the ability to query for a specific user identified by a custom property, internalUserId, that we set using dataLayer, and return that user's stats (visits) ?
Thank you very much
I don't believe you can query Google Analytics API using your internalUserId unless you set it as the user ID in GA, which may lead to limitations. You'd be better off merging the data by collecting the _ga cookie along with you internalUserID values. Look up all user activity by _ga and then merge to your CRM data with internalUserID.
I don't believe alternative 2 is possible.
Alternative 1 would require you store the data yourself and a client side call, but you'd avoid ongoing GA API usage. The calls from client side could be minimal. Use a Cloudflare worker to fetch and process only the data you need, that could be an interesting solution.

Saving statistics to Google Analytics

I'm relatively new to Google Analytics and would like to have some inputs.
So I have a web application that people can install to create a backup and can do restores as well. The application has an API where you can see the statistics of the app i.e. number of backups made, restores made, and the number of clusters connected to this application.
Now I want to send these stats to google analytics with an interval of 10 minutes. I was wondering if I can send the status to Event with a unique UUID as Event Category, the backup/restores, or nodes as Event Labels and the number as Event Actions.
Is this the right approach to using Google Analytics Events? Or is there a better way to do it in GA? My requirement is I have to do it in GA or should I use a different hit type.
Given that we are talking API's you intend to use the Measurement Protocol?
And the UUID refers to the unique user? if so, you should look at the uid https://developers.google.com/analytics/devguides/collection/protocol/v1/parameters#uid
As to using Events versus Hits, using hits is probably easier on the reporting.

Can I use a GCLID to generate a page view as if it came from the original owner of that GCLID

I've been looking into offline tracking of google analytics goals. I want to implement this in a similar way to how call tracking companies do and I'm guessing the GCLID is the answer.
If I store the GCLID of every visitor that comes to our website in the database alongside some info about their session and then identify their session at a later date as one that produced an offline goal, can I then generate a goal from that?
My thinking is that if I had a button in our CRM system that when I click it opens up an invisible iframe that links to mysite.com/goalurl.html?gclid=xxx then analytics on that page would track a goal on that page but attribute it to the original click that the other user made on our PPC advert. Theoretically I could do this 10 times in a row for 10 different sessions and they would all be tracked as if the 10 original owners of those GCLIDs has visited the goal page, right?
Am i missing something here? Would this not work because Google would spot that they all came from the same IP address, or because I would have the same GA cookie on my machine? Or does Gogole not care about any of that?
Any help would really be appreciated.
I am not sure if it works with the gclid but would also be interested in the answer.
Besides that, a possible solution is to store the Analytics client ID in your own database and, whenever there is a conversion, sending that conversion data (referencing the recorded client ID) directly from your server to Analytics by using the Measurement Protocol.
Exactly this topic is a case study in the book "Google Analytics Breakthrough: From Zero to Business Impact".

Tie Google Analytics to Marketo Cross Domain Sub Domain Tracking API?

We are currently using Marketo for our landing pages but it is not the same domain as our company site. We are also using Google Analytics.
We have used this guide to tie our Analytics session to our anonymous or known Marketo record by inserting the Marketo User ID as a Google Analytics User ID and added the Marketo User ID dimension & set the scope as User.
Per this article, if we would like to have our Lead ID be recognized on non-Marketo landing pages, like our Corporate website, that we will need to do some extra API connections. Has anyone done this with success? I found that there is some Cross Domain Sub-Domain Tracking located here.
Would I only need to tie the visit to our corporate site to the Marketo Sub-Domain site visit as stated in the link above, which would then be tied to the MarketoID dimension that we just made shown in the first link provided?
Not sure what to do to make this happen or if it is as simple as doing the cross domain sub-domain tracking.
Apologies if I am not making any sense.
Thank you so much!
I'm not sure I understand your question entirely.
Are you trying to link/merge a known Marketo record on one domain to an anonymous Marketo record on another domain, and then pass that single Marketo record ID to Google Analytics?
This would involve matching the Munchkin cookies on both domains to Marketo records, probably via the REST API, then merging the two records.
Once you have merged the records from the two domains, you could pass this single Marketo ID to Google Analytics, using the same ID for both domains.
Resources:
http://developers.marketo.com/javascript-api/lead-tracking/api-reference/#munchkin_associatelead
http://developers.marketo.com/blog/get-a-visitors-cookie-id-and-then-query-associated-lead-data/
You can develop a javascript that capture the GA ID and MKTO cookie and store them in a databased. Then, sync the database with mkto and append the GA ID to the lead record.
We've developed a tool that does that automatically, without any coding and allows you to track leads/visitors cross devices and domains.
Check it out: https://gapidu.com/

Can I present google analytics data to users within my application?

I'm creating an auction site and would like to provide my sellers with analytics related to their product pages - visitors, search terms, etc. I could roll my own analytics but want to know if it is possible (or forbidden) to use google analytics within my application and present that data to my users. Is this possible, has anyone done this and, if so, how did you go about it. Thanks in advance
Sure, you can do this.
The easiest method is to give your sellers direct access to GA. I have no idea how you have your GA interface setup but you can setup profiles in lots of different ways (filters, segments, etc..) to have the profile show data only for the specific seller, and give their GA account access only to their profile.
Alternatively, GA provides an API for retrieving data from them and displaying on your own site.
Also you can provides Real time data reporting via Google's Real Time API - https://developers.google.com/analytics/devguides/reporting/realtime/v3/devguide
Which will provide several data in the manner of dimensions and metrics

Resources