"There is no data for this view." in reports with custom dimensions in Measurement Protocol of Google Analytics - google-analytics

Our application needs to gather usage data through the Measurement Protocol of Google Analytics.
We can successfully send "appview" hits to the Google Analytics server, and get a proper response by it (a GIF image). The appview hits appear on the GA Dashboard, along with the country of origin, session duration, etc.
We also have several custom dimensions and metrics that we want track for each hit. We have set those up in the GA Admin panel with the correct scope, index and active state. We have 3 Hit-scoped dimensions, 3 User-leveled dimensions and 1 Hit-scoped metric, all set to Active state.
We send the dimensions and metrics as described in the docs at
Custom Dimensions / Metrics
attached to the hits they apply for, like so:
...&cm1*=3 <--for the metric
and
...&cd6*=15 <--for the dimensions (some dimensions have numeric values, others are text)
The problem is that those metrics and dimensions don't show up in our custom reports: the reports always say "There is no data for this view.". For example, we have a report that has one dimension and one metric, without any filters, set to "Any view". It doesn't matter if the Type of the report is Explorer, Flat Table or Map Overlay, it never shows anything.
There have been several days since the hits were received and appeared in the dashboard, but the reports are still empty. So scratch out any processing lag.
We tried sending "event" hits instead of "appview" hits - again, the hits show up in the Dashboard, but the reports are empty.
We cannot get any useful insights without using dimensions and metrics - so there is no way to get by without this.
Because of reasons too long to describe, we cannot use any of the Google-provided Analytics libraries.
Is there anything else we need to do to see data in those reports?

When using the measurement protocol you need to that the profile is not set to exclude bot and spiders.
Go to the google analytics website under the admin and the settings under the profile in question.
Beyond that check the realtime reports you should see the hits coming in. You will need to wait 24 -48 hours for data to appear in the standard reports due to data processing lag.

Related

Metrics and dimensions are not showing up for hits of type 'event'

