Behavioural data

In addition to user data, the Xtremepush SDKs and APIs support the collection of behavioural data to understand and respond to what users are doing on your websites and in apps in real-time. This includes:

  • Tagging: Tracking of behaviour online, including screen-view and other interactions
  • Real-time events: Setting of trigger events on important interactions
  • External data: Reusing data from 3rd party sources and CRMs like Optimove  
  • Backend data and events: API methods that allow syncing of backend data and reaction to events in real-time
  • Location data: The mobile SDKs can allow the tracking and reaction to entry and exit of users into geo or iBeacon-fenced regions such as retail outlets, airports, stadiums etc.
  • App installs attribution: The mobile SDKs can allow the tracking of the source of app installs, for example, if a user clicked on a Facebook ad to install an app. 
  • Messaging data: In relation to comms to end-users, and which can be used to track the performance of a campaign
  • Session data: Only available for mobile apps


To tag interactions for analytics and the ability to segment campaigns based on tag behaviour, call the SDKs' tag method when that interaction occurs, for example in the web SDK: 

// Tag successful registration
xtremepush('tag', 'registration_complete');

If an interaction has an associated value, that can also be captured by using the tag method with an optional value, for example in the web SDK:

// Capture a field value from a form being filled out
xtremepush('tag', 'journeyform_destination', 'New York');

See the SDK guides on tagging for Android, iOS and Web.

Tags can be used in segmentation to target users who have exhibited a certain behaviour on an app or website, for example visiting certain pages in the last number of days.


Tags are processed in batches, so there may be a delay of up to 1 min between generating the tag and it appearing in the UI.

Reviewing tagged data

Tag hits data can be viewed in Analytics > Behaviour > Tags & Impressions, and it is possible to review attributes and tags fired against individual user profiles or devices. See details below:

Profile attributes

You can review profile attributes by navigating to Data > Users. Search for the specific user for which you want to review the data by Profile Id, User ID or other identifier if you are using one, and click the Profile ID to open the user data under the Data tab.


In the Tags tab (from a user profile), you will see the list of tags your device has sent, complete with any data sent, a timestamp and the associated application. You can refresh this page periodically to see your tags as you generate them on the app/website side.

You can also search your tag list by tag name or the value of data sent using the fields provided; just enter some text and the search filter is automatic.

Device attributes

Navigate to Data > Devices to review device attributes. Click on the Device ID and find the device attributes by scrolling down to the bottom of the page.

Real-time events

Real-time events are used to trigger an action such as sending a message.

Review our real-time events page for detailed information on what they are, how they can be used in Xtremepush to trigger campaigns and how to configure event-triggered campaigns.

Triggering can be used for a variety of use cases from immediate pop-up comms and delayed drop-off recovery via outbound comms.

External data


If you use the Optimove CRM in conjunction with Xtremepush for messaging your customers you can pull customer data from Optimove into your campaigns dynamically to personalise your messaging. After configuring the Optimove integration you can follow the guide to use customer data from the CRM in campaigns.

Backend data and events

In addition to the tagging and event methods of the SDKs, and out of the box integrations with 3rd party systems, you can also push data and trigger events directly from your backend systems via API. As covered in user data, there are API methods for updating and syncing profile records. In addition, there are a number of other API methods which may be relevant.

The tag/attribute syncing API methods can be used to update user behaviour or attribute data that may change outside the app or website, similar to the SDK tagging methods.

You can also trigger message campaigns with transactional data in response to events on your backend system. For example, a direct debit from a balance, a change in the position of a tracked data point like a currency or stock, or an update on a purchase, such as an order being out for delivery. It is also possible to send arrays of data objects, for example, if you have a recommender system for products or other content and want to send out recommendations via emails as they become available. 

Location data

On the mobile SDKs you can enable location services, which allows you to gather data on customers entering and exiting geofenced and iBeacon-fenced regions. Location services are only available for mobile apps and must be enabled in the SDK for Android and iOS.

Once enabled, you can follow the guide to add locations.

The resulting location data can be used to trigger messages, and can also can be viewed in location analytics and in segmentation to target users who have exhibited a certain location visit behaviour.

Location-based triggers work on entry, exit or time spent in a location and can be used to automate messages on all outbound channels. Triggering can be used for a variety of use cases including delivering a relevant offer when a user is at a location, sending a survey after a user has visited, etc. 

The location data can be viewed in Analytics > Locations and can also be used in segmentation to target users who have exhibited a certain behaviour relating to your locations in the past.

A single GPS coordinate is also stored to maintain the last known location of the device. This data point is not visible anywhere on the platform but it is used in the Last known location feature of segmentation.

App install attribution

You can attribute mobile app installs from advertising campaigns to a specific campaign by enabling app install attribution in the mobile SDKs and collecting the advertising identifiers (IDFA on iOS or Android Ad ID). The steps are described in the guide for enabling attribution through Kochava which then allows you to set up install campaigns in Xtremepush.

Once enabled, data on the source of your app installs will be available in Analytics > Campaigns > Attributions.

Messaging data

When you send messages on any channel, where possible, the following data is gathered to track performance:

  • Sent
  • Delivered
  • Opened
  • Clicks on any links/CTAs - (e.g. links in emails, CTA buttons on in-app messages)

Learn more about what these metrics mean in our Analytics terminology guide.

This data is used on the campaign comparison page to show the performance of campaigns and also in segmentation to allow you to segment users based on interactions with previous campaigns.

Session data

When you enable the mobile SDKs, app open times and session duration are recorded by default. This is used to show engagement stats in analytics and also to segment users based on recency and frequency of interactions with the mobile app.