How to use it
- Enter the version name. Type the version users will see, like 1.4.2.
- Set the build number. Use 1 for the first build of the day; raise it for rebuilds.
- Compare with the last release. Optionally enter the previous versionCode to confirm the new one is higher.
- Copy. Copy the versionCode for the scheme you use, or the build.gradle lines.
versionName vs versionCode
| versionName | versionCode | |
|---|---|---|
| Example | 1.4.2 | 10402 |
| Shown to users | Yes | No |
| Type | Any text | Whole number, max 2,100,000,000 |
| Decides if an update installs | No | Yes — it must be higher |
Which scheme to choose
- Semantic (1.4.2 → 10402): easy to read back. Keep minor and patch under 100.
- Semantic + build (1.4.2 build 3 → 1040203): lets you rebuild the same version.
- Date-based (YYMMDD + build): always increases, no thinking — but the code no longer tells you the version.
Whatever you choose, never go backwards: once a code is used on Google Play, every later upload must be higher. Check what an existing APK uses with APK info online.
Private by design: everything runs on your device. Nothing you type or upload here is sent to a server.
Try it now — it's free
No watermark, no card, no Android Studio. Pick what you're starting from:
Questions people ask
What is versionCode in Android?
A whole number that identifies each build. Android only installs an update if its versionCode is higher than the installed one.
What is the maximum versionCode?
Google Play accepts version codes up to 2,100,000,000.
Does versionName have to match versionCode?
No. versionName is free text shown to users; versionCode is the number Android compares. Schemes just make them easy to keep in step.