Mobile phones have evolved to support and improve almost every aspect of our lives, serving as our pocket cameras, navigation computers, notepads, alarm clocks, flashlights, wallets and dozens of other things. Today, a smartphone can serve so many diverse purposes that the “phone” part in the name seems a reductive misnomer.

However, a smartphone, more often than not, is only as good as the speed and quality of the internet connection. We’ve all been there – without the internet, the wonder-device in your pocket becomes a useless slab of plastic.

In this article, we discuss what offline-first means and what are the key reasons for considering this development approach.

What are offline apps and who needs them anyway?

Offline first is a development paradigm whereby developers ensure that the app is not affected by a complete lack of or poor quality of network connection.

Among other things, offline first implies the ability to sync data between multiple devices even when the data was updated in offline mode, i.e. the changes you make on your mobile will be synced to the cloud and then to all your other devices when the internet connection is finally available. This process, naturally, involves some queuing, caching and publish/subscribe patterns – but it’s a completely different story and we don’t want to get into the weeds, at least for now.

Offline apps are not a completely new thing. Early smartphones did not rely on the internet as much as modern phones do – and ran mainly offline apps. Today, however, almost every media-rich app unscrupulously consumes mobile data. And most people don’t even care about the cost, as it’s only a fraction of what it was a decade or so ago.

Review the chart below for a bigger picture.

Mobile innovations lower costs

Source

The conclusion is clear: we consume inordinate amounts of data, but only pay proverbial peanuts for it. Of course, the prices still vary significantly across the globe – but so does average income, which makes the comparison irrelevant at best.

the cost of mobile internet

The average cost per 1GB of data varies significantly across the globe, but such comparisons rarely paint the whole picture (source)

The offline-first approach makes sure the device can run offline until a reliable connection is established. For developers, this means implementing a capability to store information in the device through databases, caches or any other local storage approach. When the user opens the app when offline, these run as normal as possible, and may only give the user a notification that it is not in sync with all the recent changes.

global monthly mobile data traffic

The statistics for global monthly mobile data traffic show how voracious are our mobile phones. Source: Ericsson mobility report

The 6 key considerations to make an offline-first app

There are several reasons to consider building an offline-first app. Firstly, we all know that bad internet connection may translate into a frustratingly poor user experience.

Offline apps run smoothly independently of the internet connection. They load fastersave the battery, and don’t consume the data plan. Other advantages come in tow.

1. Your app is very likely to be used in areas with poor connectivity

In some cases, we want to be able to use the app no matter where we are and independently of the quality of the internet connection. Think navigation apps, video streaming, ebook and audiobook platforms (remember people want to use them on the plane) and travel guides.

2. Your app is likely to be used by tourists and travellers

Tourists and travellers are usually on very skimpy data roaming plans and want to do everything to minimize the app’s reliability on the internet. For example, they will appreciate it if your video streaming app allows downloading episodes for offline use, or the English-Chinese dictionary can save its databases for offline use.

3. You want to build a better user experience

Offline mobile apps are not just about the cost of mobile data. There is plenty of evidence that apps should be developed with the offline-first approach in mind. From a user’s point of view, making the app offline-first translates into a seamlessspeedier experience, regardless of the availability of the internet connection.

Developing an app that works in offline mode or one that switches to offline mode dynamically results in better user experience when the connection is low, slow, or simply not available. After all, not every user can accurately identify bad network coverage as the real cause behind the poor performance of the app. The user will sooner think the app is the problem – it just runs slowly and is not responsive.

4. Your app downloads big amounts of data

Users of video or audio streaming platforms should be allowed to download content while on WiFi and watch it anywhere else without worrying about the internet connection.

Likewise, navigation apps should allow users to download maps for offline use while on WiFi.

netflix download

Netflix allows its users to download select shows for offline use. Source: Netflix

5. The app will involve frequent back and forth with the servers

Offline-first is a development approach that ensures an app will work as well offline as it does online. Some apps like dictionaries involve communicating with servers back and forth, which makes the app slower and impacts the user experience. However, regular queries and frequent publish/subscribe patterns will slow the app down. Offline-first is a perfect remedy for that.

6. Your app does not even need online functionality

Perhaps the app you’re developing doesn’t even need a constant connection to the internet as it offers only a limited number of features? Eliminating unnecessary online functionalities will make it faster and more reliable when used in areas with the spotty connection.

Summary

Mobile phones have evolved tremendously over the past two decades – they are faster, slimmer, have better screens and take better photos than ever before. It is safe to say these pocket-sized devices have already out-featured regular desktop computers in many ways. But no matter how advanced mobile phones are internet connectivity is nothing certain.

Whether it’s an app used by frequent travellers, people on minimal data plans, technicians inspecting elevator cars in the elevator shaft or construction teams conducting underground safety inspections, offline mobile apps come in handy.