It’s 2016 and we are in an age where smartphones are pushing the limits of hardware performance, with their super HD screens, quad and octa-core processors, bigger RAM and what have you. Even users have come to expect blazing performance, be the operating system or your apps.
This means that any app that responds a bit slower than usual for the average user’s taste will be less used or worse still, uninstalled eventually. In fact, a research from an app intelligence platform Appdynamics suggests that anything over 3-4 seconds of total response time and the majority of user (60% or greater) will abandon the transaction and may even delete your app altogether. According to Neumob, a mobile CDN, 48% of users uninstall apps due to slow speeds.
The time taken for the host server to receive the request and deliver the appropriate response is defined as latency. As a general thumb rule this round trip from request to response should be around a second.
It then becomes really important to figure out what response time your app delivers and tune and optimize to deliver a better user experience. Many companies are known to have seen significant business benefits by making their apps run a hair faster than they did before. Those who did not, suffered the consequences. For instance, the Microsoft search engine Bing found that a two-second slowdown in page load performance decreased revenues per user by 4.3 percent. So how do you tackle something like this? We’ve put together 5 best practices that you can follow to ensure that app latency is kept in check:
- Frugal is the name of the game
An app crowded with elements is going to run slow. If your app has too many widgets, each screen will take longer to load. Thin it down a bit by reusing image assets for different elements so that the image file for these assets needs to be loaded just once. CSS sprites can help you pack multiple images into a single file.
You could also combine several visual elements into a single widget. For instance, if the app navigation area has detailed graphics for each button, you could have all these graphics in a single background image for the entire navigation area. Now your app navigation requires loading only one image which means load time is further reduced.
- Keep your app content closer
The further your app content is from your users, the more time it will take to reach them. It is as simple as that. In this case, using a Content Delivery Network (CDN) helps. A CDN is a geographically distributed network of servers that deliver static content to users that are geographically closer to them. Content is usually cached in distributed servers across a region, thus reducing the Round Trip Time (RTT) involved in fetching that content for the user. This not only reduces your app latency, but also saves bandwidth and reduces your hosting costs.
- Keep your users engaged
Persuade the user to focus on other things while the app is loading. A good example of this is when users upload a picture on Instagram. As soon the user chooses a picture to share, it starts uploading. However, while this happens, the app invites the user to add tags, title and description as the picture uploads in the background. The picture has loaded by the time the user is ready to press the share button, unaware of the time taken by the upload and goes on to share the picture instantly.
Also, if you think your app will take longer to load, use progress bars or splash screens to keep the user engaged while the app loads. Splash screens can be a creative take on the app’s brand logo or rich and engaging animations. A progress bar creates an impression that it is loading faster with a progress bar that moves faster at the beginning and slows down towards the end, giving users a sense of optimism that the app is loading fast. Ensure that the progress bar never stops, else users would think the app has frozen.
Besides following these best practices, you can also use open source tools such as WALT Latency Timer from Google to measure real world touch and audio latency and deliver better app user experience. In this day and age, where response times can make or break an app, it is absolutely crucial to have app latency countermeasures in place, right when building your app or adding more features to it.
Furthermore, over 90% of the apps being free on app stores and just about 3% of the users convert with in-app purchases, making in-app advertising the most widely used monetization model. App latency can seriously affect the ad monetization potential of users if their session is adversely impacted by latency and if the ad can’t be served as intended. Your app experience has implication on the ad experience and app developers who don’t address latency can lose on multiple fronts such as user retention and revenue.