Solved

Does Mixpanel avoid sending mobile push notifications if a user turned them off for the app?

  • 18 November 2019
  • 3 replies
  • 160 views

Badge

I'd expect that Mixpanel's mobile SDK implicitly tracks whether the customer has push notifications enabled for the app, and only sends push notifs to the users who has them enabled.

Is it true, and can I rely on it to avoid wasting events quota on initially useless Message Sent events?

Also, if this is tracked, how can I track the % of users who have push notifications enabled?


icon

Best answer by shawnbarrett 22 November 2019, 22:38

Hey @cubez,

I've had this question in the past and I talked to someone on their support. They shared with me that when setting up a notification, you will see a preview of the profiles being matched by your criteria. By default, Mixpanel dismisses profiles that are not eligible for the notification like whether the user has unsubscribed, don't have an email, and so on.

With that being said, a user could have disabled notifications in his/her device, and at the time the message is created, Mixpanel might not know this. This means that the notification will be sent to all the matched profiles (and thus a notification sent event will be created), but since the user has disabled them, when contacting Apple's - or Google's - servers, Mixpanel will get an error.

In that case, the notification was still sent, but the person did not receive it, and the profile is updated dropping that toke for the device. Explaining last part, when the user installs the app, and the user accepts to receive a notification, the app must register that notification token in Mixpanel. When a denial occurs (like in this case where the user disabled it), the token for the profile will be removed.

Turning off push notification can't be tracked since that functionality lives outside of the app in which mixpanel is tracking activity. In order to see if users have turned it off, you will need to send a push notification to them (unfortunately). Mixpanel has an article that details tracking uninstall tho - https://help.mixpanel.com/hc/en-us/articles/360000413323-Mobile-Uninstall-Tracking-

If you do want to see based off of your current users in Mixpanel for users who have turned off push notifications, you can search in your explore report for users whose $ios_devices property is not set (we talked about how to set this in your other post 🙂 ). When a device no longer has push notification enabled, that property is an empty list as per their documentation here - https://help.mixpanel.com/hc/en-us/articles/115004617486-Why-are-iOS-device-push-tokens-being-removed-when-we-try-to-send-push-notifications-

That was a whole lot to take in (phew!). Hopefully it helps you out as it did me!


View original

3 replies

Userlevel 3
Badge

Hey @cubez,

I've had this question in the past and I talked to someone on their support. They shared with me that when setting up a notification, you will see a preview of the profiles being matched by your criteria. By default, Mixpanel dismisses profiles that are not eligible for the notification like whether the user has unsubscribed, don't have an email, and so on.

With that being said, a user could have disabled notifications in his/her device, and at the time the message is created, Mixpanel might not know this. This means that the notification will be sent to all the matched profiles (and thus a notification sent event will be created), but since the user has disabled them, when contacting Apple's - or Google's - servers, Mixpanel will get an error.

In that case, the notification was still sent, but the person did not receive it, and the profile is updated dropping that toke for the device. Explaining last part, when the user installs the app, and the user accepts to receive a notification, the app must register that notification token in Mixpanel. When a denial occurs (like in this case where the user disabled it), the token for the profile will be removed.

Turning off push notification can't be tracked since that functionality lives outside of the app in which mixpanel is tracking activity. In order to see if users have turned it off, you will need to send a push notification to them (unfortunately). Mixpanel has an article that details tracking uninstall tho - https://help.mixpanel.com/hc/en-us/articles/360000413323-Mobile-Uninstall-Tracking-

If you do want to see based off of your current users in Mixpanel for users who have turned off push notifications, you can search in your explore report for users whose $ios_devices property is not set (we talked about how to set this in your other post 🙂 ). When a device no longer has push notification enabled, that property is an empty list as per their documentation here - https://help.mixpanel.com/hc/en-us/articles/115004617486-Why-are-iOS-device-push-tokens-being-removed-when-we-try-to-send-push-notifications-

That was a whole lot to take in (phew!). Hopefully it helps you out as it did me!


Badge

Thank you so much for sharing what you have learned, it helps a lot! So basically, Mixpanel needs to send at least one notification after a user disabled them to understand that and update the profile correspondingly. We'll take that into account!

We're also going to have an app update the people property that shows whether notifs are on or off on app session start, as we are updating some other people properties at that point. This will allow us to first monitor the % of users addressable by push notifs, and also even further minimize sending to those who turned off.


Userlevel 3
Badge

that sounds like a plan, would be interesting to know what insights you get!


Reply