Clarity for Mobile Apps Overview
What is Clarity Mobile SDK?
Clarity SDKs for mobile apps allow you to capture essential information about user interactions with all parts of your app. This can help you replay user sessions, view heatmaps, and monitor key application signals via the metrics dashboard. Integrating Clarity SDK into your mobile application requires minimum development effort.
Clarity Mobile SDK uses innovative technology to reconstruct user sessions by capturing low-level drawing commands to create a walkthrough-style video. This technology has minimal effect on network consumption and creates nearly perfect session replays.
Platform/Framework Support Matrix
Platform | Android | iOS |
---|---|---|
All Frameworks | Requires Android API level 29 to 34 | Requires iOS version 15 to 18 |
Native | ✓ - Jetpack Compose is fully supported in clarity-compose . - Supported compose range is stable releases 1.0.0 - 1.6.8 . - Using Compose Bill of Materials (BOM)? Check out BOM to library version mapping |
✓ - UIKit views are fully supported. - SwiftUI support is enabled by default starting from version 3.0.0 with some limitations. - SwiftUI support is available starting from version 2.0.0 behind an experimental flag. |
React Native | ✓ | ✓ |
Cordova | ✓ | ✗ |
Ionic | ✓ | ✗ |
Flutter | ✗ Coming soon. |
✗ |
How does Clarity Native SDKs work?
Once the SDK is integrated and initialized, it starts capturing data. The captured data include:
- User screens/visuals to recreate user sessions.
- User interactions (taps, double taps, touches, and so on.)
Captured data buffers on the mobile device storage and is periodically uploaded to Clarity's servers when the device is connected to the internet. However, the iOS SDK currently doesn't support buffering on device storage. So, offline sessions aren't uploaded to Clarity's servers. The default configuration for Clarity is to send data over an unmetered network. However, this setting can also be changed on the Clarity dashboard.
Note
The data might take 30 minutes to 2 hours to show up on the dashboard.
Supported features
The following features help you identify user requirements by allowing you to study user behavior:
- Session Recordings
- Heatmaps
- User interaction insights such as Rage taps, Dead taps, Taps, and Double taps.
- Funnels and Smart Events
Important
- Notifications, navigation bars, and the keyboard are external components of the app and are not captured.
Why should I use Clarity?
The unique features of Clarity that help you understand user behavior include:
- View and analyze the data in near real-time, so you don't have to wait.
- There are no limits on the number of apps per account.
- There's no traffic limit on data that is collected from the apps.
- No sampling.
- Clarity won't impede the performance of your app.
What is the pricing model for Clarity?
Clarity is a free service forever. No traffic restrictions or forced upgrades to a paid version. Learn more.
Is my data secure?
Yes, your data is secure, and Clarity is GDPR-compliant. Visit Clarity's Terms of Use to learn more.
For all answers related to Data Privacy, refer to the Privacy FAQ.
Performance
The Clarity Mobile SDK is designed to be lightweight with minimal performance impact on your app.
Main thread usage
The Main (UI) thread usage by Clarity highly depends on the nature of your application. Testing on a representative set of applications and device configurations produced the following results.
Key results:
Note
These numbers may vary across users' sessions or apps.
Results | Performance |
---|---|
Clarity initialization time | 1-2 ms |
Percentage of increase in frame time at P95 | 3-5% |
Bandwidth usage
On unmetered networks, the SDK streams the recording data directly to Clarity's servers. You can expect to see around 10 KiB (per second of recording) going to Clarity. If your app is image/graphics-heavy, it might experience higher outgoing traffic at first due to asset uploading.
Disk usage
Clarity buffers the data on the disk before sending it. The data is written to temporary storage that the OS can retrieve later when needed. Moreover, the SDK deletes the data periodically.
Size
The Clarity Android SDK increases APK download size by around 400 KB, and Clarity iOS SDK increases IPA download size by around 900 KB.