Android API levels and versions

Each Android release has an API level, the number apps target and set as a minimum in their build files, and Google Play requires new apps and updates to target a recent one. Type a version or API level to see its match, and read the current Play requirement with its source.

A bare number is read as an API level; write “Android 14” to look up a version.

API level

35

Android 15 · first released 2024

  • Fail · Google Play, new apps and updates (phones, tablets): target API 36 or higherAPI 35 is below it; required since 31 August 2026
  • Pass · Google Play, existing apps stay available to new users on newer devices: API 35 or higherAPI 35 meets it
  • Pass · Wear OS and Android Automotive OS apps: API 35 or higherAPI 35 meets it
  • Pass · Android TV and Android XR apps: API 34 or higherAPI 35 meets it
Android version
Android 15
API level
35
Codename
none: AOSP lists it as Android15
Build.VERSION_CODES
VANILLA_ICE_CREAM
First released
2024Jun 2024: first SDK Platform revision in Google's SDK Platform release notes
Target it in build.gradle.kts
targetSdk = 35inside android { defaultConfig { … } }
Require it as the minimum
minSdk = 35devices below API 35 can't install the app
  • Google Play's target API rules shown here were checked on 20 Oct 2026: since 31 August 2026, new apps and updates must target API 36 (Android 16) or higher, and you can request an extension to 1 November 2026. They apply to the app's targetSdk, not its minSdk.

What is an Android API level?

An API level is the whole number that identifies each release of the Android platform's APIs, from 1 for Android 1.0 to 37 for Android 17. Google's documentation stresses that it is always a single integer that you can't work out from the version number: Android 12 is API 31 and Android 12L is API 32, while Android 4.4W, for wearables only, took API 20 between 4.4 and 5.0.

Apps use it twice in their build file. minSdk is the lowest level the app runs on, and Android won't install the app on a device below it. targetSdk is the level the app has been tested against; on a device running a newer Android than the target, the system can switch on compatibility behaviours so the app keeps working as before.

Google Play sets a floor for targetSdk. Checked on 20 Oct 2026: since 31 August 2026, new apps and app updates must target Android 16 (API 36) or higher; Wear OS and Android Automotive OS apps need Android 15 (API 35), and Android TV and Android XR apps Android 14 (API 34). Existing apps must target API 35 or higher to stay available to new users on devices running a newer Android, and you can ask for an extension to 1 November 2026. Permanently private apps for one organisation are exempt.

From 2025 Google moved to a major SDK release in the second quarter and a minor one in the fourth, as its Android Developers Blog announced in October 2024. A minor release adds APIs without behaviour changes and doesn't increase the API level; it gets a minor version instead, such as 36.1 for Android 16 QPR2.

Codenames come from Google's AOSP build-numbers page, which lists dessert names from Cupcake (1.5) to Pie (9) and, from Android 10 on, only the version. The Build.VERSION_CODES names are the constants in the SDK. Each year is when the release first appears on Google's pages: the first SDK Platform revision, the first AOSP release build for Android 10 and 17, or the Android Developers Blog SDK announcement for Android 1.0 to 2.2.

minSdk    = lowest API level that can install the app
targetSdk = API level the app is tested against
Google Play, from 31 August 2026: targetSdk ≥ 36 for new apps and updates
                         (35 Wear OS and Automotive, 34 TV and XR)

Which API level is each Android version?

