2/24/25, 2:44 PM API Levels | Android versions, SDK/API levels, version codes, codenames, and cumulative usage
Version SDK / API level Version code Codename Cumulative Year
usage 1 4
Android 16 Level 36 BAKLAVA Baklava 2 0% TBD
BETA
Android 15 Level 35 VANILLA_ICE_CREAM Vanilla Ice Cream 2 1.34% 2024
Android 14 Level 34 UPSIDE_DOWN_CAKE Upside Down Cake 38.32% 2023
2
targetSdk must be 34+ for new apps and app updates as of August 31, 2024.
Android 13 Level 33 TIRAMISU Tiramisu 2 57.1% 2022
Android 12 Level 32 Android 12L S_V2 Snow Cone 2 70.3%
Level 31 Android 12 S 2021
Android 11 Level 30 R Red Velvet Cake 2 82.2% 2020
Android 10 Level 29 Q Quince Tart 2 88.5% 2019
Android 9 Level 28 P Pie 92.2% 2018
Android 8 Level 27 Android 8.1 O_MR1 Oreo 93.4% 2017
Level 26 Android 8.0 O 95.7%
Android 7 Level 25 Android 7.1 N_MR1 Nougat 96.0% 2016
Level 24 Android 7.0 N 97.0%
Android 6 Level 23 M Marshmallow 98.4% 2015
Android 5 Level 22 Android 5.1 LOLLIPOP_MR1 Lollipop 98.8%
https://apilevels.com 1/5
2/24/25, 2:44 PM API Levels | Android versions, SDK/API levels, version codes, codenames, and cumulative usage
Level 21 Android 5.0 LOLLIPOP, L 99.7% 2014
Jetpack/AndroidX libraries require a minSdk of 21 or higher since April 2024.
Jetpack Compose requires a minSdk of 21 or higher.
Google Play services v23.30.99+ (August 2023) drops support for API levels below 21.
Android 4 Level 20 Android 4.4W 3 KITKAT_WATCH KitKat 99.9%
Level 19 Android 4.4 KITKAT 2013
Jetpack/AndroidX libraries require a minSdk of 19 or higher since October 2023.
Google Play services v21.33.56+ (July 2021) drops support for API levels below 19.
Level 18 Android 4.3 JELLY_BEAN_MR2 Jelly Bean 99.9%
Level 17 Android 4.2 JELLY_BEAN_MR1 99.9% 2012
Level 16 Android 4.1 JELLY_BEAN 99.9%
Google Play services v14.8.39+ (December 2018) drops support for API levels below 16.
Level 15 ICE_CREAM_SANDWICH_MR1 Ice Cream 100.0% 2011
Android 4.0.3 – 4.0.4 Sandwich
Level 14 ICE_CREAM_SANDWICH
Android 4.0.1 – 4.0.2
Earlier Jetpack/AndroidX libraries required a minSdk of 14 or higher.
Android 3 Level 13 Android 3.2 HONEYCOMB_MR2 Honeycomb No data
Level 12 Android 3.1 HONEYCOMB_MR1
Level 11 Android 3.0 HONEYCOMB
Android 2 Level 10 GINGERBREAD_MR1 Gingerbread
Android 2.3.3 – 2.3.7
https://apilevels.com 2/5
2/24/25, 2:44 PM API Levels | Android versions, SDK/API levels, version codes, codenames, and cumulative usage
Level 9 Android 2.3.0 – 2.3.2 GINGERBREAD 2010
Level 8 Android 2.2 FROYO Froyo
Level 7 Android 2.1 ECLAIR_MR1 Eclair
Level 6 Android 2.0.1 ECLAIR_0_1 2009
Level 5 Android 2.0 ECLAIR
Android 1 Level 4 Android 1.6 DONUT Donut
Level 3 Android 1.5 CUPCAKE Cupcake
Level 2 Android 1.1 BASE_1_1 Petit Four
Level 1 Android 1.0 BASE None 2008
https://apilevels.com 3/5
2/24/25, 2:44 PM API Levels | Android versions, SDK/API levels, version codes, codenames, and cumulative usage
Definitions
Gradle files
Kotlin Groovy variable Definition
variable
minSdk minSdkVersion The minimum SDK version your app will support, defined in build.gradle. For
example, if your minSdk is 26, this SDK version corresponds to API Level 26 and
Android 8, so your app will only run on devices with Android 8 or higher.
targetSdk targetSdkVersion The SDK version that your app targets, defined in build.gradle. This should
always be the same as compileSdk.
compileSdk compileSdkVersion The SDK version that your app compiles against, defined in build.gradle.
Android Studio uses this SDK version to build your AABs and APKs. This should
always be the same as targetSdk.
Code files
Variable Definition
Build.VERSION.SDK_INT The SDK version of the Android OS currently running on the user's device. For example,
on a device running Android 11, this value will be 30 (aka Build.VERSION_CODES.R), even if
the target and compile SDK of the app is different.
Footnotes
1. Cumulative usage distribution figures were last updated on January 9, 2025 using December 2024 data from
Statcounter GlobalStats and this script. These figures may have changed significantly since the last update. You
may update the figures yourself with a pull request. ↩
https://apilevels.com 4/5
2/24/25, 2:44 PM API Levels | Android versions, SDK/API levels, version codes, codenames, and cumulative usage
2. The codenames for Android 10 and above in the table are the internal codenames. Beginning with Android 10,
Google dropped the usage of codenames publicly. ↩
3. Android 4.4W is the first Android release for Android Wear. ↩
4. The years represent the year of first stable release of each version. The release dates are from
android.os.Build.VERSION_CODES including later versions' years from the Official Android blog (12, 12L, 13, 14, 15)
↩
See also
Build.VERSION_CODES official reference
Codenames, Tags, and Build Numbers
Source | Maintained by Eugene 👨🏻💻 and others
https://apilevels.com 5/5