10

The Play Store lists the size of all apps available in their store. When a user downloads and installs apps, the actual sizes reported by Android are often larger than the sizes listed by the Play Store.

Of importance, this discrepancy occurs before applications are even run for the first time.

What is the reason for the discrepancy?

7

Apk and zip files are essentially the same, compressed. Before the system can use the file it needs to decompressed. So the file is one size when downloaded and another size when installed.

Also note sometimes when apk's are installed, after being opened some data may need to be downloaded. So file size file will increase again.

Differences in size are noticeable when comparing between Android markets, one shows one size and play store shows completely different size.

  • Thank you so much. Silly Google... it's obviously important to know how big the app will be once installed... too bad Google omits this information from their Google Play Store. – RockPaperLizard May 1 '15 at 20:57
  • 2
    You mentioned "sometimes when apk's are installed, some data may need to be downloaded". Is this correct? Can apps download data just by being installed (and not opened)? – RockPaperLizard May 1 '15 at 20:58
  • I meant after opening, my answer has been edited to reflect that. But no an app shouldn't be able to download data before opening it the first time. Now first time can also mean after a reboot, so some data can be downloaded then if internet connection is present or as soon as one is available. – HasH_BrowN May 2 '15 at 7:46
  • 1
    Thanks! I assume in your comment above that you meant "But no app SHOULD be able to download data before opening it the first time" instead of "But no app SHOULDN'T be able..."? – RockPaperLizard May 2 '15 at 7:50
  • @RockPaperLizard Lol. I was in a rush, but yes that's what I meant "...no app SHOULD be..." – HasH_BrowN May 2 '15 at 18:01
7

The Google play store, and other app stores, only list the main application (APK) size, not the total app size, which includes the OBB (Opaque Binary Blob) expansion files. OBBs are the extra files that an app downloads to run. There should be no difference in file size before the extra files are downloaded.

From the Play Store Developers section:

The maximum supported size for a single APK is 50MB. If you need to store additional assets (images, for example), you can upload expansion files.

If your app needs more than 50MB of memory, you can use expansion files to store additional APK assets. You can store two expansion files per application. Each expansion file can be up to 2GB in size.

Expansion files are hosted at no additional cost. When possible, Google Play will download expansion files when apps are installed or updated. In some cases, your app will need to download its expansion files.

When you use expansion files, one file is the main file and the other is an optional patch file. Optional patch files are usually used for small updates to the main file.

OBB files use the same compression as APK files do, which is a standard zip compression. APK and OBB files are kept compressed in the file system, and files inside are decompressed into memory as needed, on the fly. So no, the compressed size, which is the space occupied on the device by the APK, is not different from what the Play Store should list.

Finally, the Play store allows multiple APKs per app listing. This is because some bigger apps (mainly games) need to target different resources (graphics engine, display size/resolution, etc.) and they cannot fit that inside of a single APK (due to the size limitation). If you look at the same Play Store page on different device types, you will likely see a different app size listed.

  • This brings valuable new information to the answers here. Can you expand on your answer at all? – RockPaperLizard May 9 '15 at 20:45
  • 2
    @rockpaperlizard spock what else is there to expand on? – cde May 9 '15 at 20:51
  • 1
    +1 for being the first person to get it. :-) Some more detail about what is actually downloading the OBB files (the app or the Play Store?), why you refer to them as "expansion files", and whether general compression (as mentioned in the other answers) is an additional factor. – RockPaperLizard May 9 '15 at 20:57
  • @RockPaperLizard done. – cde May 9 '15 at 21:58
  • Thanks! I've made a few edits just to clarify, please correct my edits if I made any mistakes. Based on the great info you provided, I created this question: android.stackexchange.com/questions/108931/… – RockPaperLizard May 9 '15 at 23:13
3

The Google Play Store no longer lists sizes when you're logged in with an account that has multiple devices attached.

The maximum size for an APK has gone up to 100MB since 28 September 2015 (ref: Android Developers Official Blog)

Because of the decompression and different versions and devices, the install size of an app depends on the device - "Varies with device". Only for some apps, you can see how big they are by visiting the play store without logging in.

  • I'd love to know if there are any indicators to say 'approximately' how big an app is (<5, 10, 10-50, <50, 50-100 etc). Thanks @Andrew for the edit (: – Sandra May 27 '16 at 11:11
1

Because Play Store shows download size, and download file (probably apk) is compressed. When you install app, apk is decompressed and larger.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.