Kotlin Multiplatform – Build Cross-Platform Apps

4 min read Original article ↗

Go cross‑platform without compromising performance, UX, or code quality

  • Android
  • iOS
  • Web
  • Desktop
  • Server

Get Started

AI-powered code generation

Speed up your multiplatform coding with code generation powered by

Junie, the coding agent by JetBrains.

Seamless tooling

Enjoy smart IDE support with the

KMP plugin

for

IntelliJ IDEA

and

Android Studio, with common previews, cross-language navigation, refactorings, and debugging across Kotlin and Swift code.

KMP presence among the top 10K apps doubled year over year.

KMP apps

Real-world success stories

duolingo

“One exciting trend for Duolingo is that the more that we use Kotlin Multiplatform internally, the more we find ourselves speeding up in terms of shipping. It turns out after you learn something, you get really good at it. […] Now there's a lot more confidence behind it and we're building up that knowledge.”

John Rodriguez

The client platform team

Sony's journey to Kotlin Multiplatform wasn't just about efficiency; it was about capability.

We migrated from native plans to a unified KMP and Compose Multiplatform workflow, delivering a robust companion app for our flagship headphones, with background execution and sensor integration to millions of users worldwide.

Sergio Carrilho

TechLead at Sony

Watch the full video

sony case

booking

“Adopting KMP for our experimentation library was a calculated bet. Best case: we save time and guarantee cross-platform consistency. Worst case: we rewrite the library in Swift. The reality exceeded our expectations: KMP performed great on iOS, proving it’s a viable, long-term solution for our team.”

Diego Gómez Olvera

Principal Android Developer

Read the full story

mcdonalds-umain

“After a successful initial test with the payments feature, we expanded Kotlin Multiplatform to our entire McDonald's application. With KMP, we saw fewer crashes and better performance across both platforms after the launch.

We transitioned from a separate Android and iOS team to a more unified mobile team.”

Varsha Singh

Project Manager, McDonald’s app at Umain

forbes

By sharing over 80% of logic across iOS and Android, Forbes now rolls out new features simultaneously on both platforms, keeping the flexibility to customize features based on the specific platform. This allows the team to innovate and respond to market needs faster.

Read the full story

google-workspace

“We consider Kotlin Multiplatform validated in our Google Docs experiment […] we consider the experiment a success […] We’re actually very happy with it”

Jason Parachoniak

Multiplatform Lead in Google Workspace

bilibili

BiliBili (China version) has adopted Kotlin Multiplatform and Compose Multiplatform for the Instant Message feature.

Read the full story

bilibili case

Explore more customer stories

Kotlin Multiplatform is a technology that allows you to create applications for various platforms and efficiently reuse code across them while retaining the benefits of native programming. Your applications will run on iOS, Android, macOS, Windows, Linux, and more.

Kotlin Multiplatform is the core technology that lets you share code – such as business logic, data models, networking, and more – across multiple platforms, including Android, iOS, desktop, web, and server. It focuses on code reuse without replacing the native UI unless you want it to.
Compose Multiplatform

is an optional UI framework built on top of Kotlin Multiplatform. It allows you to share your user interface across platforms using a modern, declarative approach similar to Jetpack Compose on Android. You can use it to build visually appealing, responsive UIs for Android, iOS, desktop, and web from a single codebase.

Yes, Kotlin Multiplatform is production-ready for all supported platforms – Android, iOS, desktop, web, and server. Compose Multiplatform is stable for Android, iOS, and desktop, while the web target is currently in Beta.

Choose Kotlin Multiplatform when you need:

  • Incremental adoption: KMP lets you share code selectively – start with a single module or expand to your full app at your own pace.
  • Native performance: KMP compiles to native code for each platform with no bridges or VMs, ensuring high performance and responsiveness.
  • Truly native UI with Compose Multiplatform: Compose Multiplatform respects each platform's UI conventions, offering a native-feeling experience across Android, iOS, desktop, and web.
  • The same tools and architecture as Kotlin and Jetpack Compose: Your skills will transfer easily, reducing onboarding and ramp-up time.
  • Direct access to platform APIs: You can call native APIs directly – with no wrappers needed and zero time wasted waiting for framework updates.
  • Escape hatches for native code: You can write fully native code where needed (e.g. for performance-critical components), without having to abandon the cross-platform approach.

Learn more about

KMP and Flutter

and

KMP and React Native.

No. You can start small by sharing a module or feature and integrating it into your existing app. KMP is designed for gradual adoption, making it easy to incrementally introduce cross-platform code.

Go cross-platform without compromises —
try Kotlin Multiplatform today.

Get Started