An Introduction to Push Notifications in Mobile Apps

By Mark Wilkinson | Sep 14, 2017

What are push notifications?

It’s a safe bet that smartphone owners already use push notifications on a daily, if not hourly basis. I’m sure if you asked your mother about push notifications you would get a, “Huh?” But if you texted her while her phone was locked, she would recognize that bubble text with your name. That’s the key for a user as they should not have to know the technical definition of a push notification. When you give non-technical people highly complex systems like smartphones and apps assume that they will automatically understand what something like a notification means when they first see it.

Push notifications are a way for apps not currently open to convincing users to open the app. Push Notifications can be used for any reason that the developer chooses, including communication. Maybe there is a new version available or you need to remind the user that items are waiting for their approval. Whatever the reason, if you want the user to be in your app, push notifications can help.

When are push notifications needed?

Not all apps need push notifications. I am sure you can think of apps you hardly use, but are convenient when needed. For me, it is the local metro service app. I wouldn’t say I use it every day, but when I need to know if a bus is close to my stop it’s fairly accurate on when the next bus will arrive. Imagine if push notifications came with this app and by default they were on. Now if I received a notification every time a bus came by me, it would be annoying and might cause me to delete the app. Sure you could have settings in the app to turn on notifications if you’re next to a bus stop, but that would require digging into the app’s custom settings which most users won’t bother with.  I like that this app shipped out without notifications because I don’t see why they would be valuable as a default feature.

Now think of another app where notifications are extremely valuable, such as the ebay app. I remember before apps, and smartphones in general, you had to make sure you on your computer when an auction was ending to guarantee you won. If you forgot, you’d lose your chance to bid at the last second. Now with the official ebay app, you’re reminded with push notifications that an auction is about to end or that someone outbid you. That’s the perfect example of the value behind push notifications.

Here is a set of questions that can help you decide if push notifications can create value in your app:

  • Do I deal with time-sensitive data?  This includes items customers are watching that have a time limit on them, or an event they rsvp’d to that is about to start
  • Is there a setup or registration process they need to complete before using the app? If they start and never finish, you can send them a friendly reminder.
  • Is this a news related app? When a high priority story arrives from a category they follow, you can alert them.
  • Does your app use a shopping cart? If the user leaves without finishing a transaction, you can kindly remind them they have items in their cart.
  • Is it a turn-based game? games like these can take advantage by reminding the user it’s now their turn. A perfect example where this works great is the Scrabble app.
  • Location awareness? If your app relies heavily on location, you can use notifications to point users to something nearby related to the content of your app. This is also known as geo-marketing

A developer’s perspective

Push notifications require development work. For the iOS world Apple offers the APNS, or Apple Push Notification Service. In simplified terms, the provider or app owner(s) send messages in the form of the notification bundles to the APNS. The APNS then propagates the notifications to intended devices. This is done in a more complex scheme of the app registering the devices it’s on with APNS, then sending this registration back to the provider, with the provider then responsible for sending out notifications to the APNS along with the registered device.

notifications workflow

Luckily there are a few services out there that make push notifications easier to implement, Including:

  • Parse, a full-fledged app support ecosystem 
  • Urban Airship, another full-fledged ecosystem
  • Helios, an open-source alternative framework
  • Push.io, dedicated push notification service
  • Amazon SNS, Amazon’s Simple Notification Service
  • Boxcar.io, another dedicated notification service

All of these solutions offer free versions of their service with a certain amount of pushes per various time periods. At some point in your app’s life as it becomes successful with a lot of users, expect to pay for the services you’re receiving. This simple idea behind all of this is do not need to worry about dealing with the APNS or having your own backend service which supplies the notifications. The services handle that, along with giving you a dashboard to manage what notifications to send out and when.

Using push notifications tastefully

Getting people to use your app should be the ultimate goal for a developer, but what is actually worse than not having people use your app is having them delete the app. We have all installed apps, opened them, then promptly removed them for whatever reasons, including annoying notifications from the get-go. With notifications you can follow these six guidelines to at least mitigate some of these premature uninstallations:

1. Ask nicely

Begin by asking the user at first launch whether or not they want notifications at all. A yes selection should then take them to a set of notifications they can turn o, with all of them being off by default. This ensures the least intrusive first experience with your app.

2. Make it local

Local events or reminders are another type of notification: the difference is that the message originates on the device itself and not pushed from a remote server, The great thing about local notifications is the time zoning. If you have a deal you want to push to customers at 9 am when they start their day, how would you deal with that all over the globe? Parse allows you to set a notification as local or relative to the device’s time zone. The developer can also set up local notifications in the app based on user interaction and settings they choose.

3. Know the users, know the notifications

Your user base will change, so change with it. This should be obvious, but many times the people you originally envisioned using your app could change. One promotion in the app store or a prominent blog can draw in new users and new demographics which means localizing languages. Use analytics and other services to find out the who, when and where of your app usage.

4. Be human

Send a message thanking users or wishing them a happy new year. Remind your users that humans made and maintain your app, or just simply thank them for being a user of your app. This obviously goes for any prominent day in any region you’d like to target.

5. Badge it, tag it, clear it

Badges can be a double-edged sword. On the one hand they draw immediate attention to your app icon reminding the user there’s items that need attention. On another, they can be annoying if it’s not clear how to reset the badge count to zero. This has happened on a few apps I have downloaded. Digging through settings and still not finding where these badge numbers are coming from can get your app deleted. It is also perfectly reasonable to clear out the badge number once they open the app, from there direct them to the notification the badge represents.

6. Be the user

Imagine you’re the user with a high number of apps, and an already large number of daily push notifications. Will your notification stand out or just annoy? Does your user base most likely have similar apps pushing the same notifications? Thinking in terms of news apps, I unfortunately had all my news app notifications, local and global, turned on during the Boston manhunt earlier this year. Every single app pushed the same update to all their users, which caused a flurry of notifications on my phone. Think contextually: Does this notification give the user something that is useful to them in the exact moment they need it? Is it useful, or am I just annoying them?

Push notifications are great, but don’t solely rely on them.

Apps need users and users need a reason to be in the app. Push notifications can greatly increase the adoption and longevity of your app. Notifications are simply a way to put focus on your app when it would otherwise get lost in the bin of tried once, then deleted app lifecycle. Always assume the user would rather not be notified unless it’s something really worth their time. Don’t act like a telemarketer with the assumption that the user, like families sitting down to dinner, want to be pitched a sale at the wrong time. If they want notifications they’ll opt in from the start, otherwise the content your app should sell itself with or without notifications.

Mark Wilkinson is an iOS developer at ChaiOne

image credit: adobe

mobile_testing

Let's Talk :)