SDKs
Client SDKs for sending events, metrics, and funnels to Owlmetry.
Owlmetry provides three SDKs, all lightweight with minimal dependencies. They handle batching, gzip compression, retry with exponential backoff, and automatic lifecycle events out of the box.
Available SDKs
- Swift SDK — Native SDK for iOS, iPadOS, and macOS apps. Distributed as a Swift Package, zero external dependencies. Covers event logging, screen tracking, structured metrics, funnels, identity management, network monitoring, and app launch time measurement.
- Android SDK — Kotlin SDK for Android apps, with optional Jetpack Compose UI. Published to Maven Central; the core module has a single dependency (
kotlinx-coroutines). Covers event logging, screen tracking, structured metrics, funnels, identity management, feedback, and questionnaires. - Node.js SDK — Server-side SDK for Express, Fastify, and serverless functions. Pure ESM package, zero runtime dependencies. Covers event logging, structured metrics, funnels, identity scoping, and serverless support.
Comparison
| Feature | Swift | Android | Node.js |
|---|---|---|---|
| Events with log levels | Yes | Yes | Yes |
| Structured metrics | Yes | Yes | Yes |
| Funnel tracking | Yes | Yes | Yes |
| Auto screen tracking | Yes | Yes (Compose) | — |
| In-app feedback / questionnaires | Yes | Yes (Compose) | — |
| Network monitoring | Yes | — | — |
| App launch time | Yes | Yes | — |
| Serverless support | — | — | Yes |
| User scoping | Owl.setUser() | Owl.setUser() | Owl.withUser() |
| Compression | Gzip | Gzip | Gzip |
| Min runtime | iOS 16 / macOS 13 | Android 7 (API 24) | Node.js 20 |
Choosing an SDK
- Building an iOS, iPadOS, or macOS app → Swift SDK
- Building an Android app → Android SDK
- Building a backend service, API, or serverless function → Node.js SDK
- Building a cross-platform app with a backend → use several. Events from all platforms appear in the same project dashboard.
