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.

Real-world success stories

case-study-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

case-study-netflix

Netflix uses KMP to share logic for their mobile studio apps, reducing duplication and enabling faster, more reliable development. This approach helps deliver high-quality features efficiently in the fast-paced world of TV and movie production.

Read the full story

case-study-bilibili

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

Watch the full video

case-study-bilibili case

case-study-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

case-study-wrike

Wrike adopted Compose Multiplatform early, with CMP-powered features in production since its beta state. Today, our production apps feature Calendars, Boards, Dashboards, Charts, Timesheet Approvals and more – all done with CMP. It’s helping us deliver consistent, high-quality experiences across platforms while streamlining our development process. With the iOS version now reaching stability, we’re excited to see this technology mature and look forward to expanding its implementation.

Alex Askerov

Mobile Tech Lead at Wrike

case-study-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

“Starting from this small of a team, it was a huge speed win for X to be able to use Kotlin Multiplatform and write all of that logic once in one place… When you write a bug—not that I ever do that—you only have to fix it in one place.”

Eric Denman

Software Engineer at X

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