Deciding

APK vs AAB: one installs, one publishes

An APK goes on a phone. An AAB goes to Google Play, which turns it into APKs. Here is what each is, why Play insists on bundles, and why you usually want both.

5 min read Updated September 2026

Quick answer: an APK is a finished Android app you can install directly. An AAB (Android App Bundle) is a publishing format that cannot be installed: Google Play takes it and generates a smaller, device-specific APK for each download. Since August 2021 new apps on Play must be uploaded as AAB; APKs remain the format for testing, direct sharing and other stores.

The two formats

APKAAB
Stands forAndroid PackageAndroid App Bundle
Installs on a phoneYesNever
Google Play accepts itOnly for apps first published before 2021Required for new apps
ContainsResources for every device in one fileResources for every device, kept separate
Signed byYouYou, then re-signed by Play
Meant forTesting, sideloading, other storesPublishing on Play

Why Play switched

A universal APK carries icons at five densities, every translation and native code for each CPU. A given phone uses one density, one or two languages and one CPU — the rest is downloaded and ignored. From a bundle, Play builds an APK containing only what that phone needs, typically 20–35% smaller, more for apps with big native libraries.

The size calculator showing the APK estimate beside the smaller Play download from a bundle
The difference between the two columns is what Play's per-device split removes.
APK Size CalculatorEstimate your app's size before you build Open the tool

A WebView app saves at the small end — little native code, few translations — but the saving is free, so take it.

The condition: Play App Signing

Because Play produces the APKs users install, it has to sign them, so it needs a key. That is Play App Signing, mandatory with bundles. In practice:

When an APK is still the answer

Which is why building both is the practical habit: the APK circulates while you test, the AAB goes up when you publish.

Getting an APK out of an AAB

Google's bundletool generates device APKs from a bundle locally — useful for seeing exactly what Play would serve, and a command-line tool with its own learning curve. For most people, producing both formats from the same project is the shorter path.

So which do you need?

You want to…Use
Publish a new app on Google PlayAAB — nothing else is accepted
Hand the app to someoneAPK
Test on your own phoneAPK
List on Amazon, Samsung or F-DroidAPK
Update an app first published as an APK before 2021APK still allowed

Questions people ask

Can I install an AAB on my phone?

No. A bundle is a publishing format, not an installable package — Google Play turns it into device-specific APKs. To install locally you need an APK, or bundletool to generate one.

Is AAB required on Google Play?

For new apps, yes, since August 2021. Apps first published as APKs before then may still upload APK updates; anything new must be a bundle.

How much smaller is a bundle download?

Typically 20–35% smaller than a universal APK, because Play drops densities, languages and CPU architectures a device cannot use. Apps with large native libraries save the most; a WebView wrapper saves the least.

Does Play App Signing mean Google holds my key?

Play holds the app signing key used on what users install; you keep a separate upload key. The benefit is that a lost upload key can be reset instead of ending your ability to update.

Should I build both formats?

Yes, in practice. Use the APK for testing and direct sharing and upload the AAB to Play. They come from the same project, so the second costs nothing.

Read next

Ready to turn your site into an app?

Upload an HTML file or a ZIP, set your icon and name, and download a signed Android app. No Android Studio, no command line.

Open the builder