Most practical apps are a gateway to the Internet, connecting users to social, media or informational sites. Most apps work best when they have a good Internet or WiFi connection. But when the app has a large directory of information – a supermarket shopping app, for example – poor connectivity can result in a user experience that’s slow and frustrating.
‘Offline-first’ is a development approach that ensures an app will work as well offline as it does online. Creating an offline-first app can, in the right context, ensure a more reliable and faster experience, retaining users and providing a better user experience for your customer.
How (most) apps work
Most apps are composed of software on a device and content on a server. To access the content, the device must talk to the server. The server is therefore the repository where all the storage, management, handling and updating of content happens.
This remains true when multiple user-facing interfaces, like websites and apps, require access to a single database, and having all the content in only one place is much simpler than trying to coordinate and synchronise multiple places.
As a result, most of us assume that shopping or directory apps – those providing access to large datasets – need to be online at all times, slowing down whenever there is a slow connection and not working at all when the user is offline.
Not so. With forward-planning and user-first thinking, it’s possible to offer a fast, high-quality app experience offline. And the benefits of doing so are considerable.
The disadvantage of most online apps is that they need a decent and reliable internet connection. When you don’t have one, the app is likely to be slower and less responsive.
While most apps require an Internet connection, they don’t necessarily need one all the time. They are often accessing data that doesn’t change frequently and therefore don’t require constant updates. In these instances, an ‘always-on’ connection to the server is not needed.
Offline-first apps make it possible to move content off the server and onto the phone. If an app only has to go to the server when it needs to, rather than all the time, it will be faster and more reliable. This is particularly significant where content doesn’t change often, but users require fast access.
Take, for example, the supermarket shopping app which you’re trying to use in your kitchen, where your WiFi reception is poor. With a traditional online app, filling your cart requires the app to go back and forth to the server all the time: because of the poor connection, it’s slow and frustrating.
Offline-first moves the content (the supermarket’s directory of products) to the app, thus speeding up the shopping experience. You only need to go online to complete the payment and schedule of the delivery. By moving some of the server-stored content to the app, the whole user experience is faster, smoother and more reliable.
The impact of poor user experience
Customers are impatient. Studies show that if your website or app is slow, they won’t stick around for long. 53% of visits to mobile sites are abandoned if they take longer than three seconds to load. The probability of bounce increases exponentially as pages take longer to load. As page load time goes from one to ten seconds, the probability of users bouncing increases by 123%. While these stats are for web pages, we’d expect users to behave in the same way with a frustrating mobile app.
Mobile shopping apps account for just 5% of time spent on smart devices, but this doesn’t mean the apps aren’t being used: it means they aren’t time consuming. In fact, consumers are becoming more reliant on shopping apps – with the number of in-app purchases growing by 50% globally in 2017.
Retailers such as Amazon and ASOS that have delivered simple, easy-to-use app experiences are reaping the rewards. Seven out of ten Amazon consumers use the app to shop, while ASOS users reportedly spend 80 minutes per month on the app. Providing customers with a speedy and responsive app experience keeps them happy. If offline-first offers a huge leap forward in terms of both reliability and speed, it’s worthy of consideration.
Should your app be offline-first?
Whether your app should be offline-first is context-specific. The three most common reasons for going offline are as follows:
- Your app is likely to be used in areas of poor connectivity.
A good reason to consider building an offline-first app is to ask whether it is likely to be used in areas of poor signal, like the countryside or those with limited WiFi connectivity. This is especially relevant for users who travel frequently and cannot depend on having a reliable mobile signal. Enterprise-focussed productivity apps are one such candidate.
- Your app offers a large directory of content, accessible via a search function.
As discussed above, searching large volumes of online data can be time-consuming where a web connection is slow or unreliable. This issue is not confined shopping apps, affecting museum and gallery visitor programs that include catalogues of paintings, archival objects or any other media. Implementing a lightweight version of an online database will improve your UX in terms of speed and accessibility.
- Your app offers a limited number of features and does not require online functionality.
Finally, it’s worth considering whether your app requires an always-on web connection to perform its key features. Many dieting apps need to go to the internet and back each time you log a food, even ones you eat regularly. This constant dialogue makes the app slower which isn’t helpful to the user, who mostly seeks to perform a single, simple transaction i.e. to record something they ate. In this case, a directory of food data could be downloaded to the app periodically, making the UX smoother and the user more likely to build a positive of recording their meals.
Taking an app offline represents a design and development challenge, and we’ll tackle two of the key issues – app speed and size – in our next article. But for certain apps, the costs of offline-first thinking can be outweighed by gains made in user experience.
Could you go offline to improve yours?
How do offline apps work in practice? Find out with our Yachting Pages case study.