Templates
New Template
Cancel edit
Template Name
*
A descriptive name to identify this template. Use it to quickly load pre-configured notification setups on the Send page.
Title
Bold heading shown at the top of the notification on both iOS and Android.
Subtitle
(iOS)
Secondary line shown below the title. On iOS it appears as bold subtitle; on Android it maps to subText.
Body
Main text content of the notification message.
Data
(JSON)
Custom key-value JSON payload delivered to your app but NOT displayed in the notification. Access it via the notification handler in your app. Total payload must be at most 4096 bytes.
Invalid JSON
Priority
Delivery priority. "default" uses the platform default. "high" wakes the device immediately (maps to APNs priority 10 / FCM HIGH). "normal" may be batched to save battery (APNs priority 5 / FCM NORMAL).
default
default
normal
high
TTL (sec)
Time to live in seconds. How long Expo keeps trying to deliver if the device is offline. Default is 0 (try once). Takes precedence over Expiration when both are set. On Android this is best-effort.
Badge
Sets the app icon badge count on iOS. Use 0 to clear the badge. Android does not use this field natively.
Sound
Use "default" for the system notification sound. On iOS you can also use a custom sound filename bundled in your app. For iOS critical alerts, the SDK supports an object format: { critical: true, name: "default", volume: 1.0 }.
Channel ID
(Android)
Android notification channel ID. Must match a channel created in your app via `Notifications.setNotificationChannelAsync()`. If not specified, Expo uses a default channel.
Category ID
Notification category identifier for interactive actions (buttons, text input). Must match a category registered in your app via `Notifications.setNotificationCategoryAsync()`. Works on both iOS (categoryIdentifier) and Android.
Interruption Level
(iOS 15+)
iOS 15+ only. Controls how the notification interrupts the user. "passive": silent, no wake. "active" (default): normal presentation. "time-sensitive": breaks through Focus/DND. "critical": overrides mute switch (requires Apple entitlement).
— default —
active
passive
time-sensitive
critical
Icon
(Android)
Android only. URL or resource name for a custom notification small icon. If not set, the app's default notification icon is used.
Rich Image URL
URL to an image displayed in the notification. Works on both iOS (via Notification Service Extension) and Android. The URL must be publicly accessible and return a valid image.
Mutable Content
iOS only. Enables Notification Service Extensions to modify the notification before display — for example, to decrypt content or attach images. Maps to APNs mutable-content flag.
Save Template
Saved Templates
No saved templates yet. Create one above.