The format of Android build numbers has been the same for years, but it's changing in Android 8.0. The first non-preview version of Oreo just rolled out with the new format, which is a big departure. Rather than being three letters followed by three other characters, it's split into three blocks of numbers and letters separated by periods. It looks confusing at first, but you actually get more information from it.

Build numbers for Oreo and later will have the following format.

PVBB.YYMMDD.bbb.

The P variable is the first letter of the platform release, so it's "O" for Oreo currently. The V is for the vertical, which in all the builds you're worried about will be "P" for primary platform branch. The BB characters represent an alphanumeric code that points to the exact code branch used in the build. For the first Oreo release on the Pixel, this is "R6."

You can probably guess at the purpose of the center YYMMDD block just from the format. It's the date (year, month, day) when the release was branched or synced with the development branch. This might not necessarily be the build date as it's common to reuse the same code for multiple builds without going back to the dev branch. The "bbb" set of characters is simply a number that differentiates between multiple builds with the same date code. The Pixel is on 012 right now.

So, the Pixel's build number "OPR6.170623.012" means that it's Android Oreo for the primary platform branch from code branch R6. It was synced from the dev branch on June 23, 2017, and this is the 12th build with those variables. Easy, right?

AP build calculator

We've updated our Android build number date calculator to understand the new Oreo naming logic. Plug in one of the new or old builds, and it'll spit out the right date.