logoDocument
Search

Complete Guide to Notification Badges: A Key Feature for Improving App Engagement

Overview of Badge Value

Notification badges are a core feature for improving user engagement in mobile applications. By displaying the number of unread messages directly on the app icon, badges effectively increase return visits and notification open rates.

EngageLab provides a comprehensive, cross-platform badge solution to help developers deliver an optimal user experience.


Channel Support Overview

Due to system-level limitations across different mobile vendors, only certain push channels support badge display. The support status is as follows:

Vendor Badge / Badge Number Support Implementation Notes Badge Limitations
Google FCM Badge supported Displays as a dot by default, following system behavior No explicit upper limit
Huawei / Honor Numeric badge supported Badge number increases with incoming notifications Usually capped at 99
Xiaomi Numeric badge supported Follows system default logic, each new notification increments by 1 Limit defined by system, not explicitly documented
OPPO Numeric badge not supported Only red dot is supported by default. Numeric badges require special approval from OPPO and are typically granted only to apps like WeChat or QQ Not specified; numeric badges generally unavailable
VIVO Pending vendor confirmation; currently not supported in testing Online information varies by OS version and push channel Usually capped at 99
Meizu Numeric badge not supported Red dot only
iOS Numeric badge supported Badge number can be managed via push payload or SDK APIs Very high; no documented upper limit

Typical Use Cases

  • Social apps: Real-time synchronization of unread message counts
  • E-commerce apps: Reminder for pending orders or actions
  • News apps: Display of unread articles

iOS Badges: Precise Badge Management

Technical Architecture

alt text


Client-Side Badge Configuration

Set Badge (with Callback)

Supported since version: v5.2.0

image.png


Clear Badge

Clears the badge value stored on the MTPush server, equivalent to calling:

setBadge: 0
              
              setBadge: 0

            
This code block in the floating window

image.png


Server-Side Badge Configuration

When sending push notifications, the badge field must be configured under the ios payload.

Field Type Optional Description Notes
badge Int or String Optional App icon badge number • Can be set as N, +N, or -N, where N ranges from [0, 99].
• If the value is 10, the badge can be interpreted as N, 10+N, or 10-N (values below 0 will clear the badge).
• A value of 0 or an empty string clears the badge.
• If omitted, the badge number remains unchanged.
• The official MTPush API libraries (SDKs) default the badge value to "+1".

Huawei / Honor Badges

Client-Side Configuration

<!-- AndroidManifest.xml permission configuration --> <uses-permission android:name="com.huawei.android.launcher.permission.CHANGE_BADGE"/> <uses-permission android:name="com.hihonor.android.launcher.permission.CHANGE_BADGE"/>
              
              <!-- AndroidManifest.xml permission configuration -->
<uses-permission android:name="com.huawei.android.launcher.permission.CHANGE_BADGE"/>
<uses-permission android:name="com.hihonor.android.launcher.permission.CHANGE_BADGE"/>

            
This code block in the floating window

Portal Configuration

Important: The app’s entry Activity must be configured correctly. Huawei and Honor use the same configuration logic.

image.png


Advanced Server-Side Parameters

Parameter Description Business Value
badge_add_num Increment badge number Ideal for messaging apps to avoid badge inconsistency
badge_set_num Set badge to a fixed value Suitable for state-based indicators such as pending tasks
badge_class Specify launcher Activity Ensures the badge is correctly associated with the target app

Xiaomi Badges

Devices running MIUI 6 and above support numeric badges. The MIUI system automatically handles badge display logic:

📱 Receive notification → badge +1 (no developer action required) 🔄 Open the app → badge cleared automaticallyMIUI 6+ supported across all versions, covering the majority of Xiaomi users


Best Practice Recommendations

Unified Cross-Platform Strategy

  • Tiered implementation: Prioritize full numeric badge support on iOS, Huawei, and Xiaomi
  • Fallback compatibility: Use red-dot indicators for OPPO, VIVO, and other unsupported platforms
  • Consistent user experience: Keep badge logic as consistent as possible across platforms
icon
Contact Sales