Why is my AAB file 85 MB while my APK is only 25 MB in React Native?


I’m working on a React Native Android app and noticed a large difference between the generated APK and Android App Bundle sizes:

  • APK: approximately 25 MB

  • AAB: approximately 85 MB

The AAB is more than three times larger than the APK. I’m trying to understand what causes this difference and whether it indicates an issue with my build configuration.

Could this happen because the AAB includes native libraries for multiple CPU architectures, while the APK includes only one? Which files or Gradle settings should I inspect to confirm the cause?

Also, how can I check the actual download size users will receive from Google Play after uploading the AAB?

0
Oct 2 at 10:03 AM
User AvatarDawood zia
#android#react-native

Accepted Answer

Yeah, users don't download the AAB; it's just what you upload. It includes every ABI, density, and language, and Google Play breaks it up; each phone only gets the parts for its own CPU, screen, and language.

For the real download size, upload to internal testing and check Play Console > Test and release > Latest releases and bundles.

Or run this:

bundletool build-apks --bundle=app-release.aab --output=app.apks
bundletool get-size total --apks=app.apks --dimensions=ABI

ps: RN builds all 4 ABIs by default: reactNativeArchitectures=armeabi-v7a,arm64-v8a,x86,x86_64` in `gradle.properties`. while your APK includes just 1

User AvatarEmmanuel Obiechina Ikenna
Oct 2 at 11:55 AM
2