Skip to content

KAnalytics

KAnalytics is a powerful Kotlin Multiplatform library that streamlines analytics integration across Android and iOS applications. It provides a unified, type safe API for tracking user events while simplifying cross-platform analytics management. It also eliminates vendor lock-in as analytics providers are pluggable and can be easily swapped out.

Motivation

The primary motivation behind KAnalytics is to provide a simple and efficient way to integrate analytics tracking into your applications. By using a shared codebase, developers can ensure consistency and reduce the effort required to implement analytics tracking for multiple platforms.

It comes with KAnalytics Viewer a companion app that helps developers and QA teams manage analytics events in their applications. Its user friendly interface simplifies event viewing, searching, and debugging. Very useful for QA teams to easily verify the events being sent.

Features

KAnalytics is a flexible analytics library that allows you to:

  1. Multi-Tracker Support: Send events to multiple analytics services simultaneously.
  2. Interceptor: Intercept and modify events before they are sent.
  3. Multiplatform Support: Works on both Android and iOS platforms.
  4. Viewer: View and debug analytics events during development.
  5. Shortcuts or Quick Actions: Allows you to launch KAnalytics Viewer via app shortcuts on Android and Quick action on iOS.

Screenshots

Android iOS

Platform Support

Platform Supported
Android
iOS

Credits

This project was highly inspired by the following projects:

  • OkHttp - For the interceptor pattern implementation
  • Chucker - For the kanalytics viewer implementation
  • Inspektify - Ideas for the kanalytics viewer implementation
  • Inspektor - Ideas for the kanalytics viewer implementation

License

Copyright 2025 Addhen Ltd and the KAnalytics project contributors

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    https://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.