Every release on Google's API level table, Android 17 (API 37) back to Android 1.0 (API 1), checked 20 Oct 2026. Codenames from source.android.com; years as explained above.
Android versionAPI levelCodenameBuild.VERSION_CODESYear
Android 1737—CINNAMON_BUN2026
Android 1636—BAKLAVA2025
Android 1535—VANILLA_ICE_CREAM2024
Android 1434—UPSIDE_DOWN_CAKE2023
Android 1333—TIRAMISU2022
Android 12L32—S_V22022
Android 1231—S2021
Android 1130—R2020
Android 1029—Q2019
Android 928PieP2018
Android 8.127OreoO_MR12017
Android 8.026OreoO2017
Android 7.125NougatN_MR12016
Android 7.024NougatN2016
Android 6.023MarshmallowM2015
Android 5.122LollipopLOLLIPOP_MR12015
Android 5.021LollipopLOLLIPOP2014
Android 4.4W20KitKatKITKAT_WATCH2014
Android 4.419KitKatKITKAT2013
Android 4.318Jelly BeanJELLY_BEAN_MR22013
Android 4.217Jelly BeanJELLY_BEAN_MR12012
Android 4.116Jelly BeanJELLY_BEAN2012
Android 4.0.3 to 4.0.415Ice Cream SandwichICE_CREAM_SANDWICH_MR12011
Android 4.0 to 4.0.214Ice Cream SandwichICE_CREAM_SANDWICH2011
Android 3.213HoneycombHONEYCOMB_MR22011
Android 3.112HoneycombHONEYCOMB_MR12011
Android 3.011HoneycombHONEYCOMB2011
Android 2.3.3 to 2.3.710GingerbreadGINGERBREAD_MR12011
Android 2.3 to 2.3.29GingerbreadGINGERBREAD2010
Android 2.28FroyoFROYO2010
Android 2.17EclairECLAIR_MR12010
Android 2.0.16EclairECLAIR_0_12009
Android 2.05EclairECLAIR2009
Android 1.64DonutDONUT2009
Android 1.53CupcakeCUPCAKE2009
Android 1.12—BASE_1_12009
Android 1.01—BASE2008

How to look up an Android API level

  1. 1
    Type a level, version or nameEnter an API level such as 35, a version such as Android 15 or 4.4.2, a codename such as KitKat, or a constant such as VANILLA_ICE_CREAM.
  2. 2
    Read the matchThe result gives the Android version, API level, codename, Build.VERSION_CODES name and the year it was first released.
  3. 3
    Check it against Google PlayThe checks show whether that level meets Google Play's current target API rules for new apps, updates and existing apps.
  4. 4
    Copy the Gradle lineCopy targetSdk or minSdk into the defaultConfig block of your app's build.gradle.kts.

Frequently asked questions

What target API level does Google Play require in 2026?
Since 31 August 2026, new apps and app updates must target Android 16 (API level 36) or higher. Wear OS and Android Automotive OS apps need API 35, and Android TV and Android XR apps API 34. Google lets you request an extension to 1 November 2026.
What is the difference between minSdk and targetSdk?
minSdk is the oldest API level your app supports: Android won't install it on a device below that level. targetSdk is the level you have tested against, so the system doesn't apply older compatibility behaviours. Google Play's requirement is about targetSdk.
Why are Android version numbers and API levels different?
They count different things. The version is the product release, and the API level counts revisions of the developer API, so some versions share a major number and differ in API level: Android 12 is API 31 and 12L is API 32. Google's documentation says you can't derive one from the other.
What are the codenames of Android 10 and later?
Google's AOSP build-numbers page lists none: from Android 10 on, its codename column just repeats the version, such as Android14. In the SDK, Build.VERSION_CODES uses Q, R, S and S_V2 for Android 10 to 12L, then names such as TIRAMISU, UPSIDE_DOWN_CAKE, VANILLA_ICE_CREAM, BAKLAVA and CINNAMON_BUN for Android 13 to 17.
What happens on Google Play if my app targets an old API level?
You can't publish a new app or an update for phones and tablets until it targets API 36. An existing app that targets API 34 or lower stops being available to new users on devices running a newer Android than its target; Google offers it to them only on devices at or below that level.

Sources

Related tools

See all 73 free tools

Need a custom dev tool for your team?

We build internal tools, dashboards, APIs, and SaaS platforms. If you can describe it, we can ship it.

Built by CountryDevs · No signup · No ads · We count visits, never what you enter