UXCam provides effortless and comprehensive data capture for your app. Unlike manual tracking, our auto-capture method simplifies the process, ensuring accessibility and reliability. By inserting a code, UXCam automatically captures different types of data in your mobile app for every session which can be categorized as :
4.4 Event automatically captured
✏️ Note» You can filter by all these properties.
4.1 User data
Active users are unique individuals who visit your app at least once within the selected period. UXCam defines a unique user based on the Install ID, however, you can also set up your own User ID. User data are pieces of information associated with users.
UXCam provides the following user data automatically.
User Data | Definition |
Random Alias | UXCam assigns a random alias to the user to keep anonymity and protect user data. |
UXCam User ID | Active users are unique individuals who visit your app at least once within the selected period. UXCam defines a unique user based on the Install ID; however, you can also set up your own User ID to easily identify your users by sending over user properties. |
Country | Country of the session based on the IP address. IP is discarded and never stored or sent to UXCam servers. |
City | City of the session based on the IP address. |
First seen |
First time user used the app |
Last Seen |
Last time user used the app |
How UXCam Tracks Unique Users
UXCam uses three primary identifiers:
1. Device ID
For mobile applications, UXCam generates a random alphanumeric string for the device ID.
For web applications, a Universally Unique Identifier (UUID) is generated, persisting unless cookies are cleared or a user is in private mode.
2. User ID
Configurable by your team, typically using a username or internal unique identifier.
Anonymous users are not assigned a user ID but are tracked via device and UXCam IDs.
3. UXCam ID
This is created using either the device or user ID. A user ID is preferred as multiple users might share a device.
Special Scenarios for Tracking
Anonymous Usage: If no user ID is assigned, UXCam tracks the user based on the device ID and assigns a unique UXCam ID.
Switching Between Anonymous and Logged-in States: Events logged anonymously before a user ID is assigned will be merged under the same UXCam ID once the user logs in.
Multiple Devices: When the same user ID appears on different devices, UXCam recognizes this and associates the same UXCam ID across all devices.
Shared Devices: When multiple user IDs use the same device, UXCam assigns a unique UXCam ID to each user. Anonymous events after a user logs out will still be attributed to the last known user unless explicitly reset.
Tips for Accurate Tracking
Use consistent identifiers across projects (e.g., username).
Ensure developers properly implement UXCam’s SDK to track user states accurately.
By following these practices, UXCam ensures precise user tracking, providing insights like session replays and heatmaps to enhance your understanding of user behavior across devices and sessions.
4.2 Device data
Device properties are bits of information associated with the user's device. UXCam provides the following device data automatically.
Device Data | Definition |
Install ID | Unique identifier for a given device. UXCam uses a Vendor Device ID to identify unique users (UIDevice.currentDevice.identifierForVendor.UUIDString), which is a random UUID tied to the app publisher. |
Device Manufacturer | Name of the device manufacturer. (Eg. Samsung) |
Device Class | Class of the device given by the device size. (Eg. Android Large) |
Screen width (px)
|
Width of the display in pixels. |
Screen height (px)
|
Height of the display in pixels. |
OS version | Version of the device's operating system. |
App version | App version on device |
Device Language | Language of the device as set by the user. |
4.3 Session data
A session is an individual user’s activity within your app from the moment they launch the app until they close it or send it to the background. UXCam automatically captures a range of user interactions in your mobile app for every session to allow you to deeply understand your users’ behavior.
Session Data | Definition |
Session | A session is everything the user did within your app, from launch until they sent it to the background. It includes all the meta-data collected during the user visit, including device and user data and interactions with your application such as screen visits, events triggered, and gestures. |
Session ID | It’s a unique ID assigned to each session. |
Session Number | The number of the session. If the session is a user's first session, then session number =1. |
Device time | Local time on the user’s device when a session started. |
Upload time |
Time when the session is uploaded to the UXCam server, in UTC. |
Environment |
Build type based on the stage of the app release life cycle. |
Session duration | Length of session |
Screen visits
|
Number of times user visited screen during a session. |
Gesture count | Total number of gestures by the user during the session. Includes swipes, taps, and zooms. |
Unresponsive Gesture | Represents a tap or gesture that triggers no response from the application. It could be either an interaction with an element that is not responding (e.g bug) or the user trying to interact with a static element of the screen (e.g text).These gestures can indicate frustration and are found in heatmaps. |
4.4 Events automatically captured
Rage tap | A rage tap represents rapid-fire taps in frustration. It's defined by at least 3 taps within a certain radius on the screen and at most 300ms between consecutive taps. It would show you when users are frustrated with a certain element in your app. Please keep in mind that if there's any button in your app that users need to click rapidly (e.g. plus button to increase some kind of quantity), you can always decide not to track rage taps on a specific screen. This can be achieved in App settings. |
Rage quit | Indicates when a user quits the app right after a rage tap. |
UI Freezes | Indicates when the app is unresponsive or frozen. We detect a UI freeze when you run a process on the UI thread that takes too long and can't process the user input. We track it by adding a piece of code that tries to run on the main thread at regular intervals. If the gap between runs is unexpectedly high, more than one second, we declare a UI Freeze. |
4.5 Crashes & Exceptions
Crashes | A crash occurs when there's an unexpected exit caused by an unaddressed exception or signal during development. When an unexpected signal occurs, the app will crash and be forced to close. After a crash, users need to re-open the app to continue using it. |
Exception | In the realm of mobile app development, an exception denotes an unforeseen error or irregular event that deviates from the expected flow, potentially causing the app to behave abnormally, crash, or produce unintended outcomes. Specific handling mechanisms are employed to address these exceptions, ensuring the app's stability and safeguarding the user experience. |