Google Analytics
OneSignal Features - Integrating OneSignal with Google Analytics
OneSignal supports tracking subscription and notification data when users subscribe and notifications are clicked on each platform, including sending this data to Google Analytics so that it can be analyzed in the context of your other user data.
You're Viewing User Model Documentation 🎉
OneSignal is in the process of migrating from a device-centric model (player ID) to a new user-centric data model (OneSignal ID). To learn more, check out the User Model Migration Guide.
Please refer to Version 9 of our documentation for device-centric information.
Mobile GA Guide
See our Google Analytics for Firebase guide for more details.
Web Push GA Guide
Start with Adding Google Analytics.
Tracking Web Push Notification Clicks
By UTM Parameters
You can automatically add UTM parameters to push notification URLs through the OneSignal Dashboard.
The easiest way to track notification clicks is to add Google Analytics UTM parameters to the end of the URL for the notification. Here's an overview on UTM parameters: http://blog.rafflecopter.com/2014/04/utm-parameters-best-practices/
When sending a notification, please pick a utm_source
(Such as "onesignal"), a utm_medium
(Such as "web-push" or "api" vs "automated" vs "dashboard"), and a utm_campaign
parameter (Such as "promotional-offer-template-123"). Next, add these parameters to your url, like so:
https://yoursite.com/your-page?utm_source=onesignal&utm_medium=web-push&utm_campaign=promotional-offer-template-123
After this, in Google analytics you can visit the Acquisition -> All Campaigns view to see all the campaigns you have sent and filter by day, browser, or campaign.
If you are having issues with UTM parameters, please see this article on common UTM parameter mistakes: https://penguininitiatives.com/common-utm-campaign-url-tracking-mistakes-to-avoid/
By Page JavaScript
You can listen for the click
event which fires when a user clicks a notification that directs them to a page of your site with this code.
Tracking Subscriptions
Tracking Impressions of the opt in request pop-up
You can listen for the permissionPromptDisplay
event to track if the prompt actually displays to the user. If no permission prompt is displayed, the user cannot opt-in to push.
Permission Prompt Change Events
You can listen for the permissionChange
event to detect when a user changes their permission status on the browser. This is best for tracking actual opt-ins on the site after the permission prompt is displayed.
Tracking Push Subscription Change
You can listen for the change
event to track when specific users subscribe or unsubscribe from web push. This will fire after the user opts-in and/or if the user opts-out using the Bell Prompt, Custom Link Prompt, optIn
/optOut
methods, or in the browser settings and returns to the site.
Tracking Notification Receipts & Dismissals
We recommend sending this data to Google Analytics as well (or another analytics tool). However since your website may not be open when notifications are received, dismissed, and opened by a user, this should be done by using our Webhook support.
For example, you can construct a webhook on top of the Google Analytics Measurement Protocol feature (https://developers.google.com/analytics/devguides/collection/protocol/v1/), then provide that URL with the query parameters of your choice when initializing OneSignal.
Filtering options like by day, week, month, browser, template will be available in Google analytics alongside the above event for your use.
Updated about 1 year ago