Learn how to integrate OneSignal with Mixpanel to sync cohorts, trigger personalized messaging, and track real-time user engagement.
OneSignal + Mixpanel integration overview
Enable Mixpanel integration in OneSignal
Mixpanel settings in OneSignal
Add OneSignal Integration in Mixpanel
OneSignal - APP_NAME
where APP_NAME
is the name of the app in OneSignal.
You will need the following data available in OneSignal Settings > Keys & IDs :
Mixpanel's dashboard for setting the OneSignal properties.
Mixpanel > Users > User Profile Properties
OneSignal > Audience > Users > External ID
$distinct_id
then it will only match with the top value.In below example, only 890ea9b1-9024-4fb9-a92f-152ba67dd21a
will work. It cannot match 109768518080488203109
or $device:1880c06821f1b3-052354675cde95-1d525634-1fa400-1880c06821f1b3
.Use caution when setting Distinct ID if used for the User ID Property mapping.
How to export a Mixpanel cohort to OneSignal.
Mixpanel frequency options.
How to create a Segment from a Mixpanel Cohort
Example of Mixpanel activity feed with OneSignal message events.
Message Event Kind (OneSignal) | Message Event Name (Mixpanel) | Event Description |
---|---|---|
Push Sent | Message Sent | Push notification successfully sent. |
Push Received | Message Received | Push notification successfully received. |
Push Clicked | App Opened from Push | Push notification touched on device. |
Push Failed | Push Failed | Push failed to be sent. Check the failed message report in OneSignal. |
Push Unsubscribed | Push Unsubscribed | The Subscription unsubscribed from push. |
In-App Impression | Message Sent | In-App Message successfully displayed on device. |
In-App Clicked | Message Opened | In-App Message clicked on device. |
In-App Page Displayed | In-App Page Displayed | In-App Message page is displayed. |
Email Sent | Message Sent | Email successfully sent. |
Email Received | Message Received | Email received by recipient. |
Email Opened | Message Opened | Email opened by recipient. |
Email Link Clicked | App Opened from Push | Email link clicked on. |
Email Unsubscribed | Email Unsubscribed | Email unsubscribed by recipient. |
Email Reported As Spam | Email Reported As Spam | Email reported as spam by recipient. |
Email Bounced | Email Bounced | Email returned to sender due to permanent error. |
Email Failed | Email Failed | Could not deliver the email to the recipientβs inbox. |
Email Suppressed | Email Suppressed | The email address is on your suppression list. Either it bounced or marked your emails as spam. |
SMS Sent | App Opened from Push | SMS sent to recipient. |
SMS Failed | SMS Failed | SMS failed to send. |
SMS Delivered | SMS Received | SMS successfully delivered. |
SMS Undelivered | SMS Undelivered | The SMS could not be sent. |
PROPERTY NAME | DESCRIPTION |
---|---|
Distinct ID | The external_id associated with the message. |
Message ID | The identifier of the discrete message. |
Message Name | The message name. |
Message Title | The message title. |
Message Contents | The message contents. |
message_type | The type of message sent, push, in-app, email, SMS. |
template_id | The message template used (API and Journey Messages). |
subscription_id | The OneSignal set device/email/sms identifier. |
device_type | The device type that received the message. |
language | The two character language code of the device. |
source | onesignal (is indicated as the source for all events) |
subscription_id
in event properties to trace the exact source.
To troubleshoot missing events:
OneSignal.login
is called whenever a user is identified to set the External ID.OneSignal.logout
isnβt removing the External ID.