After archiving an app version, on the organizer window there was a button, clicking it calculates and displays the estimated size of the app on the store.
In Xcode
If you install on the device, in Settings > General > Storage & iCloud Usage > Manage Storage > [App Name]
you can see the size of the app as it's installed on that device.
Not sure how this works with bit code, but at least it's something and easy to do.
The best way to get app size for all kinds of devices and models after app thinning is to look at the App Thinning Size Report, generated by Xcode. This report is generated when an Ad Hoc build is exported from an Xcode archive file.
Open Window -> Organizer, select the archive and click on Export button.
Choose method of distribution: Ad Hoc; app thinning: All compatible device variants; leave Rebuild from bitcode checked.
Proceed to generate the ipa file. Find the report alongside the generated ipa file titled "App Thinning Size Report.txt". It looks like this:
App Thinning Size Report for All Variants of MyAppName
Variant: MyAppName-iPad (4th generation)-etc.ipa
Supported devices: iPad (3rd generation) and iPad (4th generation)
App + On Demand Resources size: 50.4 MB compressed, 109.5 MB uncompressed
App size: 28.6 MB compressed, 87.7 MB uncompressed
On Demand Resources size: 21.8 MB compressed, 21.8 MB uncompressedVariant: MyAppName-iPad Pro (9.7-inch)-etc.ipa
Supported devices: iPad Pro (10.5-inch), iPad Pro (12.9-inch) (2nd generation), and iPad Pro (9.7-inch)
App + On Demand Resources size: 46.6 MB compressed, 110 MB uncompressed
App size: 24.8 MB compressed, 98.2 MB uncompressed
On Demand Resources size: 21.8 MB compressed, 21.8 MB uncompressedVariant: MyAppName-iPhone 8-etc.ipa
Supported devices: iPhone 7 and iPhone 8
App + On Demand Resources size: 45.9 MB compressed, 109.3 MB uncompressed
App size: 24.4 MB compressed, 87.9 MB uncompressed
On Demand Resources size: 21.4 MB compressed, 21.4 MB uncompressed...
I just found out a detailed sizes list on Xcode 7/8/9/10
Here is how to access it:
Perfect! There's a comprehensive list of all devices and sizes that will be available on App Store.
UPDATED (thanks to comments of @Marcus Adams) on other answer.
If you just export it for adhoc you should get a file. Unzip that file. The deployment size will be between this unzipped version and the zipped version.
Yes, it is still possible, but have to do a little work!
Just select the project from"Archive", then open package content.
Then in the .xcarchive file, there is an Applications directory.
Now, open the .xcarchive in finder, and select show package contents.
Finally go to Products then Applications then App Name and you can now view the file size.
Screenshot step by step:-
Just in case people have doubt regarding the difference in size of the binary before uploading to iTunes and after uploading to iTunes here is the calculation:-
Apple is encrypting the executable file. By doing so its size doesn’t change much but its contents do which usually can no longer be compressed as much as before. By putting all this together i came up with a way to calculate the maximum size of your App in the App Store (it will most likely be less than this):
open the .app bundle via right-click -> Show Package Contents (on Mac) locate the executable file and remember its (uncompressed) size (Size “A”) delete the executable from the bundle zip the bundle and remember the bundle’s compressed size (Size “B”)
Size “C” are the 100 KB from the additional files added to the bundle by Apple. The final calculation for the maximum size of your App is as follows:
A + B + C = maximum size of your App after approval
The calculation put in words:
(uncompressed executable size) + (app bundle compressed but without executable) + 0,1 MB = maximum size of your App after approval
Referred from this