Badge Blindness and iPhone Push Notifications
June 16th, 2009.
So iPhone OS 3.0, drops very soon (aka, tomorrow).
Most folks will eagerly update their devices as the new OS is truly stellar.
Many applications will be updated to take advantage of new features like the Push Notification Service, In-App Purchases, and Bluetooth-powered Private Area Networking (with GameKit).
I can’t wait to watch the Twitter chatter.
See, I’m obsessed with UX – especially on the iPhone. I get bent out of shape about ugly applications, hijacked gestures, disruptive branding and flippant differentiation. I fully acknowledge the delicate bubble Apple has created in the form of the iPhone UX, and I hate to see folks pushing blindly at the edges. The aesthetic and experience are what really differentiate the platform from similar devices, and it’s worth maintaining.
Cocoa Touch developers, like Cocoa developers, spend a lot of time thinking about user experience. With Cocoa Touch, there is an additional onus on folks to think about the experience outside their application because the device has limited resources: memory, CPU, battery life. Mobile users also have more limitations than desktop users: attention, coordination, time, tolerance, physical ability.
With iPhone OS 3.0, I am especially worried about the Push Notification Service and its potential for misuse, abuse, and overuse. Without consistency in the meaning of push messages, we might collectively burn users out on notifications.
Notification Misuse: Audio and Text Alerts
Developers can use the push service to send three types of notices to devices: short audio events, strings of text, and a number shown in a red circle (aka badge) on the application icon. Each of these has a place, and Apple cautions developers against using notification mechanisms that are disproportionate to the importance of messages.
For example, you should avoid sending audio alerts unless users are in the application context (that is, the application is running and users are interacting solely with it) and have opted into receiving audio. Nobody wants their phone to chirp away with random noise when they’re trying to listen to music or play a game.
Text alerts can be used to communicate very important events, but they too should be used with care. Text alerts trigger a full-screen, modal alert box that not only steals the focus of the entire phone but requires users to dismiss the alert by tapping a button. It’s pretty cocky to hijack an iPhone for a trivial note, so make sure the message is worthy.
Notification Abuse: Audio and Text Alerts
Don’t flood devices with flippant text or audio push notifications. Understand the disruptive impact of those messages and avoid them unless they are absolutely necessary. And repeat this mantra: “Push notifications are rarely necessary!”
Consider an asynchronous chat service in a social application. It might be awesome to use the push service to send messages to users, SMS-style, even when the app isn’t running. Now mix into the equation the presence of other applications. Most of us have at least two social apps on our iPhones. Suddenly, modal alert messages are popping up for each of them. God forbid you have multiple Twitter clients installed that send alerts for direct messages – redundant popups flooding in would be pretty annoying.
Don’t fall into the “I can, so I should!” mindset. Applications have worked well without notifications thus far. You won’t increase stickiness by pushing notifications to users, catching their attention and helping your icon stand out on the screen. Stickiness is a terrible concept carried over from the ad-driven web and is the banner under which advertising ruined online UX. Even if your application is ad-supported, your best bet for success is to create a tool that fits into the whole iPhone experience rather than trying to use every feature available to you in hopes of standing out. Beat your competition by doing less, better. Don’t steal focus. Earn it.
Notification Overuse: Badges
You should also avoid overuse of icon badging. Think about mobile development holistically. Every badge added to an application icon impacts the overall user experience. It’s your duty (yes, duty) to play nicely and work with the iPhone developer community to create a strong experience. You are not an island. Your app is nothing without the experience provided by Apple, and that experience must be ruthlessly maintained. Your application is a guest on a very expensive, aspirational fetish device. Don’t trash the place, lest you be trashed.
Badge Blindness
So why should badging be limited? Overuse of badging will lead to badge blindness. Badge blindness occurs when users lose faith in the importance of icon badges. RSS readers provide a really great example of this phenomenon.
Imagine you subscribe to 50 feeds – a modest number – and have your feed reader set to poll for updates every hour. If your reader shows a badge that reflects the current number of unread stories in your collection of feeds, you can almost guarantee that you will always have a badge present. Often, it will have a very large number inside. You will never reach zero, and the badge will never disappear. The badge becomes a permabadge – an annoyingly persistent reminder that the application wants your attention. You will probably declare RSS bankruptcy – marking all feed items as read – just to get the satisfaction of seeing the badge disappear… for less than an hour.
Imagine that, on the Mac desktop, several applications in your Dock show badges. Mail, iChat, NetNewsWire, iCal, and Xcode. Suddenly, you don’t feel as though your computer is trying to direct your attention towards an important, but non-critical, focal point. Instead, you feel as though your computer is constantly nagging you.
Now picture the equivalent on your iPhone. A screen of greedy little icons, all raising their hands wildly, begging for attention. You’ll start to ignore the mechanism. You’ll stop seeing the badges.
You’ll delete the annoying apps and leave one-star reviews on the App Store.
Advice
Imagine you’re in a crowded coffee shop. A friend is across the room, reading a book, or chatting with a crush. You think of something you think they may, possibly, maybe want to know. Would you shout the message out across the room? Wave your arms wildly, hoping they make eye contact? Send them a text? Email them? Leave a note with their server?
Whatever your message, make sure the transmission protocol is suitable. In some cases, this will mean badging. When badging, make sure the badge will be invisible more often than not, or it will lose its impact. If the message merits completely stealing focus, send a text alert or sound. Do so only in the rarest of cases, unless users have opted-in and can just as easily opt-out. Be nice. Don’t pop any bubbles.


I could not agree more. As an iPhone developer and user: I thank you for making clear what should be gospel to any iPhone dev. Put yourself in the user’s shoes for a minute and think about whether your Very Important Alert doesn’t stink of spam.
June 16th, 2009 - 11:36 pm
Great post! You’re right, Push Notification has the potential to destroy the iPhone UX. Apple should include a section on Push Notifications in its HIG, and take the recommendations from this post. Bravo! ü
June 17th, 2009 - 9:16 am
Great advice Toby. Forwarding to our mobile team.
June 17th, 2009 - 10:18 am
[...] guess iPhone push notifications might be annoying. But you can always turn them off. This isn’t what worries [...]
August 6th, 2009 - 4:02 pm
GR8 article for iPhone devs on usability of 3.0+ software’s push notification feature: http://is.gd/2l2uM
This comment was originally posted on Twitter
August 17th, 2009 - 8:03 am