Generate Android App Bundles
For Google Play Store
Required for Google Play Since August 2021
All new apps submitted to Google Play must use the Android App Bundle (AAB) format. AAB delivers up to 15% smaller downloads to your users.
What is an
Android App Bundle?
An Android App Bundle (AAB) is Google's official publishing format for Android apps on the Play Store. Introduced in 2018, it represents a fundamental shift from the traditional APK format in how apps are packaged and delivered to users.
Unlike APKs which contain all resources for every possible device configuration, an AAB lets Google Play generate optimized APKs tailored specifically to each user's device. This means users download only what they need—the right screen density images, the correct CPU architecture libraries, and their preferred language resources.
According to Google's official documentation, apps published with AAB see an average 15% reduction in download size compared to universal APKs—and for larger apps with extensive localization or assets, the savings can be even greater.
Inside an Android App Bundle
base/ (Base Module)
Core application code and resources that are always installed. Contains the main DEX files, manifest, and essential assets.
feature/ (Dynamic Features)
Optional modules that can be downloaded on demand. Allows users to install features only when needed.
lib/ (Native Libraries)
Architecture-specific native code (ARM, ARM64, x86). Only the relevant ABI is delivered to each device.
res/ (Resources)
Images, layouts, strings organized by configuration. Users receive only matching density and locale resources.
BundleConfig.pb
Bundle configuration metadata that tells Google Play how to optimize and split the app for different devices.
META-INF/
Digital signature files that verify the bundle's authenticity. Signed with your upload key for Play Console.
AAB vs. APK: Key Differences
| Feature | AAB (App Bundle) | APK (Package) |
|---|---|---|
| Primary Purpose | Play Store publishing | Direct installation |
| Google Play (New Apps) | Required | Not accepted |
| Download Size | ~15% smaller | Larger (all resources) |
| Dynamic Delivery | — | |
| Direct Device Install | — | |
| App Signing | Play App Signing | Developer managed |
Why Use
Android App Bundles?
AAB offers significant advantages for both developers and users
15% Smaller Downloads
Users download only the resources their device needs. Google reports average size savings of 15%, with some apps seeing up to 35% reduction.
Dynamic Delivery
Modularize your app so features can be downloaded on demand. Users install what they need, when they need it.
Enhanced Security
Play App Signing manages your app signing key securely on Google's infrastructure. Easily reset your upload key if compromised.
Optimized for Every Device
Google Play automatically generates optimized APKs for each device configuration—CPU architecture, screen density, and language.
Simplified Publishing
Upload a single AAB file instead of managing multiple APKs. Google Play handles all the complexity of device targeting.
Faster Installs
Smaller downloads mean faster installation times. Users with limited bandwidth or storage appreciate the reduced data.
AAB Size Savings by Optimization Type
Native Libraries
Architecture specific (ARM, x86)
Image Resources
Density specific (mdpi, hdpi...)
Language Resources
Locale specific strings & assets
Understanding
Play App Signing
How Google manages app signing for AAB files
How It Works
You Sign with Upload Key
Sign your AAB with your private upload key before uploading to Play Console. Natively generates and securely provides this key.
Google Verifies & Stores
Google Play verifies your upload signature and stores your bundle securely. Your app signing key is managed by Google.
Google Signs for Distribution
When users download your app, Google signs the optimized APKs with your app signing key for secure delivery.
Upload Key
Your private key used to sign AABs before uploading to Google Play. You control this key.
- Generated locally or by Natively
- Can be reset if compromised
- Used only for Play Console uploads
App Signing Key
The key Google uses to sign APKs delivered to users. Managed securely by Google.
- Stored in Google's secure infrastructure
- Never exposed to developers
- Used for final APK distribution
Important: Save Your Keystore!
When Natively generates your keystore, you must download and save both the keystore file (.p12) and credentials file. These are required for publishing updates to your app. If you lose these files, you cannot update your app on Google Play—you would need to publish it as a completely new app with a different package name.
Learn more: Play App Signing Documentation|Google Play Console Help
Building AABs
with Natively
Generate signed AAB files ready for Google Play in minutes
Build Your App in Natively
Create your Android app using Natively's AI-powered platform. Describe your app idea or write code directly. We generate a complete React Native project with all configurations.
Enter Bundle Identifier
Provide your unique bundle identifier (e.g., com.yourcompany.appname). This permanently identifies your app on Google Play and cannot be changed later.
Download Your Signing Key
We generate a secure keystore for your app. Download both the keystore file and credentials—you'll need these for future updates. Store them safely!
Download & Publish
Get your signed, production-ready AAB file in 5-10 minutes. Upload directly to Google Play Console and publish to the world's largest app store.
What Natively Handles Automatically
Keystore Generation
Secure keystore creation with strong passwords and proper certificate configuration
Bundle Signing
Signs your AAB with your upload key, ready for Play Console submission
Gradle Configuration
Sets up build files, SDK versions, dependencies, and bundle settings automatically
Code Optimization
Applies R8 code shrinking and resource optimization for smaller bundles
Modern Android Support
Targets Android 14 (API 34) with backward compatibility to Android 7.0+
Play Console Ready
AAB output is fully compliant with Google Play requirements and policies
Credential Management
Provides downloadable credentials file so you never lose access to your signing keys
Traditional Method
Download Android Studio
3.2GB+ download, 10GB+ disk space
Configure SDK & Build Tools
Install correct SDK versions, Gradle, dependencies
Generate Keystore Manually
Use keytool command line with correct parameters
Configure Signing
Set up build.gradle with keystore paths and passwords
Build & Troubleshoot
Run builds, fix errors, verify output
Natively Builder
Zero Setup Required
Build AABs directly in your browser, no downloads
Automatic Keystore Generation
Secure keystore created with one click, credentials provided
Pre-configured Signing
Build system automatically configured for release signing
Cloud Compilation
Fast builds on optimized servers, no local resources needed
Instant Download
Get signed, optimized AAB ready for Google Play
Publishing to
Google Play Store
Steps to Publish Your AAB
Create a Developer Account
Register at Google Play Console with a one-time $25 registration fee
Create Your App
Add app name, default language, and select app or game category
Set Up Store Listing
Add description, screenshots, app icon, and graphics
Upload Your AAB
Go to Release > Production > Create release and upload your AAB file
Complete Content Rating
Answer questionnaire to get age ratings (ESRB, PEGI, etc.)
Submit for Review
Google reviews your app (typically takes a few days for new apps)
Store Listing Requirements
App Icon
512 x 512 px, PNG, 32-bit with alpha
Feature Graphic
1024 x 500 px, promotional banner
Screenshots
2-8 screenshots, phone and/or tablet sizes
Short Description
Up to 80 characters
Full Description
Up to 4,000 characters
Privacy Policy
URL required if app handles personal/sensitive data
Data Safety Declarations
Describe what data your app collects and how it's used
TipPrepare all store listing assets before uploading your AAB to streamline the submission process.
Learn more: Google Play Launch Checklist|Android Developer Launch Guide
When to Use
AAB vs APK
Use AAB When...
Use APK When...
Natively Supports Both Formats
AAB for Play Store
Generate signed AAB files ready for Google Play Console with automatic keystore
APK for Testing
Build APK files for direct device installation, beta testing, and sideloading
Switch between formats easily—build your app once, export in the format you need. Learn more about our APK builder →
Frequently Asked
Questions
What is an AAB file?
An AAB (Android App Bundle) is Google's official publishing format for Android apps on the Play Store. Unlike APK files, AABs contain all compiled code and resources but defer APK generation to Google Play. When users download your app, Google Play creates and serves optimized APKs specifically for their device configuration, resulting in smaller downloads and better performance.
Is AAB required for Google Play Store?
Yes, since August 2021, Google Play requires all new apps to be published using the Android App Bundle (AAB) format. Existing apps can continue to use APKs for updates, but Google strongly encourages migration to AAB for all apps to take advantage of smaller download sizes (up to 15% reduction) and dynamic delivery features.
What is the difference between AAB and APK?
APK is an installable package containing all app resources for every device. AAB is a publishing format where Google Play generates optimized APKs for each user's device. AAB results in 15% smaller downloads on average, supports dynamic feature delivery, and uses Google's Play App Signing for enhanced security. APKs are still needed for direct device installation and testing.
How do I sign an AAB file?
AAB files must be signed with an upload key before submission to Google Play. The upload key is your private signing key stored in a keystore file. Google Play then uses Play App Signing to manage the final app signing key. Natively automatically generates a keystore, provides secure download of credentials, and signs your AAB during the build process.
Can I install an AAB file on my device?
No, AAB files cannot be directly installed on Android devices. They are a publishing format specifically for app stores. Google Play converts the AAB into device-specific APKs for installation. For testing on physical devices, you need an APK. Natively can generate both AAB files for Play Store publishing and APK files for direct testing.
What is Play App Signing?
Play App Signing is Google's service for managing your app's signing key. When you upload an AAB, you sign it with an upload key, but Google uses a separate app signing key to sign the final APKs delivered to users. This provides enhanced security since your app signing key is stored securely by Google, and you can reset your upload key if compromised.
How much smaller are AAB downloads vs APK?
Android App Bundles typically result in downloads that are 15% smaller on average compared to universal APKs. The savings come from delivering only the resources needed for each device: correct screen density images, appropriate native libraries for the CPU architecture, and the right language resources. For apps with many assets or language localizations, savings can be even greater.
What is dynamic feature delivery in AAB?
Dynamic feature delivery allows you to modularize your app so users can download features on demand rather than all at once. For example, a camera app could let users download AR filters only when they want to use them. This reduces initial install size and lets you deliver features exactly when needed. It is supported only through the AAB format.
How long does it take to build an AAB file?
With traditional methods using Android Studio, building an AAB takes 2-10 minutes depending on project complexity, plus initial setup time of 2-3 hours. With Natively's online AAB builder, you can generate a complete signed AAB in 5-10 minutes with zero setup time. Our cloud infrastructure handles compilation, signing, and optimization automatically.
Do I need to keep my keystore file?
Yes, absolutely! Your keystore file and its password are essential for publishing updates to your app. If you lose your keystore, you will not be able to update your app on Google Play and will need to publish it as a completely new app with a new package name. Natively generates your keystore and provides secure download links - save these files in a secure location.
Publish to
Google Play Today
Build your app in Natively, generate signed AAB files with one click, and reach 2.5+ billion Android users worldwide.
