Loading

Marketing Cloud Engagement | Understanding MobilePush Inbox Messages: Technical Overview & Behaviors

Publiseringsdato: Feb 18, 2026
Beskrivelse

This document outlines the technical distinctions between Inbox Messages and standard Push Notifications in Marketing Cloud Engagement (MCE). It covers delivery mechanisms, the relationship with DeviceIDs, and critical considerations for implementation and reporting.

Løsning

Unlike standard Push Notifications (Alerts), Inbox Messages use a "pull" mechanism. 
The mobile app explicitly queries MCE to download messages. This allows messages to be delivered to the app's internal inbox even if the user has disabled OS-level push notifications.

 

1. Delivery Mechanisms & Differences

[A] Push Notifications (Alerts)

  • Push Model: MCE requests a remote notification via message providers (FCM/APNs).

  • Dependency: If the user has disabled notifications for the app, the message will not appear on the device.

  • Persistence: The notification disappears from the notification center once it is tapped.

[B] Inbox Messages

  • Pull Model: The app requests messages from MCE when it opens in the foreground or when the SDK's update method is explicitly called.

  • Delivery Logic: MCE does not "push" the message to the device. Instead, it makes the message "available for download" on the server.

  • Persistence: Messages remain accessible and can be displayed at any time during the specified download period.
  • User Permission: Since this does not rely on the OS-native notification system, it is agnostic of the user’s notification settings. Messages are downloaded even on devices that have opted out of push notifications.

    • Note: If the "Update iOS Badge" option is enabled, a silent push is sent to trigger the badge update on the device.

[C] Alert + Inbox Message

  • Sends a standard Push Notification and makes an Inbox Message available for download simultaneously (asynchronous processing).

  • Devices with notifications disabled will not receive the Push (Alert) but can still download the Inbox Message.

 

 

2. Reporting

Considerations In the "MobilePush Detail Extract Report", record generation timing and content vary by message type.

【Pattern 1: Inbox Only】

  • On Download: A record is created only when the device actually downloads the message.

    • e.g., If sent to 10 devices and only 3 download it, the report shows 3 records.

  • Status: Push-related fields (e.g., Status) will be blank.

    • Exception: If iOS Badge update option is On, the status of the silent push is recorded, but this does not reflect the download success/failure of inbox message.

 

【Pattern 2: Alert + Inbox】

  • Notification Enabled: A record is created immediately when the push notification is sent.

  • Notification Disabled: A record is created only when the Inbox Message is downloaded (same behavior as "Inbox Only").

 

Note: For "Alert + Inbox," a single message send involves two distinct mechanisms. Data fields like DateTimeSend should be interpreted carefully as mixed behaviors apply depending on user permissions.

Reference : https://help.salesforce.com/s/articleView?id=004269023&type=1

 

■3. Frequently Asked Questions (FAQ)

Q1. If I reinstall the app and my DeviceID changes, will I see my old Inbox Messages?

A. No. Inbox Messages are tied to the DeviceID. If the app is reinstalled and a new DeviceID is generated, the device is considered new and cannot access messages linked to the previous DeviceID.

 

Q2. The Inbox list doesn't change when I switch accounts (Contact Keys) or log out.

A. This is expected behavior. Inbox Messages are bound to the DeviceID, not the Contact Key. Therefore, the app displays all messages downloaded for that specific device, regardless of the currently logged-in user. Currently, the SDK does not natively support multi-user filtering (switching inbox views based on login).

 

(Example Inbox Message Scenario)

  1. Log in with Contact Key "001".

    • MCE sends Message A targeting Contact Key "001".

    • Result: Message A is Downloaded.

  2. Switch login to Contact Key "999".

    • MCE sends Message B targeting Contact Key "999".

    • Result: Message B is Downloaded.

  3. MCE attempts to send Message C targeting Contact Key "001".

    • Note: At this exact moment, the device is registered to Contact Key "999".

    • Result: Message C is NOT Downloaded.

  4. Switch login back to Contact Key "001" (or logout).

    • Final View: The Inbox displays Message A and Message B.

 

*Why is Message C missing? 
Message C is missing because at the time of the send, the device was associated with Contact Key "999". Therefore, it did not match the target audience (Contact Key "001") and was excluded. This behavior differs from channels like Email. To handle multi-user scenarios, you must implement custom logic in your app to filter or hide messages based on metadata (e.g., Custom Keys).

 

Q3. Can I use %%_subscriberkey%% in a Custom Key to filter messages by user?

A. No, this will not work. Inbox Messages are rendered dynamically upon download. The personalization string %%_subscriberkey%% resolves to the current Contact Key set in the SDK at the moment of download. Consequently, all messages downloaded during a session will resolve to the same Contact Key (the current user), making it impossible to distinguish which user originally "owned" the message via this method.

 

Q4. I sent an "Alert + Inbox" message, tapped the notification, but the Inbox message wasn't there.

A. This can happen due to asynchronous processing. The Push Notification delivery and the Inbox Message server-side preparation occur independently. The notification may arrive before the Inbox Message is fully available for download. Additionally, if the app opens directly to the Inbox screen, the view might render before the background download completes. This race condition is more common during testing (immediate interaction) than in typical user scenarios.

 

Q5. Can I customize the design or sort order of the Inbox list?

A. The visual presentation (UI design, layout, sort order) is controlled by your mobile application's code, not the SDK API. Please consult your app development team for these adjustments.

 

Q6. How do I create Inbox Messages for Journey Builder or Automation Studio?

A. You must select the correct "Send Method" within Mobile Studio when creating the message.

  1. Go to Mobile Studio > MobilePush and click [Create Message].

  2. Select the [Inbox] template, and click [Next] 

  3. In Send Method section, choose:

    • For Journey Builder: Select "Interaction".

    • For Automation Studio: Select "Inbox - Automation".

 

Q7. Latest messages may not be retrieved when refreshing the Inbox repeatedly.

For performance reasons, Inbox refreshes are limited to once per minute. Please wait a moment before trying again.

 

Q8. Is there a way to verify the list of target devices eligible to download each Inbox message?

No, it is not possible to view a list of eligible recipients on an individual device or contact basis.

However, you can verify the total number of devices targeted for the download by following the steps below (Note: This excludes sends via API or Journey Builder):

  • Navigate to the MobilePush administration screen.

  • Click the Sends tab and select the relevant job date from the calendar.

  • Click the View Details button.

  • Check the SENDABLE AUDIENCE count.

    • This number represents the total number of devices eligible to download the message for that specific job. 

Knowledge-artikkelnummer

005132588

 
Laster
Salesforce Help | Article