Why are iOS device push tokens being removed when we try to send push notifications?

When Mixpanel removes push tokens from the iOS Devices Property, it means they are no longer valid for the certificate you have added to your project. This most commonly happens because:

  1. The app environment and certificate don’t match. The most common issue is that the project has a production certificate uploaded but the tokens were generated via a sandbox or development build. If you are testing messages in a sandbox or development environment, make sure you have uploaded a sandbox certificate to your Mixpanel project instead of the production certificate. If this isn’t the issue, carefully follow the documentation for generating certificates again to ensure you haven’t accidentally uploaded the wrong certificate. Make sure to remove the previous uploaded cert before uploading a new one, and when exporting, make sure you only include the push cert + the private key.
  2. The device no longer has push notifications enabled in the app. If a user disables push notifications, then the token is no longer valid and gets removed from his or her profile the next time you attempt to send a push notification.

Read more about how Mixpanel manages push tokens when they are invalid.