Both clients are free, Apache 2.0 and actively maintained. They differ in shape and reach:
| Retrofit 3.0.0 + OkHttp 5.5.0 47,077 | Ktor client 3.6.0 | |
|---|---|---|
| Style | Annotated interface, generated at run time | Function calls in a DSL |
| Platforms | JVM and Android | Android, JVM, iOS, JS, Wasm, native |
| Engine | OkHttp | Pluggable: OkHttp, CIO, Darwin, JS |
| Extras | Interceptors, OkHttp's cache | Plugins: auth, retry, logging, WebSockets |
Choose Retrofit for an Android-only app: the interface documents the API, every Android code base knows it, and OkHttp is proven at huge scale. Choose Ktor when networking code must be shared with iOS or the web through Kotlin Multiplatform 25,990 (Kotlin Multiplatform), or when your server already runs Ktor.