Emerge Tools Profile picture
Emerge helps teams like @DoorDash, @Spotify, @Duolingo, @Bumble, @Square, @Tinder, @TuneIn, @Dropbox, @OpenAI & @CashApp build better mobile apps 🚀
Feb 6 16 tweets 5 min read
Got a few requests for this!

Let's break down the @binance crypto app 💰 Image So there's two versions of the app we're looking at, the US version and another version shipped under "Binance Switzerland"

From what we saw, the US app is only for the US, and every other country gets the app from Binance Switzerland, probably due to different regulations Image
Image
Jan 23 11 tweets 4 min read
We got multiple tags to analyze the Tapo @TPLINK app for being over 760 MB 👀

Let's see what we find in here 🤭🔎 Image Total install size is 764 MB

204.6 MB
171.5 MB frameworks
45.4 MB main app target
27.7 MB plugins
a whole bunch of assets and localizations assets.carImage
Jan 21 15 tweets 6 min read
It's always the banking apps huh 🤦‍♂️

Figuring out why the @UBS banking iOS app is almost 800 MB 🥲 Image First up, an overview

Frameworks - 336 MB (43%)
Main app target - 180 MB (23%)
Plugins - 55 MB (7%)

But what really sticks out is all that red, which signifies duplicate files ❌ Image
Jan 16 9 tweets 4 min read
Customer: “Why is this app so big?”

Company: “Very cool features & lots of them + you have no way to check what I’m saying”

Not today corporate. Not today.

🧵 Why @ouraring is ~450 MB Image This might be a bit long, so TL;DR

Oura is just duplicating a bunch of images, json, & localizations. The size isn’t b/c it’s “powerful with many features”

Here’s what the size actually is 👇

Assets: 207.8 MB
Localizations: 49.2 MB
JSON: 35.5 MB
Audio: 26.5 MB Image
Jan 7 6 tweets 2 min read
In 2024, @DraftKings decreased app size by 65% and improved app launch by +50%

Let’s take a look at what they did

🔬 Migrating from Xamarin → Native Image The main app binary went from 97 MB → 11 MB (the project also changed its name from DK.Gaming.iOS → Sportsbook)

Aside from that, much of the size decrease came from completely removing all dynamic-link libraries (.dll, used in Xamarin projects) Image
Dec 17, 2024 7 tweets 3 min read
We got tagged to analyze this app on Thre*ds so we're posting it here too 🤭

🧵 Let's take a look at why the @intesasanpaolo iOS app is 699 MB 😳 Image A quick breakdown 👇

448 MB (64%) dynamic frameworks 🫠
72 MB (10%) main app target
74 MB (11%) of assets Image
Nov 11, 2024 8 tweets 3 min read
We've got to stop meeting like this 😅

🧵 taking a look under the hood of the @Yelp iOS app Image Install size weighs in at ~318 MB, but ~4 MB of that is the watch app ⌚️

High-level breakdown:

130 MB dynamic frameworks
47 MB assets
34 MB main app target binary
26 MB localizations

For reference, @GoogleMaps weighs in at ~296 MB (7% smaller) Image
Oct 3, 2024 9 tweets 4 min read
Did someone say app size?!

Here's why @thetrainline iOS app is so big 🧵 Image Total install size is 342 MB

Basic breakdown:

115 MB of Plugins
109 MB main app target binary
34 MB sqlite file 👀 (more on this later)
23 MB Dynamic Frameworks

The rest is assets, localizations, misc. Let's start with the Plugins 🔌 Image
Sep 24, 2024 11 tweets 4 min read
Do you want a paid wallpaper app from @MKBHD?

Maybe not? Well do you want to know how its made 🤓

🧵 Looking inside the new @Panels_art app, starting with ads Image 🎤 Ads have been a big topic

Panels is using Google Ads in both iOS (GAD) & Android

On Android, is the largest dependency in the dex com.google.android.gms.internal.ads

Image
Image
Sep 5, 2024 10 tweets 4 min read
Oohhoho this one looks fun!

Let's take a look at why the @SantanderUK iOS app is at a whopping 613.3 MB and how 35% of it does nothing for the user 🧐 Image Right off the bat, it looks like most of the app (587.6 MB) is dynamic frameworks

Dylibs let you share code between targets, but are larger than static frameworks b/c static let's the compiler strip dead code. It's likely that Santander doesn't need ALL of those to be dynamically linkedImage
Jul 9, 2024 11 tweets 4 min read
Good question @VishalMalvi_ ! Here's what's going on behind the scenes of the @gmail iOS app 👇 Image Here are the biggest chunks of the app

Main app target - 225 MB
Plugins - 99 MB
Dylibs - 46 MB
Localizations - 130 MB 👀
Image
Image
Jun 24, 2024 8 tweets 3 min read
Another day, another "How is this app so big tweet" 🤓

