How it works
Kotlin runs on the JVM and works hand in hand with Java: a project can mix both, and Kotlin calls any Java library directly. It removes much of Java's ceremony with type inference, data classes, extension functions and smart casts, and its type system separates values that may be null from values that cannot, which prevents a very common cause of crashes in Java apps.
Google made Kotlin an official Android language in 2017 and declared Android development 'Kotlin-first' in 2019. Jetpack Compose, the modern way to build Android screens, is Kotlin-only, and coroutines and Flow handle background work and streams of data without tangles of callbacks.
Beyond Android, Kotlin runs servers with Ktor or Spring Boot, and Kotlin Multiplatform shares business logic (and, with Compose Multiplatform, screens) across Android, iOS, desktop and the web.
Kotlin pros and cons
Pros
- Concise and readable, with far less boilerplate than Java
- Null safety built into the type system
- Works with existing Java code and libraries in the same project
- Coroutines make background work and concurrency simpler
- First-class support from Google for Android
Cons
- Compiles can be slower than Java on big projects
- Outside Android and the JVM its ecosystem is smaller
- Many ways to write the same thing, so teams need a style guide
When to use Kotlin
Pick it when
- Any new Android app
- JVM backends where a team wants a modern alternative to Java
- Sharing logic between Android and iOS with Kotlin Multiplatform
Skip it when
- An iOS-only app, where Swift is the native choice
- A large Java codebase where adding a second language brings little
Kotlin pricing
Open source
Free and open source (Apache 2.0). Android Studio, the usual editor for Android work, is free too.
Approximate, checked September 2026.What the other tools cost
Kotlin vs the alternatives
Related terms
More in Programming languages
Mobile