Why Aren't End Users Receiving Push Notifications?

Problem

Some of the end users are not receiving the notifications sent through MoEngage. While these notifications are successfully delivered to Google Cloud Messaging (GCM) or Apple Push Notification Service (APNS), they are not reaching the user's device.

Explanation

The probable reasons for notification delivery failure could fall into one of the following categories:

  • User and Device Settings:
    • Blocked Notifications: Users can disable notifications for specific apps at the operating system (OS) level. When this happens, GCM or APNS doesn't invalidate the device token, nor does it inform MoEngage that the user has blocked notifications.
    • Battery and App Optimization: Many devices, particularly those with aggressive battery-saving features or "doze mode" (like on Motorola phones), may restrict background app activity. This can prevent notifications from being delivered when the app isn't actively in use. Similarly, some battery-saving apps may force-stop background processes, which also affects notification delivery.

  • Network and Server-Side Issues:
    • Network Connectivity: A device must maintain a persistent connection to Google's or Apple's servers to receive push notifications. If a user is offline for an extended period, the respective push service can't deliver the notification. Even when the user reconnects, there can be a significant delay, and the notification may not be delivered at all if the Time to Live (TTL) has expired. Google estimates that up to 15% of users may not be connected to GCM at any given time.

    • Time to Live (TTL) Expiration: If GCM or APNS can't connect with the device within the specified TTL, it will not attempt to deliver the notification, and it will expire.

    • Token Inactivation Lag: After an app is uninstalled, there's a delay before GCM or APNS marks the device token as inactive. This means MoEngage might still successfully send a notification to an uninstalled app, but it will never be delivered to the user.

  • Manufacturer-Specific Issues: Some device manufacturers have implemented aggressive power-saving or memory management features that can interfere with notification delivery. While newer OS updates may resolve some of these issues, they can persist on older devices. MoEngage has observed this on specific models from manufacturers like Lenovo, Micromax, and ASUS, where delivery failure rates can be as high as 90-99%. These issues are beyond MoEngage's control.

  • Corporate Firewalls: In some corporate environments, the network's outer firewall may reject incoming packets due to strict security settings. This can block push notifications from reaching devices on the network.

    For further details and potential solutions, refer to this blog post on this topic.

Push Benchmark Report and Analysis

This report provides benchmark data for key push campaigns metrics, including Delivery Rate, Click-Through Rate (CTR), and Conversion Rate (CVR):

mceclip0.png

info

Information

The iOS Delivery Rate benchmarks in this report do not account for impression tracking or a device's opt-in status. The data shown is from Q3 2020 (July 1 to September 30, 2020) and was last updated on November 2, 2020.

MoEngage tracks both the number of notifications sent and the notification impressions captured from client devices. Our analysis, based on a broad range of client data, focuses on two key themes to help you understand the factors influencing push notification deliverability:

  • User Activity: This theme explores the correlation between a user's recent app activity and their likelihood of receiving notifications.
  • User Device: This theme examines the correlation between a user's device model and notification deliverability.

User Activity

Even after being successfully accepted by a push service like GCM or APNS, a significant number of notifications may never be delivered to the end user. The chart below shows a breakdown of these undelivered notifications.

Although MoEngage couldn't establish direct causality, there is a strong correlation between user inactivity and notification deliverability. As the duration of user inactivity increases, their device's reachability decreases. This means push services like GCM or APNS may have difficulty reaching and delivering notifications to these users.

Further analysis of users who successfully received notifications showed that a user's recency (how recently they engaged with the app) also positively correlates with their reachability.

User Devices

info

Information

This analysis is limited to the Android platform. Once MoEngage hands off notifications to GCM and they are successfully accepted, MoEngage servers have no visibility into why a message was not delivered. Therefore, the following reasons are hypotheses based on our observations, as we cannot definitively validate them without this data.

Device-Specific Delivery Issues

Our analysis has identified a consistent trend: some Android device models exhibit significantly lower push notification delivery rates than others. We developed this hypothesis after examining data across multiple client campaigns, which revealed high failure rates on specific devices.

The following are some of the devices with the lowest delivery rates:

  • Lenovo A6020 and A6000: Failure rates of 98-99%.
  • Micromax Canvas series: Failure rates of 90-95%.
  • ASUS devices (models Z00AD, Z010D, Z008D, Z00UD, and Z00LD): Delivery rates below 4%.
  • Vivo devices (models Y11, Y15S, Y27L, Y28, Y57L, and V1): Delivery rates of 2-3%.

These low delivery rates are often a result of aggressive battery optimization features implemented by device manufacturers and the Android OS itself. For example, the Doze mode on Motorola phones and the App Standby feature put apps into a deep sleep state when the device is idle, which can block notification delivery. Similar issues are common on many Android Marshmallow devices due to their built-in battery optimization settings.

Was this article helpful?
91 out of 130 found this helpful

How can we improve this article?