Want to save this article for later?
It takes a lot of effort to design, build and launch an app, and even more to acquire users. Unless you’re tracking app uninstalls, how would you know if you’re sailing in a leaky boat?
Here are the facts.
Did you know – 50% of all users who uninstall an app, do it within in the first 4 to 5 days?
Data statistics show that half of all uninstalls happen during the first few days. The way for a mobile to combat this issue is to track and discover the reasons why your user uninstalled your app and address them. What are the most common problems? They range from a bug in the latest version of the app, frequent crashes, or a UX problem on a particular phone model.
You can detect app uninstalls by sending ‘silent’ push notifications. Silent push notifications are those notifications that aren’t rendered on the user’s device. You could send a silent push notification daily to all the devices with your app to track uninstalls.
Let’s review how Uninstall tracking typically works on each platform.
NotRegistered” error back which indicates that the application has been uninstalled.
A Practical Guide to Preventing Mobile App Churn
In this case, you would run a service on the device and ping the server once daily (or every hour, if you’re super aggressive), to confirm that the app still exists on the device. This is a solution that works but is not elegant.
Here’s why you shouldn’t go with this approach –
You can register a receiver that will be invoked when the app is uninstalled but unfortunately the ACTION_PACKAGE_REMOVED intent will be sent out to all receivers except for your own broadcast receiver 🙁
Read how this works
NotRegistered” when it figures out that the app is uninstalled – note that this might take a few hours to happen after the actual uninstall – typically this happens within the first 4 hours.
NotRegistered” and this can lead one to incorrectly deduce that the user has uninstalled.
On iOS, your app can in fact run in the background periodically. However, the cases for this are the frequency of app usage, and when the phone is charging. There, this is not really a viable option. You must also have a legitimate use case – uninstall tracking will probably not play well with Apple’s app review process.
Sending a silent iOS notification with
content-available flag and have background mode enabled. In this mode you can communicate with your server to do a “ping,” however your app is not guaranteed to be woken up.
While sending push notifications using HTTP/2, you’ll get back a response.
Error Code 410 This would indicate that the user uninstalled the app.
NotRegistered. Else, it will queue the message for delivery. When the device comes back online, and the app is still installed, the message will be delivered. Else, if the app is uninstalled, GCM will now mark this token for deletion and subsequent notifications for this device will receive the “
CleverTap’s Uninstall Tracking reaches out to hundreds of millions of devices on a daily basis to detect app uninstalls, and these numbers are reported on the Uninstall Dashboard. CleverTap does an uninstall sweep once a day for all the user who haven’t launched the app in the last 1 day. During this sweep, we reach out to users having a valid Push Token by sending a silent Push Notification.
Tracking and visualizing these numbers is easy through the CleverTap Uninstall Dashboard.
Here, you can see Net Activations for a given time period. Net activations are new activations less the number of uninstalls in that period.
When a client is running a campaign, we superimpose the campaigns on a graph. This tool will allow our clients to correlate these uninstall rates to marketing activities or app release cycles. This feature is very helpful in tracking or enhancing the campaign and figuring out how to increase user retention rates.
Both Android and iOS Notification APIs give feedback regarding an app uninstall. Whenever a user installs an application, unless they have notifications specifically disabled, they can receive Push Notifications on their mobile. These can take various forms. For example, a banking push notification tells you about any transactions or services you completed. A shopping app might send you a push notification when items you are watching are on sale, or about any offers.
The uninstall numbers on the CleverTap dashboard are based on the feedback we receive from the Notification APIs. To detect uninstalls, we send blank push notifications without a payload and based on the API response, CleverTap can deduce if the application has been uninstalled.
If you know, any other way of tracking uninstalls, or wanted to discuss anything related to push notifications or uninstalls, do leave a comment in the reply section.
A Practical Guide to Preventing Mobile App Churn