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.
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?
| Android version | API level | Codename | Build.VERSION_CODES | Year |
|---|---|---|---|---|
| Android 17 | 37 | — | CINNAMON_BUN | 2026 |
| Android 16 | 36 | — | BAKLAVA | 2025 |
| Android 15 | 35 | — | VANILLA_ICE_CREAM | 2024 |
| Android 14 | 34 | — | UPSIDE_DOWN_CAKE | 2023 |
| Android 13 | 33 | — | TIRAMISU | 2022 |
| Android 12L | 32 | — | S_V2 | 2022 |
| Android 12 | 31 | — | S | 2021 |
| Android 11 | 30 | — | R | 2020 |
| Android 10 | 29 | — | Q | 2019 |
| Android 9 | 28 | Pie | P | 2018 |
| Android 8.1 | 27 | Oreo | O_MR1 | 2017 |
| Android 8.0 | 26 | Oreo | O | 2017 |
| Android 7.1 | 25 | Nougat | N_MR1 | 2016 |
| Android 7.0 | 24 | Nougat | N | 2016 |
| Android 6.0 | 23 | Marshmallow | M | 2015 |
| Android 5.1 | 22 | Lollipop | LOLLIPOP_MR1 | 2015 |
| Android 5.0 | 21 | Lollipop | LOLLIPOP | 2014 |
| Android 4.4W | 20 | KitKat | KITKAT_WATCH | 2014 |
| Android 4.4 | 19 | KitKat | KITKAT | 2013 |
| Android 4.3 | 18 | Jelly Bean | JELLY_BEAN_MR2 | 2013 |
| Android 4.2 | 17 | Jelly Bean | JELLY_BEAN_MR1 | 2012 |
| Android 4.1 | 16 | Jelly Bean | JELLY_BEAN | 2012 |
| Android 4.0.3 to 4.0.4 | 15 | Ice Cream Sandwich | ICE_CREAM_SANDWICH_MR1 | 2011 |
| Android 4.0 to 4.0.2 | 14 | Ice Cream Sandwich | ICE_CREAM_SANDWICH | 2011 |
| Android 3.2 | 13 | Honeycomb | HONEYCOMB_MR2 | 2011 |
| Android 3.1 | 12 | Honeycomb | HONEYCOMB_MR1 | 2011 |
| Android 3.0 | 11 | Honeycomb | HONEYCOMB | 2011 |
| Android 2.3.3 to 2.3.7 | 10 | Gingerbread | GINGERBREAD_MR1 | 2011 |
| Android 2.3 to 2.3.2 | 9 | Gingerbread | GINGERBREAD | 2010 |
| Android 2.2 | 8 | Froyo | FROYO | 2010 |
| Android 2.1 | 7 | Eclair | ECLAIR_MR1 | 2010 |
| Android 2.0.1 | 6 | Eclair | ECLAIR_0_1 | 2009 |
| Android 2.0 | 5 | Eclair | ECLAIR | 2009 |
| Android 1.6 | 4 | Donut | DONUT | 2009 |
| Android 1.5 | 3 | Cupcake | CUPCAKE | 2009 |
| Android 1.1 | 2 | — | BASE_1_1 | 2009 |
| Android 1.0 | 1 | — | BASE | 2008 |
How to look up an Android API level
- 1Type 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.
- 2Read the matchThe result gives the Android version, API level, codename, Build.VERSION_CODES name and the year it was first released.
- 3Check it against Google PlayThe checks show whether that level meets Google Play's current target API rules for new apps, updates and existing apps.
- 4Copy 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?
What is the difference between minSdk and targetSdk?
Why are Android version numbers and API levels different?
What are the codenames of Android 10 and later?
What happens on Google Play if my app targets an old API level?
Sources
- Android Developers, <uses-sdk>: What is API level? (the API level table and VERSION_CODES) (checked 20 Oct 2026)
- Android Open Source Project, Codenames, tags, and build numbers (checked 20 Oct 2026)
- Android Developers, SDK Platform release notes (revision dates) (checked 20 Oct 2026)
- Android Developers, Meet Google Play's target API level requirement (checked 20 Oct 2026)
- Play Console Help, Target API level requirements for Google Play apps (checked 20 Oct 2026)
- Android Developers, Configure the app module (minSdk and targetSdk in Kotlin DSL) (checked 20 Oct 2026)
- Android Developers, Android 17 (QPR1 and QPR2 betas, API 37.1 and 37.2) (checked 20 Oct 2026)
- Android Developers Blog, More frequent Android SDK releases (31 Oct 2024) (checked 20 Oct 2026)
- Android Developers Blog, Announcing the Android 1.0 SDK, release 1 (23 Sep 2008) (checked 20 Oct 2026)
- Android Developers Blog, Android 1.1 SDK, release 1 Now Available (9 Feb 2009) (checked 20 Oct 2026)
- Android Developers Blog, Android 1.5 is here! (27 Apr 2009) (checked 20 Oct 2026)
- Android Developers Blog, Android 1.6 SDK is here (15 Sep 2009) (checked 20 Oct 2026)
- Android Developers Blog, Announcing Android 2.0 support in the SDK! (27 Oct 2009) (checked 20 Oct 2026)
- Android Developers Blog, Android SDK Updates: Android 2.0.1 (3 Dec 2009) (checked 20 Oct 2026)
- Android Developers Blog, Android 2.1 SDK (11 Jan 2010) (checked 20 Oct 2026)
- Android Developers Blog, Android 2.2 and developers goodies (20 May 2010) (checked 20 Oct 2026)
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