This time its the @DJIGlobal iOS app, which comes in at 1 GB Screenshot of tweet of the DJI Mimo app store with the text "New app size recrod" A lot of the comments speculated that the app was large due to assets & while there are 155 MB of .mp4 video files, the bulk of the size is coming from ML models Pie chart of app size showing 155 MB (15%) are coming from videos
May 13, 2024 8 tweets 3 min read
Yes, we can be that someone 🤓

Looking into the @smartthings iOS app
Most the app is made up of dynamic frameworks - 633 MB of dylibs

The 4 largest dylibs take up ~350 MB

TVController2: 95.3 MB
SmartThingsCore: 91.1 MB
SmartThingsOnboarding: 90.8 MB
UnityFramework: 73.5 MB

... no clue what this app that "does nothing but tell me if I left the fridge door open" is using Unity for, but it's probably super important and needs to be there...Emerge X-Ray of SmartThings
Mar 25, 2024 10 tweets 4 min read
These are the best 🥲... breaking down why @LinkedIn iOS is half a GB

Here's a top level view of the latest version of LinkedIn

300 MB for just dynamically linked frameworks & Plugins is...a lot. In fact, just the Dylibs & Plugins today are bigger than the entire app was back in November 2022 🫠
Emerge X-Ray of LinkedIn App showing 187.5 MB of Dylibs, 109.9 MB of Plugins, and a 110.6 MB main app binary
Size tracker of LinkedIn iOS app showing the app was 292.9 MB in November 2022 and is now ~450 MB
Mar 8, 2024 9 tweets 4 min read
Finding accessibility issues in an app is an incredibly manual task that can take hours depending on the size. Which seems like a perfect place for ✨AI ✨

🧵Surfacing accessibility issues in the @Drizly app w/ AI 🧠 A quick background - our Snapshots product turns Previews into snapshots. A recent feature gives the ability to use AccessibilitySnapshot w/ one line

You don't need to write test code to get snapshot tests or to snapshot VoiceOver elements
Code snippet showing `emergeAccessibility(true)` on a PreviewProvider
Drizly Preview with annotations of VO elements
Aug 9, 2023 19 tweets 6 min read
Localization files translate text in your iOS app, you'll have at least one for every language you support

They're are also a common source of size bloat. The @FedEx iOS app has 130+ MB of localizations - over 50% of total size

🧵 Avoiding common pitfalls + a size saving script Pie chart of the FedEx app. Chart is showing size by categories. 55% of the app (132.7 MB) is localization files Localization bloat is usually from one of two causes

1. File duplication
2. Inefficient file formatting
May 23, 2023 22 tweets 8 min read
Last week we wrote how @peacock reduced app size & app launch after moving from RN to native

By beautiful chance, another streaming app did the same this week. Did the same effects occur? Well, yes, no & it depends

🧵 Breaking down HBO's new Max app
So, HBO Max is now Max. New app, new bundle id, new logo, & entirely new codebase. Let's start by comparing the iOS size and architecture

iOS
HBO Max (old app): v53.20.1 - 60.4 MB install size
Max (new app): v1.0.1 - 108.8 MB

The new iOS app is 48.4 MB (~80%) bigger
May 22, 2023 7 tweets 3 min read
How did the @Twitter iOS app change over the last 6 months? Why did the latest release of Google Translate Android reduce app size by 1/3rd?

We try to make these questions easier to answer, which is why we're very excited about our newest feature, AI summaries of build diffs Jumping right in - Twitter v9.59.1 vs. v9.34.6 (iOS)

Overall size decreased by 34 MB, but how quickly can we identify what changed? Image
May 18, 2023 8 tweets 4 min read
So, what does the @OpenAI ChatGPT iOS app look like under the hood? Well we took a look at a decrypted build

🧵 How the ChatGPT iOS app is made Overall install size is 41.9 MB and has a fairly simple structure. Here's our X-Ray treemap Treemap of ChatGPT iOS app....
May 17, 2023 12 tweets 4 min read
What happens to an app's performance when it goes from react native -> native?

The @peacock app just made the switch on iOS & Android and had a significant change in size and startup time

🧵 Performance impact of switching to native A quick primer

RN let's you create mobile apps for Android and iOS using js & react. 1 codebase, 2 apps. It has an active community & there are certainly reasons you'd want to use RN

That said, if performance is important, native is going to be better
Jan 17, 2023 6 tweets 5 min read
Notable iOS app size changes (install size) over the last week

📈 Increases
@BestBuy: +26.3 MB
@indeedjobs: +26.2 MB
@github: +10.6 MB

📉 Decreases
@Shopify: -24.5 MB
@Reddit: -24.0 MB
@googlechrome: -19.9 MB

🧵 How Best Buy could've avoided the increase altogether Best Buy v22.12.10 (previous)
Install Size: 148.6 MB

Best Buy v23.1.10 (latest)
Install Size: 174.9 MB

The difference in size between the two is due to the latest release being built with Xcode 14