Stay organized with collections Save and categorize content based on your preferences.

Develop Android apps with Kotlin

Write better Android apps faster with Kotlin. Kotlin is a modern statically typed programming language used by over 60% of professional Android developers that helps boost productivity, developer satisfaction, and code safety.

Expressive and concise

Kotlin's modern language features allow you to focus on expressing your ideas and write less boilerplate code.

Safer code

With nullability included in its type system, Kotlin helps you avoid NullPointerExceptions. Android apps that use Kotlin are 20% less likely to crash.

Jetpack Compose

Android's modern UI toolkit is built on Kotlin, allowing you to create UI quickly with powerful and intuitive APIs.

Structured concurrency

Kotlin coroutines streamline asynchronous programming, making common tasks like network calls and database updates simple and performant.

Getting started

getting started

Learning Android & Kotlin from scratch

View our guides for beginners, teaching you how to build Android apps with Kotlin and Jetpack Compose.
getting started

Kotlin for Android Java developers

If you already know Java, our interop guides and documentation can help you get started.
getting started

Advanced Kotlin guides

If you’re already familiar with Kotlin, read our advanced documentation to increase your skills.
getting started

Bringing Kotlin to your team

Learn how writing in Kotlin can boost your team’s productivity, improve app quality, and increase developer satisfaction.

Optimized for Kotlin

Kotlin is fully supported for Android development with tools and resources to help you succeed.

Android Studio

Android Studio provides first-class support for Kotlin. It even has built-in tools to help you convert Java-based code to Kotlin. The Show Kotlin Bytecode tool lets you to see the equivalent Java-based code as you learn Kotlin.

Android KTX

Android KTX makes Android development with Kotlin more concise, pleasant, and idiomatic by leveraging Kotlin language features.

Kotlin-friendly SDK

Starting with Android 9 (API level 28), the Android SDK contains nullability annotations to help avoid NullPointerExceptions. API reference documentation is also available in Kotlin.

Learning resources

Explore a curated set of resources in various formats to help you jumpstart learning Kotlin.

What does Kotlin code look like?

Nullable and NonNull types help reduce NullPointerExceptions, lambdas can be used for concise event handling code, template expressions can be used in strings to avoid concatenation and semicolons are optional.

Apps built with Kotlin

Many apps are already built with Kotlin—from the hottest startups to Fortune 500 companies. Learn how Kotlin has helped their teams become more productive and write higher quality apps.
Developer story

Zomato uses Kotlin to write safer, more concise code

Kotlin helped Zomato reduce the number of lines of code in their app significantly, and it has also helped them find important defects in their app at compile time.

Watch Zomato's Rahul, Vice President, Product Management, and Prateek Sharma, Android developer, talk about how Zomato started adopting Kotlin and about how they now use it for all new feature releases.

Featured

Kotlin is open source

Kotlin is an open source project available at no charge under the Apache 2.0 license. The code for the project is developed openly on GitHub primarily by the team employed at JetBrains, with contributions from Google and others. Our choice of Kotlin reaffirms our commitment to an open developer ecosystem as we evolve and grow the Android platform, and we are excited to see the language evolve.

Android codelabs in Kotlin

Learn the latest best practices and APIs with Android codelabs in Kotlin.

Android + Kotlin on Medium

Technical articles on Kotlin from the Android team.

Android Basics with Compose course

For those with no programming experience, learn the basics of the Kotlin programming language and how to build simple Android apps.

Kotlin language documentation

Kotlin playground

Try using Kotlin now, right in your web browser.

Official language reference

Start learning Kotlin from the official language reference site.