Monzo Boosts App Performance by 35% with Simple R8 Update
Monzo, a leading UK digital bank serving 15 million customers, significantly enhanced its mobile application's performance metrics through a straightforward technical adjustment. The engineering team identified app startup time as a critical bottleneck but sought to avoid complex codebase overhauls. By fully enabling R8 optimizations, specifically by replacing the default proguard-android.txt configuration file with proguard-android-optimize.txt, Monzo unlocked substantial improvements across multiple key performance indicators. This single change removed the -dontoptimize instruction, allowing the R8 compiler to function effectively. The results included a 35% reduction in Application Not Responding (ANR) rates, a 9% decrease in overall app size, and notable improvements in launch speeds, with P50 and P90 launch times improving by 11% and 12% respectively. Additionally, startup reliability saw gains, with cold starts improving by 30%. This case study, published on the Android Developers Blog by Senior Developer Relations Engineer Ben Weiss, demonstrates that impactful software optimizations can often be achieved through simple configuration updates rather than extensive engineering efforts, offering valuable insights for Android developers seeking to enhance app stability and efficiency.
Wire timeline
Monzo Boosts App Performance by 35% with Simple R8 Update
Monzo, a leading UK digital bank serving 15 million customers, significantly enhanced its mobile application's performance metrics through a straightforward technical adjustment. The engineering team identified app startup time as a critical bottleneck but sought to avoid complex codebase overhauls. By fully enabling R8 optimizations, specifically by replacing the default proguard-android.txt configuration file with proguard-android-optimize.txt, Monzo unlocked substantial improvements across multiple key performance indicators. This single change removed the -dontoptimize instruction, allowing the R8 compiler to function effectively. The results included a 35% reduction in Application Not Responding (ANR) rates, a 9% decrease in overall app size, and notable improvements in launch speeds, with P50 and P90 launch times improving by 11% and 12% respectively. Additionally, startup reliability saw gains, with cold starts improving by 30%. This case study, published on the Android Developers Blog by Senior Developer Relations Engineer Ben Weiss, demonstrates that impactful software optimizations can often be achieved through simple configuration updates rather than extensive engineering efforts, offering valuable insights for Android developers seeking to enhance app stability and efficiency.
Android Developers Blog