SDK setup for CMP apps
This guide shows the steps to set up the Kotzilla SDK in your CMP app.
Before starting, your application must be registered on the Kotzilla Platform:
- Using the Koin IDE Plugin inside Android Studio or IntelliJ IDEA, or
- Via the Kotzilla Console for a web-based onboarding experience.
Once your app is registered and the type is selected, follow the steps below to integrate the SDK, capture analytics, and start debugging and monitoring your app.
Step 1 - Setup Kotzilla SDK (CMP)
1.1 Kotzilla project configuration file
Download the kotzilla.json configuration file for your ComposeApp module and place it in the module directory:
Module (ComposeApp module) Gradle file: <project>/<ComposeApp module>`

This file contains your API key, version, and SDK configuration for shared code.
1.2 Set up the SDK
The instructions below use Version Catalog configuration by default.
If your project uses the traditional Gradle setup, please check the documentation here for specific instructions.
Kotzilla SDK is available on both Maven Central and the Kotzilla public repository. More information on how to configure access to the Kotzilla repository is available here
Add the following lines to your libs.versions.toml file:
[versions]
kotzilla = "2.0.2" // Check the latest version available below
[libraries]
kotzilla-sdk-compose = { group = "io.kotzilla", name = "kotzilla-sdk-compose", version.ref = "kotzilla" }
[plugins]
kotzilla = { id = "io.kotzilla.kotzilla-plugin", version.ref = "kotzilla" }
Set up the Kotzilla Plugin in your project root-level Gradle file (<project>/build.gradle.kts):
plugins {
alias(libs.plugins.kotzilla) apply false
}
In your ComposeApp module Gradle file (<project>/<ComposeApp module>/build.gradle.kts), add:
plugins {
alias(libs.plugins.kotzilla)
}
kotzilla {
versionName = "1.0.0" // Your app version
}
The Compose SDK dependency is automatically added to commonMain. No manual implementation line needed.
If you prefer manual control: kotzilla { autoAddDependencies = false } then add:
commonMain.dependencies {
implementation(libs.kotzilla.sdk.compose)
}
Compose navigation instrumentation is enabled by default in SDK 2.0.x.
1.3 Supported Platforms
The Kotzilla SDK supports these Compose Multiplatform targets:
| Platform | Target | Status | Notes |
|---|---|---|---|
| Android | androidTarget() | Stable | Full crash reporting with mapping file support |
| iOS | iosArm64(), iosX64(), iosSimulatorArm64() | Beta | dSYM setup required (see KMP Setup) |
| Desktop (JVM) | jvm() | Experimental | Crash reporting works; no mapping file support yet |
| JS Browser | js(IR) { browser() } | Experimental | Crash reporting works; no source map support yet |
| JS Node | js(IR) { nodejs() } | Experimental | Crash reporting works; no source map support yet |
| WASM Browser | wasmJs { browser() } | Experimental | Crash reporting works; no source map support yet |
| WASM Node | wasmJs { nodejs() } | Experimental | Crash reporting works; no source map support yet |
For JVM, JS, and WASM: crash reporting captures exceptions, but minified/obfuscated stack traces are not yet de-obfuscated. Feedback helps prioritize.
1.4 Sync Gradle
Sync your project in Android Studio or IntelliJ IDEA to apply the changes.
Step 2 - Start Kotzilla SDK (CMP)
Initialize the Kotzilla SDK in your ComposeApp module Koin configuration to capture analytics data for Compose Multiplatform apps:
import io.kotzilla.generated.monitoring
startKoin {
// Your current Koin configuration
..
// Add Kotzilla monitoring
monitoring()
}
The monitoring() function is generated at build time by the Kotzilla Gradle plugin.
Step 3 - Go To Dashboard
Now that the SDK is configured, you can build and run your app to start capturing data from a first user session.
Once you've stopped the app:
- Click Check your data to confirm everything is being collected correctly.
- Then click Go to Dashboard to view your app’s performance and configuration insights.
