[Atomic Glue](atomicglue.co)
MOBILE DEVELOPMENT
Home › Glossary › Mobile Development· 36 ·

App Bundle / AAB

/æp ˈbʌndəl / eɪ eɪ biː/noun
Filed underMobile DevelopmentInfrastructure
In brief · quick answer

The Android App Bundle (AAB) is Google's required publishing format that generates optimized APKs for each device configuration, reducing app size by an average of 15%.

§ 1 Definition

The Android App Bundle (AAB) is Google's official publishing format for Android apps, required for all new apps on Google Play since August 2021. Instead of building a single monolithic APK that includes resources for every device configuration (screen density, CPU architecture, language), you upload an AAB and Google Play uses it to generate and sign optimized APKs for each user's specific device. This process, called Play Feature Delivery and Play Asset Delivery, can reduce download size by an average of 15% and support on-demand feature downloads. iOS has no direct equivalent; IPA files remain the single-file distribution format for the App Store.

§ 2 How App Bundles Work

The AAB format is an archive containing your app's compiled code and resources with metadata about how to split them. When a user installs your app, Google Play generates a tailored APK containing only the resources for that user's device: the correct screen density drawables, the right native libraries (armeabi-v7a, arm64-v8a, x86), and only the languages the user needs. This process is server-side and invisible to the developer. The AAB itself is not installable. It is a publishing artifact, not a distribution artifact.

§ 3 Play Feature Delivery

App Bundles enable modular delivery. You can divide your app into feature modules that are delivered on demand, at install time, or conditionally. Install-time: Delivered with the base APK. On-demand: Downloaded when the user accesses that feature for the first time. Conditional: Delivered only for specific devices or countries. This allows apps with many features (camera editing, AR modes, country-specific content) to ship a lean initial experience and download heavy features only when needed.

§ 4 Migration from APK to AAB

If you were publishing APKs before August 2021, migration is straightforward. In Android Studio, change your build configuration to use the Android App Bundle format: `build.gradle` sets `bundle { density { enableSplit = true } }`. Then build with `./gradlew bundleRelease` instead of `./gradlew assembleRelease`. The output `.aab` file is uploaded to Google Play Console. Note that AABs cannot be sideloaded directly. For internal testing outside Google Play, still use APKs generated via `assembleRelease` or the APK-creation tool in the Play Console.

§ 5 Note

iOS does not use a bundle format. iOS apps are distributed as .ipa files. The equivalent size-optimization for iOS is on-demand resources (ODR), which allows downloading asset catalogs (e.g., level packs, high-res textures) on demand from the App Store.

§ 6 In code

// build.gradle (app-level)
android {
  // ...
  bundle {
    density {
      enableSplit = true
    }
    abi {
      enableSplit = true
    }
    language {
      enableSplit = true
    }
  }
}

// Build commands
// Release AAB:  ./gradlew bundleRelease  // Output: app/build/outputs/bundle/release/app-release.aab
// Release APK:  ./gradlew assembleRelease  // Output: app/build/outputs/apk/release/app-release.apk

§ 7 Common questions

Q. Can I use an AAB outside of Google Play?
A. No. AABs require Google Play's server-side processing to generate device-specific APKs. For sideloading or other stores (Amazon Appstore, Samsung Galaxy Store), you must use a universal or split APK.
Q. How much smaller is an app with AAB?
A. Google reports an average 15% reduction in download size compared to a universal APK. For apps with many language resources or multiple CPU architectures, the savings can be 30% or more.
Key takeaways
  • AAB is Google's required publishing format for new Android apps since August 2021.
  • Google Play generates device-specific APKs from your AAB, reducing download size by ~15% on average.
  • Play Feature Delivery enables on-demand and conditional module downloads.
  • AABs are not installable directly; they are a publishing format for Google Play.
  • For sideloading or non-Play stores, continue using APKs.
How Atomic Glue helps

Atomic Glue configures Android App Bundle builds for optimal size reduction, sets up Play Feature Delivery for modular apps, and manages the Play Console publishing workflow. See our Mobile App Development services or get in touch.

Get in touch
# App Bundle / AAB

The Android App Bundle (AAB) is Google's required publishing format that generates optimized APKs for each device configuration, reducing app size by an average of 15%.

Category: Mobile Development (also: Infrastructure)

Author: Atomic Glue Editorial Team

## Definition

The Android App Bundle (AAB) is Google's official publishing format for Android apps, required for all new apps on Google Play since August 2021. Instead of building a single monolithic APK that includes resources for every device configuration (screen density, CPU architecture, language), you upload an AAB and Google Play uses it to generate and sign optimized APKs for each user's specific device. This process, called Play Feature Delivery and Play Asset Delivery, can reduce download size by an average of 15% and support on-demand feature downloads. iOS has no direct equivalent; IPA files remain the single-file distribution format for the App Store.

## How App Bundles Work

The AAB format is an archive containing your app's compiled code and resources with metadata about how to split them. When a user installs your app, Google Play generates a tailored APK containing only the resources for that user's device: the correct screen density drawables, the right native libraries (armeabi-v7a, arm64-v8a, x86), and only the languages the user needs. This process is server-side and invisible to the developer. The AAB itself is not installable. It is a publishing artifact, not a distribution artifact.

## Play Feature Delivery

App Bundles enable modular delivery. You can divide your app into feature modules that are delivered on demand, at install time, or conditionally. **Install-time**: Delivered with the base APK. **On-demand**: Downloaded when the user accesses that feature for the first time. **Conditional**: Delivered only for specific devices or countries. This allows apps with many features (camera editing, AR modes, country-specific content) to ship a lean initial experience and download heavy features only when needed.

## Migration from APK to AAB

If you were publishing APKs before August 2021, migration is straightforward. In Android Studio, change your build configuration to use the Android App Bundle format: `build.gradle` sets `bundle { density { enableSplit = true } }`. Then build with `./gradlew bundleRelease` instead of `./gradlew assembleRelease`. The output `.aab` file is uploaded to Google Play Console. Note that AABs cannot be sideloaded directly. For internal testing outside Google Play, still use APKs generated via `assembleRelease` or the APK-creation tool in the Play Console.

## Note

iOS does not use a bundle format. iOS apps are distributed as .ipa files. The equivalent size-optimization for iOS is on-demand resources (ODR), which allows downloading asset catalogs (e.g., level packs, high-res textures) on demand from the App Store.

## In code

// build.gradle (app-level)
android {
  // ...
  bundle {
    density {
      enableSplit = true
    }
    abi {
      enableSplit = true
    }
    language {
      enableSplit = true
    }
  }
}

// Build commands
// Release AAB:  ./gradlew bundleRelease  // Output: app/build/outputs/bundle/release/app-release.aab
// Release APK:  ./gradlew assembleRelease  // Output: app/build/outputs/apk/release/app-release.apk

## Common questions

Q: Can I use an AAB outside of Google Play?

A: No. AABs require Google Play's server-side processing to generate device-specific APKs. For sideloading or other stores (Amazon Appstore, Samsung Galaxy Store), you must use a universal or split APK.

Q: How much smaller is an app with AAB?

A: Google reports an average 15% reduction in download size compared to a universal APK. For apps with many language resources or multiple CPU architectures, the savings can be 30% or more.

## Key takeaways

## Related entries


Last updated June 2025. Permalink: atomicglue.co/glossary/app-bundle-aab

Schedule a call

30 min · Video call

1
Date
2
Time
3
Details