Fallback messages: Email or SMS when push is unavailable
Implement a fallback strategy with OneSignal to ensure critical messages are delivered via email or SMS when push notifications fail. Learn how to set up cross-channel messaging using Journeys, APIs, and segmentation for reliable user engagement.
Why use a fallback method?
Push notifications are powerful, but they’re not guaranteed to reach every user. Common reasons for push delivery failures include:
- Users opting out or disabling notification permissions
- Devices being offline or in restricted states (e.g., iOS Focus Mode)
- Uninstalled apps or expired push tokens
To make sure your message still gets delivered, OneSignal supports fallback messaging across other channels:
- In-App Messages
- SMS
With a smart fallback strategy, you ensure critical communications still reach users—even when push doesn’t.
Fallback strategy overview
Send primary push notification
This is your initial attempt to notify users through a standard push message.
Check for delivery or open
Monitor delivery and user interaction to determine if fallback is needed.
Trigger fallback via another channel
If there’s no engagement or delivery, send the same message via email or SMS.
Requirement
- A unique External ID is set for each user
- The user has email or SMS data associated with their profile using the OneSignal SDK or REST API
Recommended implementation options
Option 1: OneSignal Journeys (no code)
Use OneSignal Journeys to visually automate fallback logic:
- Drag-and-drop interface
- Supports branching by open/click/delivery
- Combine push, in-app, email, and SMS
Fallback logic in Journeys builder
Option 2: Custom fallback workflow with API
Send push notification
Use the Create Notification API to send a push message to your users. You can target specific users based on their External ID or custom Aliases.
Check status & trigger fallback
After sending, use the View Message API to check if the notification was delivered.
If: "received" = 0
, or status is "failed"
or "errored"
, it means the push notification didn’t go through.
At this point, you can send an SMS fallback using your own provider (e.g., Twilio or SendGrid), using the mapped phone number.
Option 3: Detect and segment users for fallback
Detect push subscription status
Use the SDK method: addPermissionObserver()
.
It allows your app to track and respond to changes in the device’s notification permission status while the app is running. If the permission status changes while the app is not running, the observer will trigger the next time the app is opened.
Tag devices unsubscribed from push
You can add a tag to the users. The tag you apply (e.g.,
unsubscribed_from_push: true
) is shared across all channels for that
user—push, email, and SMS. This makes it easy to later target users who’ve
opted out of push notifications.
Create a segment for fallback users
In the OneSignal dashboard:
- Create a segment where
unsubscribed_from_push = true
- Target that segment with fallback email or SMS campaigns
- Use this segment in Journeys or campaigns to send fallback messages via email or SMS
Best practices
- Use in-app messages or email as your first fallback option — they’re less disruptive than SMS.
- Add a short grace period (like 2–5 minutes) before sending a fallback message to give users time to engage.
- Don’t overwhelm users. Limit how often fallback messages are sent across channels.
- Always respect user preferences — only message users who’ve opted in to that channel.
- Measure what works. Use tags, events, or analytics to track how effective your fallback messages are.
Example use cases
Security alert
You’re sending a security alert. If the user doesn’t receive the push within 5 minutes, they get the same message via SMS.
Order delivery update
A package is out for delivery. You send a push with tracking info. If the user doesn’t receive or open it, they get an SMS with the same update and a direct link.
Payment failure notification
A payment fails during checkout. A push is sent to notify the user. If it isn’t delivered, follow up with an SMS urging them to retry the payment.
Event reminder
You remind users about an upcoming event (e.g., webinar, appointment). If push isn’t received, you send an SMS with the date, time, and join link or location.
System downtime alert
You’re notifying users of unexpected downtime. If the push fails, fallback to SMS ensures users are informed in real time.
Billing notice
A bill is due soon. You send a push reminder. If not received within 24 hours, send an SMS as a secondary notice.
Flash sale notification
A limited-time promotion starts. A push alerts the user immediately. If the push isn’t delivered, you send an SMS with the promo details and link to shop.
Tailor fallback logic to the message’s urgency. Not all notifications need an SMS, but critical ones benefit from multi-channel delivery.
💬 Need help setting this up? Contact support@onesignal.com