Event tracking

Learn how to configure which events are tracked automatically, or disable automatic tracking

This section discusses what events are tracked by Smartlook, how they are made available in the dashboard, how they relate to user privacy, and how to control the level of tracked events.

Smartlook tracks two types of events:

  • User interaction events — finger touches, gestures, UI element focus, etc.
  • Analytics events — button clicks, navigation between screens, and similar events that initialize an action in the application.

There are no known performance issues related to event tracking. However, tracked events, especially those that are visualized during the session playback, can compromise sensitive user data. For more information on sensitive data, see Handling sensitive data.


Further reading

For more information on how user navigation is tracked, see Recording navigation and heatmaps.

User interaction events

Smartlook tracks user interactions with the application UI, like taps and gestures, to visualize them during recording playback. These records are also used to create user interaction heatmaps.

To protect user privacy, user interaction with virtual keyboards (i.e., events in the area where the keyboard is on the screen) is not recorded. When the application uses a custom input view (e.g., a custom PIN-pad) that the system does not recognize as a system virtual keyboard, Smartlook records that interaction event. To disable recording for this event or similar events, you can disable certain user interaction tracking. An example is provided in the Secure custom keyboard cookbook.


Sensitivity vs. event tracking

Setting a PIN-pad view as sensitive is not enough because user interaction is still tracked on views set as sensitive. Sensitivity and event tracking are controlled independently. For more in-depth information on how to work with sensitive data, see Handling Sensitive Events.

Rage Clicks Events

Rage Clicks events are a specific kind of event when a user repeatedly and quickly taps the screen. This behavior typically occurs when the user is frustrated with the UI or when the user does not understand what is interactive and what is not in the game. Rage click events can be reviewed along the other events in the player.


In some apps, such as games, quick user interaction is expected. For these apps, or their sections, rage click events can be ignored by setting the trackRageClickEvents event tracking option. More info about event tracking options can be found in the Event Tracking Options section of this document.

Analytics Events

Besides direct tracking of user interaction at the basic level of touches and gestures, Smartlook also tracks how these events are understood by the application code. These events track what UI elements have been tapped and how the application reacted to it. All these events are visible in the player timeline. If an analytic event is related to a UI element, the element is highlighted in the screen recording.

Most importantly, these analytics events can be used with Smartlook analytics.

Tracking Custom Events

Smartlook aims to automatically track any relevant events. However, it is not always possible on all platforms and if the automated tracking doesn't provide enough information. If this is the case in your app, Smartlook offers the option to track custom events.

Smartlook views custom events in the same manner as automatically acquired events of the corresponding type.

Custom events

Custom events are identified by a name and can also have additional properties. Additional properties can later be used in funnels and other filtering. For further information, see your required platform API reference.

Custom events with revenue properties

You can set revenue properties on your custom events to track potential and lost opportunities in your funnels using the Revenue insights feature. To make use of Revenue insights, you need to create custom events with a revenue property. For more information, see Revenue insights (add link).

To make use of Revenue insights, create a custom event with a revenue property, or add a revenue property to an existing custom event using the API:

Smartlook.trackEvent("purchase", Properties().put("revenue", "1000"))

Event Tracking Options

By default, all events described in this document are tracked. However, there are some cases when you might want to ignore events. Such cases include the following:

  • rage clicks such as in gaming. Fast and repeated user interaction.
  • touch events using custom keyboards or similar controls that could reveal sensitive information.
  • detected navigation events in apps generated by tools like React Native, where generated screen identifiers make no obvious sense and repeat themselves.


Full events tracking

By default, full events tracking is enabled. To manage which events are tracked, disable selected event categories.

Smartlook offers several event tracking options that can be combined:

  • Track User Interaction — Automatically detected selector (click on a View), focus, touch, gesture, and keyboard events.
  • Track Navigation Interaction — Automatically detected navigation events. User defined events are tracked.
  • Track Rage Clicks Events — Automatic detection and tracking of rage click events.
  • No Tracking — No automatically detected events are tracked. Only user defined events are tracked.