Raise your mouse (or thumb, if you’re mobile) if your smartphone has a data connection at all times. Probably not too many of you can say this. We certainly can’t. Either we lose reception on the subway, or our homes are lined with lead paint, or we are on Sprint for some strange reason. Whatever the reason might be, we lose data all the time. But does that mean we have to lose the ability to use your app?
Look, we’re not looking for magic. No data means no internet, so of course we wouldn’t expect new emails to load or be able to search through Google. But your app should still retain some functionality when offline. We’ve seen poorly designed apps appear blank, crash, or not even start up when offline. This leads to poor user experience, of course, but also a huge missed opportunity for companies to engage with their customers even when there’s no data connection. So how can we do better?
1. Save the last state.
Here’s a tale of two apps made for content delivery:
Both were launched in airplane mode. Which provides a better experience? The CNN app on the right saved our last view and provides us with the headlines for the articles that were last loaded. That’s not all. A long press on an article will give the option to star it, saving it to be read later when internet becomes available again. On the left? Nothing. Don’t be afraid to let your app cache a little data to provide a good offline experience.
2. Compartmentalize online and offline features.
There are features on every app that should work without an internet connection. One of our favorite apps in this area is Evernote. Even in the free version, the app is entirely functional offline: you can edit old notes or write a new one, and the app will sync everything up with the cloud once you’re connected again. You don’t even notice online/offline status when using this app.
But there are plenty of apps that astoundingly lose all functionality when offline. We’ve come across 1-player games that won’t let you play without an internet connection. We’ve seen a NYC subway map app that couldn’t even display the subway map without being online. Or how about when you launch the restaurant locator of a certain burrito chain’s app:
What? Why wouldn’t it at least have a generic map of locations? Why couldn’t it use your smartphone’s last know location to pop up a map? Can’t they imagine a scenario where a user is on the subway without internet and looking for a place to eat once he or she is above ground? The zip code search on the map should be compartmentalized from the general map itself, or even just provide a text list of locations. The offline user experience can be better and more engaging in this way.
3. Allow users to download offline functionality.
Recently while traveling abroad, Google Translate became an important app to communicate with locals. Internet was spotty and roaming costs were/are atrocious so it was a good thing that the app allowed us to download language packages while we had Wi-Fi. Even though the downloads were fairly large (approaching 200MBs), it was great to have them offline and we knew we could always delete them once our traveling was over.
If possible, design your app to take advantage of downloading packs in this way for offline use. Amazon Prime and now the cable channel EPIX allow their customers to download videos for offline viewing, and we feel this trend will continue as apps mature. What portion of your business’ app can be downloaded to be functional later when offline?
4. Build with offline-mode as a priority.
Too many apps we’ve used crash when we suddenly lose data connectivity. It’s like the developers never expected the online status to change mid-use, which is something that happens all the time. This problem, and the other problems mentioned previously, stem from developers not considering offline use from the get-go. A report by Forrester said:
…developers strive to satisfy customers in their mobile moments, but cannot make assumptions about the constancy, quality, or even existence of an individual’s network connection. Therefore, offline support will be a crucial consideration for nearly every future modern application. Unfortunately, our experience shows that offline support is the mobile app feature continually under scoped by developers and oversimplified by stakeholders.
If you want to reach your users as often as possible, delivering a good offline experience is a large part of the equation. Make sure your app functions offline as well as it possibly can, and you’ll see higher levels of customer satisfaction as well as customer loyalty.