App size matters I
By Gonçalo Alvarez, Engineering Manager
Have you ever felt like you are King of your Castle, Master of your Domain, you are on top of your game, but you can not really fathom, put into words or numbers the depth of your impact? This is often the case with app performance — we all know it is fine until there is an issue. Then it is not fine. When the rubber hits the road, it is time to hold our ground and be prepared to immediately pinpoint the pain, troubleshoot at the speed of light and ease out the speed bumps.
This is the first of a series of blog articles dedicated to Mobile Apps Performance. Through the course of these articles, you will learn about the importance of performance at Farfetch — a pillar for engineering teams — and how we have come to leverage performance by moulding it into budgeted business cases and factor them into business decisions.
This article will cover the concepts of app size performance: why it matters, its impact and how large app sizes can be detrimental to the business.
App size performance
Large mobile apps are less prone to be installed, more likely to be uninstalled, they take longer to download, and they generate higher expectations, which in turn become more challenging to meet. All in all, big apps mean bad reputation. Pardon my french, but this is no corollary for Succès de scandale — not all publicity is good, some will smear a product beyond repair. The potential backlash brought by large apps and resulting decrease in adoption, shrunk retention and negative chatter, can knock a business off their feet — the opportunity costs of overlooking app bloating are too big for one to disparage. Here’s why.
Penetrating international markets
According to SensorTower, the top downloaded app sizes have increased to a rhythm paced as high as 1.000x over the past decade. While data from Forbes indicates that cell data download speed has increased by 20% year on year. The gap in download app size versus download speed widens in developing countries where network coverage has not had a strong investment and growth. This influences user behaviour defensively provoking a quest for smaller apps, thus hindering app downloads through cell data in developing markets where data access can be as much as 3.5x more costly than in the US, Europe or China. This thwarts businesses to thrive globally.
Larger apps are more prone to get uninstalled first. While hard memory availability has increased by n fold in our pocket devices, so have the resources we fill our drives with — resource availability is nearly as pressing an issue today as it has ever been. Albeit app uninstall stands as a multi-layer metric for success to our apps, pressure for users to uninstall an app is felt harder in correlation to larger app sizes. Once the app is removed from our phones, it stands to reason that it will be harder for the app to get back in. Plus, the uninstall rate can be used by app distributing platforms, the likes of Apple and Google, to rank and market apps in their stores — the uninstall rate effect.
Meeting user expectations
The bigger the app, the more the user expects from it. Download a 500MB calculator and you’ll be quick to revile against the product manager that bloated the app with nugatory third party analytics SDK and tons of pixel wide background images. You will feel the urge to lash out at the developer in charge of putting a continuous integration pipeline in place to give birth to such a misleading purpose app. All you wanted was a calculator. You were led to dream of a powerful and future blasting calculus mean machine. You ended up with a broken dream. So long, customer. We will probably never ever see you again (or your friends and fam!)
Beating the App Bloat
There are ways we can beat the app bloat. While this article aims not at focusing on such strategies, good etiquette encourages us to share a list of dos and donts. Here is a list we have found useful at Farfetch:
- Optimise app imagery. Follow Apple’s and Google’s sponsored design guidelines to reduce the extra load in local graphic assets to your apps.
- Remove unnecessary files. Run frequent and scheduled maintenance on your codebase, making sure your project is free of dangling files lurking from previously active features that are no longer part of your product.
- Weigh in the value of new third party SDK to partner with — gathering all data is not the end, acting on good data is. Work closely with your Product Management team to challenge the addition or removal of Third Party SDK to your apps.
- Use strategies like app thinning or remote resources to keep your mobile app light and cool.
Next time around, we will share Farfetch’s own strategy on Mobile App Sizes and how we have started monetising mobile app sizes — building a business proposition.
How much does a megabyte in app size cost? Stay tuned for answers.
Originally published at https://www.farfetchtechblog.com on May 17, 2020.