Play Hero logoPlay Hero

Version Codes: Why Reusing One Gets Your Upload Rejected

Every AAB you upload needs a strictly higher versionCode than any previous upload to that app, across all tracks — internal testing included. Reusing a version code, even for an internal test build that never went to production, blocks the upload with a hard error.

The mistake that causes this most often: reverting to an older branch for a hotfix and forgetting to bump the version code forward past your most recent upload, not just past your last production release.

The fix

Fix: check your highest ever uploaded version code in Play Console, across every track, before building your next release — not just your production history.

The same check runs automatically when you upload your bundle to the AAB analyzer — permissions, SDK fingerprints, and version info in one pass, free.

Keep going

Run this check on your own AAB

Free analysis, exports when you need them.