XAPK, APKS, APKM and OBB: the bundle formats explained
Advertisement
Why bundles exist
Since 2021 developers upload an Android App Bundle to Google Play instead of a finished APK. Play then generates a set of split APKs for each device: a base package plus separate parts for the screen density, CPU architecture and language the device actually needs. That keeps downloads small, but it also means there is no single APK file for many apps any more.
Third-party mirrors solve this by packing the base APK and the splits, and for big games the extra data folder, into one archive. The archive gets a different extension so installers can recognise it.
The formats
| Extension | Contents | Opens with |
|---|---|---|
.apk | One installable package | Android itself |
.xapk | Zip with base APK, split APKs, optional OBB data and a manifest | APKPure app, SAI, XAPK-aware file managers |
.apks | Zip of split APKs exported by bundletool or SAI | SAI, Split APKs Installer, adb install-multiple |
.apkm | APKMirror's bundle container | APKMirror Installer, SAI |
.obb | Expansion data (game assets), not installable on its own | Copied to Android/obb/<package name>/ |
All of them contain the same code the developer shipped; the container only changes how the parts are delivered.
OBB data
Games that exceed the Play size limit ship their assets in an expansion file named like main.1234.com.example.game.obb. The number is the version code the file belongs to. Android does not install OBB files; the game reads them from Android/obb/<package name>/ on internal storage. An XAPK installer places the file there automatically. If you extract a bundle by hand, create the folder yourself and keep the original file name, otherwise the game starts, finds no data and closes.
Since Android 11, file managers cannot write to Android/obb without extra permission. Use the installer app, or connect the device to a computer and copy the folder over USB.
Choosing between APK and XAPK on a version page
When both are listed for the same version, the APK is the universal build and installs with no extra tools. The XAPK is the split build; it is what Play would install and is sometimes the only option for games with expansion data. Older devices (32-bit CPUs) should pick the APK when it exists, because a bundle generated for a 64-bit device may not include the right native code.
The full installation steps for each format are in how to install APK and XAPK files.
This guide describes general Android behaviour; menu names vary by manufacturer and Android version. Downloads on this site come from established third-party mirrors and are never modified by us.