Guide · Android
APK vs AAB: What’s the Difference and Which Should You Choose?
Both are Android app files, but they do different jobs. Here is how to tell them apart, which one you need for testing, sharing or publishing, and how an AAB can become an APK.
APK vs AAB: The Simple Answer
An APK is a finished Android app file that you can install on a phone. An AAB (Android App Bundle) is a publishing file that you upload to Google Play, and Google Play uses it to build the APKs that people actually download. So use an APK to install and test, and an AAB to publish a new app on Google Play.
What Is an APK File?
APK stands for Android Package. It is the file Android installs: your app’s code, images and settings packed into one file with the .apk extension. If you have ever installed an Android app, an APK was involved, even if Google Play handled it for you.
The useful part is that an APK works on its own. You can copy it to a phone, email it to a tester or hand it to a client, and they can install it without any store. Android will ask them to allow installs from the app they opened the file with (for example a browser or file manager), because the file did not come from Google Play.
That makes the APK the natural file for three jobs: installing the app straight onto an Android device, sharing a test build with a few people, and checking how the app behaves on real hardware before you publish.
Every APK must be signed with a key. If you later send an update outside Google Play, it has to use the same package name and the same signing key as the version already on the phone, or Android will refuse to install it over the old one.
What Is an AAB File?
AAB stands for Android App Bundle, a file with the .aab extension. It is a publishing format, not an installer. It holds everything your app needs (code, images, languages, different screen sizes and processor types) and leaves the packaging to Google Play.
When someone installs your app from Google Play, Google builds the APKs that fit their device from your bundle (a base APK plus smaller “split” APKs for their screen density, processor and language) and signs them. Each person downloads only what their phone needs, which is why Play-delivered downloads are usually smaller than one APK that carries everything.
Since August 2021, new apps on Google Play have to be published as an AAB. And because an AAB is not an installable app on its own, you cannot tap it on a phone and install it like an APK.
APK vs AAB: Side-by-Side Comparison
The same app, packaged for two different purposes.
| Topic | APK | AAB |
|---|---|---|
| File purpose | A ready-to-install Android app. | A publishing bundle that Google Play turns into installable APKs. |
| Direct installation | Yes. Copy it to a phone and install it. | No. A phone cannot install it directly. |
| Google Play publishing | Not accepted for new apps. Some older apps published with APKs before the AAB requirement. | Required for new apps. |
| Testing | Install on your phone or your testers’ phones right away. | Test through Google Play testing tracks, or convert it with bundletool first. |
| Distribution | Anywhere you can send a file: a link, email, messaging, your own website. Other app stores have their own rules. | Through Google Play only. |
| Signing | You sign the APK yourself, and updates must use the same key. | You sign the bundle with an upload key. With Play App Signing, Google signs the APKs it delivers. |
| Download optimization | One file for all devices, so it can be larger. | Google Play delivers only the parts each device needs, usually a smaller download. |
| Typical use | Testing, demos, client reviews, sharing outside Google Play. | Publishing and updating an app on Google Play. |
Which Format Should You Choose?
It depends on what you want to do with the app.
Testing an Android app on your phone
Use an APK. Copy it to your phone, allow the install, and open the app. No Google Play account is needed.
Sharing an MVP with investors
An APK works if everyone you are sharing with has an Android phone and is comfortable allowing an install from outside Google Play. If your audience includes iPhone users, an APK will not help them. A shareable web version of your MVP (a web app or PWA, which can also be added to a home screen) opens on both Android and iPhone from a single link, so it is often the easier choice for a mixed group.
Sending an application to a client
Send an APK for a review on their Android phone. It is quick, and they see the real app. For a client who only wants to see the design or flow, a link that opens in a browser is often even simpler.
Publishing a new application on Google Play
Use an AAB. Google Play requires it for new apps. You upload it in Google Play Console, fill in the store listing, and release it from there.
Distributing an Android application without Google Play
Use an APK, and put it somewhere people can download it, such as your own website. Expect an extra step for users, who must allow installs from outside the store. Other app stores have their own rules, so check which file type the store you want accepts.
Developing an app that will need updates later
Plan for both. Publish through Google Play with an AAB so updates reach people automatically, and keep the same signing identity for every release. If you also send APKs to testers or clients, sign them with the same key as your app so updates install cleanly. If you need the source code to keep developing, the Source Code ZIP guide explains that option.
Want to create your own Android app?
Build your app visually with Grek Factory, test it in Live Preview, and explore available export options. The Android guide walks through the workflow from your project to a phone or Google Play.
Can You Convert AAB to APK?
Yes, but it is not a rename. Changing .aab to .apk gives you a file Android cannot install. An AAB is a bundle of modules that has to be processed into APKs.
Google’s command-line tool for this is bundletool. Its build-apks command turns a bundle into a set of APKs (an .apks archive) for different device types. With --mode=universal it creates one APK that works on all supported devices, which is the easiest to share with testers, although it is larger. The install-apks command installs the set on a connected device.
Bundletool signs with a debug key unless you give it your own keystore, so pass your own signing details if you plan to share the result. Also note that an APK you make this way is not the same as the one Google Play would deliver, because Play signs what it serves. If you have the project, building a real APK from it is usually simpler than converting a bundle.
Do You Need a Google Play Developer Account?
Not to build an APK or an AAB, and not to install an APK on a phone. You need a Google Play developer account only to publish through Google Play. Google charges a one-time registration fee, may ask you to verify your identity, and for some new accounts may require a period of testing before you can release to everyone.
So “I have an AAB” and “my app is on Google Play” are two different milestones. Creating the app in Google Play Console, completing the store listing and releasing it are steps you take in your own account.
Can You Create APK and AAB Without Coding?
With Grek Factory, yes: you describe your business, shape the app in the visual editor, and try it in Live Preview, all without writing code. The Android APK and the AAB for Google Play are available in Early Access as exports of your project, along with a Source Code ZIP. The iPhone IPA is not available yet.
It is not instant, and it is not a single button. Before an Android export you complete the Android part of Setup & Launch, which prepares your app’s identity and a signing key kept in your own Google Cloud project. The file is then built in the cloud from your project. You can see the result before paying, and the download unlocks after purchase.
Grek Factory does not publish to Google Play for you. You bring your own developer account and upload the AAB yourself. For the details, read the Android guide; for the iPhone side, see the iPhone app guide; and for the general workflow, the guide to building an app.
Ready to try it?
Start with a description of your business and see a working prototype you can preview on your own screen. Exports come later, once the app looks right.
Frequently asked questions
Is APK or AAB better?
Neither is better in general; they have different jobs. An APK is better for installing and sharing, and an AAB is better for publishing on Google Play, where it is required for new apps.
Can I install an AAB on Android?
Not directly. An AAB is not an installable app. Upload it to Google Play, or use bundletool to generate installable APKs from it.
Can I upload an APK to Google Play?
Not for a new app. New apps must be published as an AAB. Some apps that were published with APKs before that requirement can continue, but you should check the current rules in Google Play Console.
Why does Google Play require AAB?
Because it lets Google Play build and sign APKs tailored to each device, so people download only what they need. It also means you do not have to build and manage many APK variants yourself.
Is an AAB smaller than an APK?
The AAB file itself is not the point. What matters is the download: with an AAB, Google Play sends each device only the parts it needs, which is usually smaller than a single universal APK. The exact saving depends on the app.
Can I share an APK without Google Play?
Yes. You can send it by link, email or message, or host it on your own website. The person installing it has to allow installs from that source, and the APK must be signed. Only share APKs with people who know where the file came from.
Do I need an AAB to test my app?
No. An APK is the easiest way to test on a phone. You only need an AAB when you upload to Google Play, including its testing tracks.
What’s the difference between APK, AAB and IPA?
APK and AAB are Android files: the APK installs on a phone, and the AAB is for uploading to Google Play. An IPA is the iPhone app file, and it must be signed through Apple’s developer program before it can be installed or distributed.