30

I need help with custom parameters of Firebase event, don’t seem to be able to see or use any event parameter. Basically trying to use parameters to create Audience segmentation, but parameters seem to never arrive (on the other hand all custom events arrive correctly).

As you can see from the attached screenshot the parameters list is always empty for custom events. The only parameters we can correctly see are related to system events (like first_open or in_app_purchase).

This is how we trigger custom events and parameters:

FIRAnalytics.logEvent(withName: "game_played", parameters:[
                "username": "id-\(self.username)" as NSObject,
                "gameplayed": self._gamePlayed as NSObject
                ])

Any help would really be appreciated.

Firebase console Firebase console

adjuremods
  • 2,938
  • 2
  • 12
  • 17
Alessandro Maroldi
  • 301
  • 1
  • 3
  • 3

8 Answers8

43

Google will keep confusing us with their unreliable documentation and frequent update to the terms used...

What most answers here lack, is what the terms Dimension/Metric mean under Custom definitions (in the latest version) and their relation to custom user properties and events.

Custom user property has only one string value, this can be used to segment the audience and can be reported by configuring it as a custom Dimension in the Custom definitions.

Custom event has zero or more parameters (key-value) that their value can be numeric or a string. This is where things get confusing, to get these parameters reported, you need to tell Analytics if it is a number or a string! If the param is numeric it should be considered as custom Metric (since metric==numbers), while if the param values are strings, they must be defined under Dimensions!

I had to guess that from the official docs where Google gives an example of logging an event with author param as a string and says after that:

You can create an Author dimension that gets its values from the author parameter

Notes:

  1. After the first configuration, reports will get updated only after 24-48 hrs.
  2. If there is not enough data, you may not see your param reports.
  3. An event param can be a dimension or a metric (not both).
  4. If you log in your code numeric values and set it as a dimension it won't work! Because Analytics is stupid and doesn't have auto-casting. The reverse, logging string values and setting them as metrics, will not work (seems obvious).
  5. Check your types beforehand, Analytics will not limit you as it doesn't process the underlying type before you tell it how to process it.
eyalyoli
  • 1,677
  • 17
  • 16
  • 1
    Agree on the poor documentation, also the recurrent tendency to fix things that are not broken like removing the "Edit parameter reporting" option that was way more intuitive than the current approach. These changes made willy-nilly for no good reason invalidate all know-how provided in previous questions and answers here aside from deprecating their own support docs. – Fran Marzoa Jun 01 '21 at 08:27
  • Thank you so much, I'm used to other analytics solutions and couldn't get my head around this. Very confusing indeed. – Zamaroht Jul 19 '21 at 14:43
  • 6
    you saved me. Thanks so much. So in short: `DIMENSIONS for STRINGS` `METRICS for NUMBERS` – drpawelo Jul 27 '21 at 20:56
  • Really helpful, most accurate answer... until Google confuses us again – a curious guy Sep 14 '21 at 03:15
23

Go to your event and click in the 3 points icon: event menu and click edit parameter reporting

and there you can select which parameters you want to see, so click on username and gameplayed and push "ADD" button and set the unit of measurement.

parameters

Note that it could take some time from your first events fired to be shown in console.

Also when you have a text parameter it take time to gather it's different values from fired events and to be shown correctly in console.

