Free Tools
Version & Build Number Helper
Validate your CFBundleShortVersionString (marketing version) and CFBundleVersion (build number) against Apple's rules, get the next valid increment, and check a new version is higher than what's live. Runs entirely in your browser.
Marketing version
CFBundleShortVersionString — the public version users see on the App Store, e.g. 1.2.3.
Build number
CFBundleVersion — the build identifier. Each upload to App Store Connect / TestFlight needs a value higher than the last for the same marketing version.
Compare versions
A new App Store version must be strictly higher than the current one, or the submission is rejected. Check yours here.
Version vs. build number
CFBundleShortVersionString is the marketing version shown on the App Store — one to three period-separated integers like 1.0 or 2.4.1. Each new App Store release must increase it. CFBundleVersion is the build number; it can be reset or kept rolling, but every binary you upload for a given marketing version must use a value higher than the previous upload.
Common rejection causes
- Submitting a new version that isn't higher than the current App Store version.
- Uploading a build with a CFBundleVersion that was already used for that version.
- Non-numeric or more than three components in either field.
- Leading zeros (1.02) that App Store Connect normalizes unexpectedly.
Want a full pre-submission review?
AcceptMyApp analyzes your metadata, permissions, and privacy setup against Apple's guidelines and surfaces rejection risks before you hit submit.