There’s nothing more distracting than a push notification in the middle of a call, interview, or a pitch. Once you see it, even if you don’t know its content, you’ve lost your train of thought. You’ve likely also lost some respect amongst those with whom you were engaged before the notification, or at least shown them what is more important to you.
Most apps give you one option: allow or disallow notifications. A few of the better apps offer quiet hours — time when the app won’t send you notifications. But suppressing notifications merely delays the deluge.
There is a better way. We need to start being proactive in designing for the way people live. We should make use of Apple‘s tools for things like threading identifiers to consolidate updates into a single notification. Calendar access lets us determine when people are busy and should not be distracted; we can even determine if a person has enough time between meetings that they should see notifications, or if the app should wait. Notifications were never intended to be the all important and distracting force they’ve become. With a bit of discipline and care, we can craft notifications people will actually appreciate.
We could set notifications to auto-mute during meals, not just sleep, allowing us to focus on the time we spend with others. Notifications can even use geofencing to determine if we actually need notifications from a particular app. Home alarm push notifications are redundant when I’m at home. Nor do I need work-related notifications when I am not at work. In other words, notifications should only come in when they are relevant, important, and when I will want to deal with them. If smartphones are what chains people to their work, then as the creators of apps, we can help to unchain them by restricting work notifications not only to “work hours” but to work locations as well.
One of the lowest hanging fruits with notifications is to utilize notification expirations (already a part of the OS) to determine how long a notification is useful before it should disappear on its own. Let’s take a flash sale notification: There’s no point in showing a delayed notification if the app knows the user has a calendar conflict, or they aren’t near the store, nor is it worth showing a notification after the sale has ended — all of those criteria must be met before a notification should be sent, and the notifications should disappear if at any point one of those criteria are no longer met. Likewise, breaking news is of far lower value hours after it happened, so a notification expiration can expire a message, and a notification update can update the original notification to add new relevance as the news unfolds. However, messages from actual humans are more likely to be evergreen, and should be brought to a person’s attention when they next have the bandwidth to deal with such things — just as Apple is doing with Do Not Disturb While Driving. You’ll be blissfully unaware of what comes in when you’re not in a place to deal with notifications, while still not missing a beat once you are back at it.
For most of the modern smartphone era, notifications have either had two states: on or off. But that’s not how we actually operate as individuals. We opt for ‘on’ because we’d rather not miss things, but end up missing the signal in all that noise. Instead, as developers and designers, we should be looking at methods for crafting our notifications to be respectful of individuals’ lives, while delivering the most impact when our apps do send a notification. We need to stop pulling people out of the moment because a marketer decided now was the most optimal time to push a notification.
Here are some easy wins developers can implement to design better notifications on a user-by-user basis:
- Grade your notifications on how much they will matter after an hour, after a few hours, after a day. Use that in conjunction with other methods listed above to determine if the user could even act on that notification in time before the signal devolves to noise.
- Access the user calendar (keeping it on device, of course) and monitor when the user is busy, and thus should not get certain, or all, notifications from your app. (Send a custom set of quiet hours from the device to your push notification server if you are not using local notifications — remember to respect the privacy of people’s calendars.)
- Allow the user to set up geofencing to either only allow notifications when in that zone, or to block all notifications when in a certain zone.
- Analyze whether users are actually opening your app from notifications and start to build a model for what types of notifications that particular user cares about, thus crafting a model which only serves the notifications a particular user wants to see. This not only increases engagement each time you serve a notification to a user, but keeps users from otherwise deleting your app out of sheer frustration and annoyance.
The controls on notifications at a user’s disposal right now are binary, with very few exceptions. This creates so much noise that it leads the more proactive users to disallowing all notifications. Truly they don’t want to block everything coming in, but they’d rather not find themselves in notification hell. There are tools, methods, and ways which can be utilized today to implement smarter, friendlier, and more sane notification systems. It’s time to start using them.