Key takeaways
- Push reaches only users who have installed your app and turned notifications on; SMS reaches almost everyone with a phone.
- Push is enough for nice-to-know messages and for users who are active in the app; critical messages and one-time codes need a fallback.
- Choose a time window per message type, and send the fallback only if push was not delivered or nobody acted on it.
- Opt-in differs: push is governed by the permission in the phone, while marketing by SMS needs prior consent.
- Deduplicate with one message ID, and cancel the fallback once the push has been seen.
When is a push notification enough?
Push reaches only users who have installed your app and allowed notifications. For them it is fast and appears right on the lock screen.
Push is enough when:
- The message is not critical, and it is fine if some people do not see it
- The recipient is active in the app and has notifications switched on
- The message is a nudge, a reminder or an update where a delay does no harm
- You can see that the user responded, for example by opening the app
When should you fall back to SMS?
SMS reaches almost everyone with a mobile phone, with no app needed. You lose fewer messages if you fall back to SMS in these cases:
How detailed the status of a push is depends on the platform and on what your app reports back, so decide in advance what “not acted on” means.
- The recipient does not have the app, has uninstalled it or has turned notifications off
- The message is critical, such as a one-time code, a security alert or a payment confirmation
- The message has a deadline, such as a delivery within the hour or an appointment tomorrow morning
- The push was rejected by the platform or not acted on within your window
How long should the window be before SMS takes over?
The window depends on how fast the message loses its value. The figures in the table are examples, not rules; test them on your own users.
| Message type | Window before SMS | Note |
|---|---|---|
| One-time code and security alert | None, or a few seconds | Consider using SMS right away, because a push is not necessarily seen |
| Delivery notice with a time window | A few minutes | A short window, because the message goes stale quickly |
| Appointment reminder the day before | A few hours | Give the user time to see the push, then send the SMS |
| Offers and news | No SMS fallback | Use SMS only for people who have consented to SMS marketing |
How do opt-in and consent differ for push and SMS?
Push and SMS each have their own sign-up, and they must not be mixed up.
- Push: the user says yes or no in the phone’s settings, and can withdraw the permission at any time. It shows that the phone may display notifications, and does not necessarily replace the consent that marketing requires
- SMS: you need the phone number and a basis for sending. Marketing by SMS generally requires prior consent (section 10 of the Danish Marketing Practices Act), while transactional messages follow other rules
- Record consent and opt-out per channel, and do not let an opt-out on one channel change the other without the customer’s wish
- Keep transactional and marketing messages apart on both channels
- This is general information, not legal advice
How do you avoid duplicates when push and SMS are used together?
- Give each event one ID, and store which channels have been used
- Send an SMS only if the push failed or nobody acted within the window
- Schedule the SMS fallback in advance, and cancel it when the user opens the push or acts in the app
- Limit how many notifications a user can get per day across both channels
- Respect quiet hours, also for fallback, unless the message is critical
How ZafeConnect fits
ZafeConnect has a push notifications page for iOS and Android users. It says that push reaches only users who have the app and have allowed notifications, and that you can use push first and other channels for everyone else. Push, SMS, RCS and email share an integration, flows and analytics on one platform, and you pay for delivered messages. Tell us how your app and channels are set up, so we can answer concretely.