Jorge Arimany
  • 5,814
  • 2
  • 28
  • 23
  • 31
    That "Edit parameter reporting" option doesn't even show in my console. The only choice there is "Mark as NPA". – Fran Marzoa Jun 01 '21 at 08:09
  • 2
    @Fran You now need to [Create new dimensions and metrics from event parameters](https://support.google.com/firebase/answer/10075209) for that. – Reza Mohammadi Sep 21 '21 at 19:19
21

In the current version of Firebase console the "Edit parameter reporting" action is gone. Custom parameters are now added through "Manage Custom Definitions" menu on top of the event list.

enter image description here

Roman Droppa
  • 329
  • 3
  • 4
  • 12
    I have added my custom dimensions and metrices but they still doesn't appear in the event detail as they used to be. Do I have to do something in order for them to show in the event detail page? – Hagos Alema Dec 16 '20 at 05:14
  • 3
    I’m seeing the same behaviour as @hagos describes. Quite frustrating and it’s happening across all of my Firebase projects. Out of desperation, I tried archiving my custom dimensions and re-adding them ... I’ll give it a few days and see if that makes a difference. I’ll keep you updated It’s frustrating to know that not all users are having the same issues. – MDMonty Jan 20 '21 at 18:24
  • I think initially it took some time for the Custom dimensions to show up in Event detail. Make sure that the parameter and event names match those defined in your app. – Roman Droppa Jan 21 '21 at 10:34
8

My custom events did not display their parameters in the Firebase dashboard under Events until I installed the app on a bunch of different simulators in order to get my user count up to 12. Drove me nuts seeing all those empty graphs until I found this post with the answer from Dmila Ram, which appears to be correct - thresholds apply to custom parameter display.

saswanb
  • 1,975
  • 1
  • 17
  • 25
4

enter image description here

  1. In Analytics for Firebase, navigate to your app.

  2. Click Events.

  3. In the row for the event you want to modify, click More > Edit parameter reporting.

  4. In the Enter parameter name field, enter the name of the parameter you'd like to register.

  5. Set the Type field to Text or Number. For numeric parameters, set the Unit of Measurement field.

  6. Click SAVE, then click CONFIRM.

REF: Custom-parameter reporting

Gayan Weerakutti
  • 11,904
  • 2
  • 71
  • 68
  • 9
    What if I don't have this option "Edit parameter reporting" when I click on three dots? I was able to see those custom parameters in live view, but now I'm unable to find them neither in Firebase nor in Analytics – ToM Oct 20 '20 at 06:25
  • @ToM I see. It seems they have made some changes to their events system a few days back. – Gayan Weerakutti Oct 21 '20 at 17:33
  • 2
    Yes, this has been changed, more info here: support.google.com/analytics/answer/10075209 – ToM Oct 22 '20 at 19:08
  • I posted my solution here: https://stackoverflow.com/a/64495703/1629673 – ToM Oct 23 '20 at 07:28
2

According to My understaning, there are 2 different things here.

  1. User Property: Which you map to a user session like group_id, city_id, plan_id he belongs to or has. This is what you use to create Audience. Same User Property you can use in other product such as Firebase remote config etc.., But you need to pre-define these keys under "USER PROPERTIES" tab you see in your screenshot you shared. As usual this will take couple of hours to take effect! BTW this is how you set a User Property

[FIRAnalytics setUserPropertyString:food forName:@"favorite_food"];

Link to read more here

  1. Event Parameters: These are extra info you pass in a Event you Log. Suppose you have a sample event called "detail_view" you can add "item_id", "timestamp", "session_id" etc.., as parameters. But you will need to wait for the custom event to appear for couple of hours and then manually you need to add parameters in the dashboard like this. And this operation too takes couple of hours to take effect! BTW this is how you set Event Parameters

    [FIRAnalytics logEventWithName:@"share_image" parameters:@{ @"name": name, @"full_text": text }];

Link to read more here

Muhammad Riyaz
  • 2,832
  • 2
  • 26
  • 30
1

According to the website https://firebase.google.com/docs/analytics/android/events,

Custom parameters: Custom parameters are not represented directly in your Analytics reports, but they can be used as filters in audience definitions that can be applied to every report. Custom parameters are also included in data exported to BigQuery if your app is linked to a BigQuery project.

Custom parameters should always arrive with your events. However, custom parameters are used in Audience in the SDK and if there is an audience that matches your definition, they will be reported to the server. You just cannot see them in the report for now.

adbitx
  • 2,019
  • 8
  • 13
  • 4
    Off-topic: I love how the question came from iOS side and the link provided ends with `/andorid/events/`. – Sevastyan Savanyuk Nov 21 '18 at 11:20
  • You are right to be concerned with the Android related link but since the Android and iOS SDKs share the same parity, I think that official document that describes the behavior is good enough. – adbitx Nov 22 '18 at 12:21
1

You can see your Custom Event in Analytics - Dashboard - StreamView - Events - Top Events - see picture. But I belive this is just for last 30 minutes.

enter image description here

I would recomment you to use Fabric Analytics - this will meet your needs. see https://docs.fabric.io/android/answers/answers-events.html

enter image description here

Josef Vancura
  • 1,053
  • 10
  • 18