I have a gtag account setup and that also connects to google analytics.
And I have made a successful tag/trigger to make event tracking for when an FAQ item is opened at my clients FAQ-page
I am sending the trigered FAQ question text as a value as well. And I wish to have a list in Google Analytics in which the questions are shown in a list.
Am I missing something? Should I setup the trigger/tag in another way, or am I missing something in the GA.
Thanks for taking your time.
DEBUGGER
TAG CONFIGURATION:
GA:
The event value in Google Analytics must be a number. You are currently passing {{Click Text}} string, which actually gets ignored by ga object, and will not reach Google Analyitics. More details on event tracking.
Basically, you should send this text data in a text field into Analytics.
Original recommendation, using custom dimensions:
I recommend you to set up a hit based custom dimension, where you can submit additional text data in connection to your event. You'll be able to analyze it as a secondary dimension in standard event reports, or by creating custom reports.
In GTM, you have to modify either the Google Analytics setting variable, or the Analytics tag itself, and assign the desired value (click text in your case) to the custom dimension ID, which you have created in Google Analytics. E.g. custom dimension 6 gets passed like this:
An other option, based on Eike's suggestion:
You can also use any of the other standard event fields for this, e.g. send it in the label. As pointed out, this can even hold larger set of data (500 bytes), compared to custom dimensions (150 bytes). This is also easier to be implemented in GA and GTM as well, as you don't have to deal with custom dimension creation and reporting.
Related
MY QUESTION
What should I select when creating the custom GA4 dimension to integrate Google Analytics with Clarity?
MORE INFO
The documentation says to remember the Event Parameter Name (so I know the scope = event) but it does not discuss the other variables that are required fields.
1. ☒ Scope = Event
2. ☐ User Property/Parameter?
WHAT I TRIED
Based on some Google documentation I first tried using this to pick up the dom title.
User Property/Parameter = page.title
This is picking up data from GA, however, when I tested this prior to production use, the data looked different and showed user traffic rather than number of events.
CONCLUSION
Can we get more information around how Clarity and GA work together, specifically the GA4 component?
I need to know why my Purchases are not being stored in Google Analytics, the Preview of Google Tag Manager shows that I've enableEcommerce set to false, but as you can see I've this in Google Analytics Turned ON.
After following documentation, I've this dataLayer only in the thank you page:
As you can see:
1) I'm generating the products Array,
2) The tag is fired correctly.
3) enableEcommerce : false
Point 3 is what is not clear to me, because I've Ecommerce Enabled:
enableEcommerce: false
UPDATE 1
Based on kgrr's answer, this is my current setup.
event fires
dataLayer:_
dataLayer (first field name)
Google Analytics TAG Variable
UPDATE 2
Not as conversion:
Based on all the details, you have shared, there a few errors, that you should fix, to get your purchase tracking working.
Your tracking ID is incorrect. You can provide a tracking ID either by adding it directly as a Tracking ID, or adding it as part of a Google Analytics Setting variable. (Where it will be provided similarly as Tracking ID). At the moment, you pass your Google Analytcs Settings variable into the tracking ID field. As you have already prepared this type of variable, I suggest to use it in its proper place, but remove tracking ID provided from the Google Analytics tag. The only setting to be overwritten, is the enhanced ecommerce setting. (As it seems from the images.)
Your purchase object is not following the enhanced ecommerce format. Based on the documentation, the products array is part of the purchase object. At the moment, they are siblings in your code, so GTM won't be able to process, and append it to the event.
Your product objects are not following the enhanced ecommerce format. At the moment, you are not using the proper keys in your product objects, so GTM won't be able to pass this data to Google Analytics. This is a general reference about the product data, and this is a working example, how various attributes are passed to GTM. You should fix the key-value pairs to match the format requested by GTM.
Update:
Also, you must ensure, that enhanced ecommerce feature is enabled in your Universal Analytics tag or your Google Analytics Settings variable. If it's not enabled, GTM ignores this data.
I am using Google Analytics for years for my iOS apps and was truly satisfied with it. For my regret Google is sunsetting Google Analytics later this year so I am switching to Firebase API so I can keep tracking my apps. I already done most of the integration work and can see the events appearing in Firebase console. However, I can't see custom parameter values but only event count.
For example, sending event named add_book and adding parameter named isbn with value of 1234, I will be able to see in the console only the number of times that add_book arrived and also that it contains an isbn parameter. However, it seems there is no way to view the value (i.e. 1234) of the isbn parameter. I registered the isbn parameter for the add_book event as required. Am I missing something?
Does having the full functionality of the sunsetting Google Analytics (including advanced filtering + regex filters, etc.), means I should use both Firebase Analytics and BigQuery together?
By the way, I linked Firebase Analytics with BigQuery and exported the data as suggested by Firebase Analytics, but I can't see any Analytics tables yet in BigQuery. Do I need to allow several hours before I can view the exported data?
As of March 2019, Firebase Analytics is not so easy to use or test when setting it up (in comparison to Google Analytics). The main steps for setting up event parameters are:
Send your events with their event parameters. Send at least 80-90 events of one type, otherwise the parameters will appear as zero or "not set", until you reach 80 individual events.
The events will not display in the website until after one day. So wait for 24 hours.
When the events appear on the website, you must register their event parameters, with the '3 dots' menu -> "Edit Parameter Reporting" - Like this:
Then:
(Image credit: Firebase Analytics custom events params and Firebase Analytics. Can not add custom parameter to event )
After registering the event parameters, you must wait another 24 hours to see the parameters displayed on the website.
More info:
https://www.reddit.com/r/androiddev/comments/9zbvk4/alternative_to_google_analytics_not_firebase/
https://www.tatvic.com/blog/firebase-analytics-reporting-tips-overcome-limitations-favorite-mobile-app-analytics-tool-google/
In your event overview from Firebase Console you can enable parameter reporting for individual events. The option is found in the 3 dot overflow menu.
You can do that for up to 10 unique text parameters and 40 unique numeric parameters.
Beyond those limits or for more control BigQuery is the way to go. And yes you need to wait for your first data in BigQuery. They populate a new table with one days data every day once.
I need to track events in Google Analytics from a server through the Measurement Protocol. I can do this just fine, but my problem is that I want to send additional/custom data along with the event. Specifically, I want to send a UUID along with the event so that it is possible for me to fetch data from the Google Analytics API in the future and correlate events with rows in a relational database.
Is there any decent way to send custom data along with events? I looked at using the event value, but it must be an integer, and it is not intended for things like this. The event category, action, and label are reserved for other purposes.
I am not that proficient in Google Analytics, so the solutions off the top of my head would be:
Send an additional event containing the UUID in the event label or something like that. Seems like a bit of a hack/workaround to send two events, with one being used exclusively behind the scenes.
Perhaps using a custom dimension or metric. I am not 100% sure about the implications of this and if that's a decent approach or not.
So basically my question is: what would be the best way for me to send a UUID along with a Google Analytics event from a server, taking into consideration that I cannot use the event category, action, and label for the current event? Is there any other way in which I could link events retrieved from the Google Analytics API to rows in a database?
So let's say I trigger a "Completed Order" event to GA, and I also have orders in a MySQL database. So what I want to do, is to link an event to an order row in the database.
There are several things that you can do and it pretty much depends on what you want to do with the information you are storing. For starters, all your requests should include the uid field with the value being the user ID within your system. This way all Google Analytics data will be calculated on the same user. Note: this is an internal value used within Google Analytics and you won't be able to see it.
Second, I would create a custom dimension of the name user_id and store the user information in that. You will then be able to use this information within your reports to see what each user is doing. Note: it's against TOS to send user name, email, or any other PII (personally identifiable information) to Google Analytics. But you can send your internal user ID.
I have done both of these in the past and found it to work quite well.
More info on User-ID.
As my heading suggest, I would like to know if it is necessary to implement a Data Layer to push Custom Metrics and Custom Dimension data from Google Tag Manager to Google Analytics.
Some guides I have seen seem to suggest you do not need to implement a Data Layer: http://mixedanalytics.com/blog/custom-metric-ga-google-tag-manager/
However, there are others that suggest you need to: https://campaigntail.com/Blog/Ultimate-Guide-Custom-Dimensions-Metrics-Google-Analytics
When I say implement a Data Layer, what I mean is insert code like this into your website:
// Set value for custom dimension #3.
ga('set', 'dimension3', 'variant a');
// Set value for custom metric #1.
ga('set', 'metric1', 1);
// Send pageview. Passes the dimension and metric to GA.
ga('send', 'pageview');
I have tried implementing the first method but failed. So was wondering what is the right way to go about it.
Thank you.
(Edited because of stupid). Your code example does not show a datalayer, it shows a part of Google Analytics tracking code that wouldn't event work with a standard GTM setup (because GTM uses unique tracker names).
A datalayer is an an array of JSON objects that you can use as a container for your data. However GTM is happy to accept data from almost anywhere, including values that are directly written into your tracking tags. So no, you do not need a datalayer (other than in the sense that GTM will automatically create the datalayer that it needs to function).
Remember the data takes some time (up to 24 hours) to show up, and custom dimensions/metrics are not part of the standard reports. You have to create custom reports, or select your custom dimensions as secondary dimension in a standard report.