Let’s talk about offline mode for your app. What is it, really? Do you need one? If yes, why? And how does it work? First of all, let me remind you that the majority of internet users today access the web with their smartphones. It is easier, faster, and more convenient. Mainly, though, it is because a much bigger number of people have smartphones than those who own a laptop or a PC. Therefore, e-commerce has become m-commerce and digital marketing is now, essentially, a mobile marketing.
What is Offline mode?
Offline mode is a popular feature that is used in many flagman apps like Uber, Amazon and Google Maps because it limits, if not eradicates altogether, the inconveniences caused by the absence of connection or its bad quality. Proceed with the following reading material to know more about how it can benefit your own app if the offline mode feature is adopted.
- Benefits of the Offline Mode
- Typical Scenarios
- Questions to Answer
- Analyze Your User Journey
- Outline Your Objectives
Benefits of the Offline Mode
So, why your app might need the offline mode? Let’s take m-Health app, for example. A therapist has just measured the patient’s vital signs and needs to put it in his profile but the connection is lost. Should the doctor wait? Is it convenient to write it down and then (if he remembers) to fill the form later? Absolutely no.
Therefore, the app should work just fine even without connection. The doctor works as usual and when the connection is reestablished, it will be updated automatically. The value of the process is critical because users can’t simply wait while one study shows that up to 70% of users quit the app or the site if wait time is longer than 3 seconds.
If the business process in the app is important enough, then it is crucial to include offline mode in order to allow smooth interaction and retain users.
Google maps works offline and uses client’s cache for the most recent data but goes as far as using GPS as well and that’s beautiful. When I first started to own a smartphone, I didn’t use 3G connection at all but I used maps thanks to WiFi spots all around me. For Google to update its map even a second here or a second there is enough to navigate you in a foreign city if you didn’t manage to get 4G yet.
Pocket lets its users save reading for later. You can save articles while you’re online and read them later on offline. As you can see, clearly outlined user journey and solid product value make this app unimaginable without offline mode. Like many other apps it kind of “charges” while online and “works” while offline. Brilliant, right?
Delivery – On the way to a customer’s location a delivery guy has lost connection. Even if he knows where to go, he has no way of reporting back to the employer or to communicate with the client in case he, for example, can’t find his way into the building or is stuck in traffic and is late. With offline mode a delivery guy updates the order form (“be there in 5 minutes”) and continues his way with updates being sent automatically once connection is reestablished.
Banking – Imagine you need to make a money transfer fast because your friend needs cash quickly. He needs it, like, right now. And you’re in a mall with bad or absent connection. What are you going to do? Go all the way out just to do it? Unlikely. You will probably do everything now and the app will make a transfer later when connection is reestablished.
Questions to Answer
You need to know what you’re implementing before you do it. So here’s a brief Q&A about the offline mode that you need to go through.
What data to pick? Whether it is some text info, a photo, a document or audio file, it should be absolutely crucial because you need to store the least possible amount of data locally not to overload the device.
How often to sync? Every attempt to connect drains battery life but if synchronization occurs rarely, users can miss the updates. Find the balance.
Where do you store the data? Make the server do all the work possible because smartphones are not datacenters and overheat or shut down easily when overloaded. Store locally only the data that is critically important and cannot be stored on the server at the moment.
how it works: server-client-cache cycle
Analyze Your User Journey
When making offline mode you need to look from the perspective of end users. When would they possible need to send data? Will you lose them if they can’t use your app in offline mode? Is it efficient to include offline mode or users can do without it?
It all matters because if you really don’t need offline mode, there’s no reason to add more coding and adjust the whole system for an app like, for example, Slowly that deliberately takes a couple days to send letters to recipients all around the world to make it look like they are really sent via mail even though it can be delivered in an instant.
But more often than not your app will need to do something offline. For example, your clients may want to buy something now and they are ready to pay for it. It is crucial to take their payment and shipment data now, shortening the client journey or otherwise they might change their mind since compulsive consumerism is primary consumerism. Even seconds matter because customers may not be that willing to buy on second thought, are they? Personally, I am. If not for compulsive consumerism, I wouldn’t have bought half of what I own.
Outline Your Objectives
Installing offline mode features in your app requires additional effort and time. Make sure you do it with clearly defined business objectives. Here’s a checklist clarifying that you:
- Allowed users to receive a sync status notification
- Tested the retry mechanism (number of times server tries to connect with the client)
- Worked out the smallest amount of data that is stored locally
- Specified factors that require a sync and know exactly when update is needed
- Defined the smallest amount of data to transfer from server to a device
- Balanced between the frequency of syncs and the battery efficiency of a device
- Know precisely what data is crucial and has to be synced
- Installed triggers that initiate syncs
You should consult with your development team, business analytics and project managers to know whether it is relevant to add offline-mode feature and if yes, how should it be implemented.
Offline mode for your app is a great feature to have. It is often critical that your app can gather client data while users are offline and then update automatically. Your business objectives should be clearly outlined and you should define what concrete purposes offline mode will serve in your app.
Need an app with this feature?