I have a fully functional and working code (written in C#) which purpose is to track some hits to the specified GA property. This code has been tested and still works successfully. It adds some predefined dimensions (like App Version) to each hit and a several custom metrics to a certain hit types (like event with a certain Event Action).
So far so good everything works flawlessly when taking into account the first property to which these hits are being sent. Also everything is fine when I set up a brand new GA property and track my hits to it - that is, I'm able to see events in Realtime reports, and events show up in custom reports after a while so that I can see my custom metrics.
The issue is that when I try to send absolutely the same hits to the existing property which had been created and configured ages ago - there is no both dimensions (even predefined) and custom metrics in my custom reports. I see these events in realtime and behavior reports, and I'm even able to create a custom report against events count - but that's it. I'm able to use for example Day of the month as a primary dimension, but when I try to use App Version as a dimension or my custom metrics as report metrics - it says "There is no data for this view.".
I've already tried everything I could, have read almost every post about custom definitions in Google and viewed almost each related SO question and answer - still with no luck.
We use measurement protocol
There is a correct User Agent being sent with each hit
17 days has passed since my first attempt to track these hits with existing property
There is no filters and segments at all
There is only one view
For me it looks like a property misconfiguration, but I've inspected each configuration page (I have all possible rights granted) and have not found anything related.
Will appreciate any help with this issue.
UPD: The hit itself (with the sensitive data replaced):
t=event&ec=session&ea=connection_end&el=b225d53a-6bb2-8021-f7b5-ae7004ae0a00&cm1=174960&cm2=1751494&cm3=479033&tid=UA-XXXXXXX-X&cid=4119e77f-be87-4530-04d3-33882f8eea77&v=1&av=XX.XX.99.555&an=my-awesome-app&aid=app.awesome.my
UPD: Here is what I'm trying to achieve (screenshot was made at the test property, where everything works like a charm):

Custom Metric data not showing up in Google Analytics

Background
I am currently using Google Tag Manager to populate the Sales amount into a Custom Metric in Google Analytics. This is the code I use to push Sales amount to Google Analytics.
ga('set', 'metric2', {{salesvalue}});
Other information
My custom metric set up in Google Analytics: https://i.imgur.com/kX3aUto.png
I know that the metric is firing with the correct values since it is showing up in GA Debugger: https://i.imgur.com/lGIxCw1.png
Error
Despite the above, I do not see any information in Google Analytics: https://i.imgur.com/WtxChgY.png
Questions
Is there anything wrong with my setup? I have waited over 3 days but still no data.
By using ga('set') does it mean that if a user makes 2 separate purchases in the same session, only the latest sales figure will be reflected instead of the total of the 2 purchases?
Thank you
In your GA Debugger console, the metric2 parameter should be appearing within the pageview send data (along with all the other data being sent to GA at that time). If it is not there, you could be running into a race condition or some other technical issue. If it is there, then you'll know that it is definitely being sent to Google Analytics and something else is wrong. It should not take long to appear, and if you see any rows of data (as you did with your screenshot) the metric data would be there at that time.
Regarding your 2nd question, custom dimensions have scopes that are configured when you create them, but custom metrics simply add up. If I had a custom metric of "clicks on a button" and user clicked it 3 times in their session, the custom metric would be 3. Likewise, if your custom metric is listening for sales value, it will add up to the total value in that session.
Hope that helps at least get you some more clues as to what is wrong.

iOS: Issues with switching from Google Analytics to Firebase Analytics

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.

Get sessions info in #google-apis-explorer

I use unique IDs for clients. Once user enters the site, I use google tag manager to save client ID in analytics dimension3.
Once an e-commerce event is triggered, I use google analytics API to request info for that particular user sessions using filter dimension3==XXX (client ID)
For every session of the selected user I want to get from Google Analytics:
When the session started
Landing page
Session duration
Operating system, browser, screen resolution, referrer, medium and some other general parameters.
What I'm looking for is a way to get information like in Google Analytics -> Audience -> User report (where you can see what a particular user was doing).
But as far as I can judge Google Analytics API can provide only summarized info (metrics divided by dimensions). It's more like SELECT GROUP BY statement but I meed more like SELECT WHERE.
Is there a way to get what I need?
PS. I request the following dimensions:
ga:fullReferrer, ga:landingPagePath, ga:operatingSystem, ga:mobileDeviceMarketingName, ga:source, ga:dateHourMinute, ga:dimension3, ga:screenResolution, ga:browser, ga:browserVersion, ga:medium, ga:dateHourMinute, ga:sessionDurationBucket (2 requests in a batch)
The metric I use is: ga:sessions
What I get is not really what I need for I need information on SESSION (eg there were 30 sessions, I need 30 rows in the result, instead I may get 1000 rows result because analytics splits the metrics into dimensions... ))))

Core Reporting API v4 sampling limit for click data

After how many clicks will the Core Reporting API start to sample the click data, when using samplingLevel=LARGE?
I'm trying to retrieve data from a large account (i.e. more than 30,000 clicks/day on average) and the number of clicks doesn't always match what I can see on Google Analytics. This, however, seems to happen only on this large account, and not every day. Strangely, on those days where the click count doesn't match, transactions and revenue match what I can see in Google Analytics.
In my query, I'm only trying to retrieve the data for a given account, without applying any filter.
EDIT: If I don't retrieve data aggregated at the account level ― thus not including ga:adwordsCampaignID, ga:adwordsAdGroupID and ga:adwordsCriteriaID in the dimensions ― I can retrieve all the clicks.
EDIT2: If add the ga:deviceCategory dimension, along with ga:adwordsCampaignID, ga:adwordsAdGroupID and ga:adwordsCriteriaID I can retrieve all clicks. I'm not sure if this can help narrow down the issue.
Google Analytics has a cardinality of 50K after that you ll receive (others)
Based on the "EDIT" i can safely assume the reason is that when a click doesn't have an 'ga:adwordsCampaignID' associated with it, it ll not retrieve that click. This happened to me with custom dimensions.
EDIT: Try using the 'include-empty-rows' parameter on your query. https://developers.google.com/analytics/devguides/reporting/core/v3/reference#includeEmptyRows

Resources