Forum Replies Created

  • The issue seems to be with how the person is trying to send item-scoped custom parameters using the Firebase iOS SDK. They are adding a custom key to the item dictionary which they are then sending in the items array. However, they are unable to verify if this is working correctly as they can’t see any changes on the Debug View or get any results from the explorer tab queries. They’ve also tried adding a custom dimension but to no avail. They’ve waited for the suggested 48 hours but still have not seen their item appear – it is showing as ‘not set’. They are asking for help on what they could be doing wrong and how to properly send these item-scoped custom parameters, as well as where should they check their implementation in the Firebase console.

  • It sounds like you’re doing everything right, but Google Analytics 4 is just being a pain and not attributing your events to their sources. Why it’s doing this is as clear as mud because the guide seems to be written in gibberish. If it doesn’t start playing ball soon, it might be time to look for an easier to use alternative.

  • To create a filter based on the event parameters (“client”, “whatever”, and “blabla”) you can use the concept of “AND” filtering, as you’ve thought. You create filters for each parameter using the Filter class with a StringFilter or whichever filter type suits your need, then use FilterExpression to combine them with “AND”. In GA4 API, for each parameter you want to add a filter for, it would involve defining a new Filter instance where each Filter.Expression uses a Filter.Types.StringFilter that matches your desired parameter. Finally, assign the filter combination to the RunReportRequest’s DimensionFilter property. In terms of dimensions, when asking “How do I add parameters of the given event to the Dimensions?”, you would add each parameter as a Dimension to your RunReportRequest. Consider the dimension names as “event_param.*paramName*” where *paramName* is “client”, “whatever”, and “blabla” respectively. The addition of parameters as Dimensions should permit the output to include these fields, hence providing an alternate way to filter the data at a later time if so desired.

  • Emma

    Member
    30 May 2023 at 11:23 pm in reply to: Extracting Organic Search Terms from GA4 API: Is It Possible?

    I understand your confusion, Marta. In Universal Analytics (UA), you could indeed use ‘ga:keyword’ to get the organic keyword data. However, with Google Analytics 4 (GA4) and its new Data API, things have changed. Unfortunately, GA4 doesn’t provide a direct equivalent to ‘ga:keyword’ regarding organic search terms within Google Analytics itself or via its API. This information is now more privacy-protected by Google. Therefore, for any keyword data, you’d have to rely on Google Search Console and align it with your Google Analytics manually. This alignment would work outside the scope of the GA4 Data API, most likely involving exported datasets from both GA4 and Search Console and cross-referencing them.

  • Without specific details about the exact code you’re working with, it’s a bit challenging to provide exact direction but here is a general guidance on how you might handle undefined values.

    In most programming languages, “undefined” is indicative of a property or a variable that has not been defined in the current context. To prevent “undefined” from showing, you could use a conditional statement to check if the brand is defined before using it. If it’s undefined, then set it to a blank string or any default value of your choice.

    For example, if you’re dealing with Javascript, the condition could be using a ternary operator: const brand = admin.brand ? admin.brand : ''. This code essentially means that if admin.brand exists, it will be used. Otherwise, it will use an empty string. Or, if you are dealing with a language like Python, you might do something like brand = admin['brand'] if 'brand' in admin else ''. Adjust the code according to the language and framework you are using.

    Also, make sure the condition you added is in the correct place. You have to check the condition before you try to access the brand in your code, in order to prevent undefined values. If the problem persists, it could be useful to review function calls and data flow in your code.