Skip to main content

Page and screen engagement

Page or screen activity (engagement) tracking enables you to measure the time users spent engaged on a page or screen and the extent of the page/screen they viewed. There are two mechanisms that the activity tracking is implemented:

  1. Using page ping events on Web.
  2. Using the screen summary entity on mobile.

On Web using page ping events​

Page pings are used to record users engaging with content on a web page after it has originally loaded. For example, it can be used to track how far down an article a user scrolls.

If enabled, the activity tracking function checks for engagement with a page after load. (E.g. mousemovement, scrolling etc...).

Page pings are identified byΒ e=pp. As well as all the standard web fields, there are four additional fields thatΒ ppΒ includes, which are used to identify how users are scrolling over web pages:

Atomic Table ColumnTypeDescription
pp_xoffset_minintegerMinimum page x offset seen in the last ping period
pp_xoffset_maxintegerMaximum page x offset seen in the last ping period
pp_yoffset_minintegerMinimum page y offset seen in the last ping period
pp_yoffset_maxintegerMaximum page y offset seen in the last ping period

On mobile​

note

Screen engagement tracking is available for native Android and iOS apps starting with version 6 of the trackers.

Screen engagement information is tracked on our mobile trackers in the screen_summary context entity. The entity is tracked along with these events:

  1. application_foreground and application_background events (see lifecycle events).
  2. screen_end event (see below).

Screen summary entity​

Entity that contains the screen engagement information.

Context entity: screen_summary

Schema for an entity tracked with foreground/background/screen_end events with summary statistics about the screen view

Schema URI: iglu://com.snowplowanalytics.mobile/screen_summary/jsonschema/1-0-0

WebMobileTracked automatically
βŒβœ…βœ…
πŸ‘€ Example
{
"foreground_sec": 10.2,
"background_sec": 3.1,
"last_item_index": 11,
"items_count": 50,
"min_x_offset": 0,
"max_x_offset": 400,
"min_y_offset": 0,
"max_y_offset": 1000,
"content_width": 400,
"content_height": 5000
}
πŸ“ƒ Schema properties definition
PropertyTypeDescriptionRequired?
foreground_sec"number"Time in seconds spent on the current screen while the app was in foregroundβœ…
background_sec["number","null"]Time in seconds spent on the current screen while the app was in background❌
last_item_index["integer","null"]Index of the last viewed item in the list on the screen❌
items_count["integer","null"]Total number of items in the list on the screen❌
min_x_offset["integer","null"]Minimum horizontal scroll offset on the scroll view in pixels❌
max_x_offset["integer","null"]Maximum horizontal scroll offset on the scroll view in pixels❌
min_y_offset["integer","null"]Minimum vertical scroll offset on the scroll view in pixels❌
max_y_offset["integer","null"]Maximum vertical scroll offset on the scroll view in pixels❌
content_width["integer","null"]Width of the scroll view in pixels❌
content_height["integer","null"]Height of the scroll view in pixels❌

Screen end event​

This event is tracked automatically by the mobile trackers just before the transition to the next screen.

The event has no properties.

Event: screen_end

Schema for an event tracked before transitioning to a new screen

Schema URI: iglu://com.snowplowanalytics.mobile/screen_end/jsonschema/1-0-0

WebMobileTracked automatically
βŒβœ…βœ…
πŸ“ƒ Schema properties definition
PropertyTypeDescriptionRequired?
❓ How to query the event in the warehouse?
select
unstruct_event_com_snowplowanalytics_mobile_screen_end_1_0_0
from
PIPELINE_NAME.events events
where
events.collector_tstamp > timestamp_sub(current_timestamp(), interval 1 hour)
and events.event = 'unstruct'
and events.event_name = 'screen_end'
and events.event_vendor = 'com.snowplowanalytics.mobile'

How to track​

To track page activity on Web, see the activity tracking documentation.

To track screen engagement on mobile, see the screen engagement documentation.

Use in modeling​

Page and screen activity events are used by our Snowplow Unified Package (starting from version 0.2.0) to calculate page engagement metrics. The Snowplow Web Package can process page ping events.

Was this page helpful?