> ## Documentation Index
> Fetch the complete documentation index at: https://docs.germainux.com/llms.txt
> Use this file to discover all available pages before exploring further.

# KPIs for Android App

> GermainUX provides preconfigured KPIs for monitoring Android application usage, performance, errors, transactions, and device conditions.

Components
[`Engine`](https://docs.germainux.com/main/germain-ux-engine)
[`Mobile App`](https://docs.germainux.com/main/germain-ux-mobile-app)
[`RUM JS`](https://docs.germainux.com/main/germain-ux-rum-js)

Availability
2022.1 or later

> [card] [Preconfigured KPIs](#preconfigured-kpis)
>
> Ready-made Android KPIs

> [card] [Usage KPIs](#usage-kpis)
>
> Engagement and usage measures

> [card] [Business-Process KPIs](#business-process-kpis)
>
> Measure completed process outcomes

> [card] [Validation](#validation)
>
> Verify KPIs after enabling

## KPIs for Android Application Monitoring

## Overview

GermainUX provides preconfigured KPIs for monitoring Android application usage, performance, errors, transactions, and device conditions.

The available data depends on:

* GermainUX Mobile App library version
* Android version
* Application permissions
* Enabled monitoring features
* Custom application instrumentation
* Device and operating-system restrictions

Custom KPIs can also be created for application-specific events, transactions, and business processes.

## Preconfigured KPIs

| KPI | Data model | Description |
| - | - | - |
| Mobile App Crash | `MobileEvent` | Application crash caused by a captured unhandled exception |
| Mobile App Error | `MobileEvent` | Application error or handled exception |
| Mobile App Event | `MobileEvent` | Application lifecycle, system, or custom event |
| Mobile App Fragment Load | `MobileTransaction` | Load duration for a supported Android fragment |
| Mobile App Transaction | `MobileTransaction` | Duration and context of a custom application transaction |
| Mobile App Uptime | `MobileTransaction` | Monitored application uptime and foreground or background duration |
| Mobile App Usage | `MobileMetric` | Application usage measurement |
| Mobile App View Navigation | `MobileTransaction` | Duration of navigation to a supported activity or view |
| Mobile Battery Level | `MobileMetric` | Device battery level available to the application |
| Mobile CPU Usage | `MobileMetric` | CPU usage available through the configured monitoring |
| Mobile Disk Usage | `MobileMetric` | Storage usage available to the application |
| Mobile Memory Usage | `MobileMetric` | Device memory measurement available to the application |
| Mobile Network Bandwidth | `MobileMetric` | Configured network-bandwidth measurement |
| Mobile Network Usage | `MobileMetric` | Network usage available to the monitored application |
| Mobile Process Memory | `MobileProcessMetric` | Memory used by the monitored application process |
| Mobile Service | `MobileMetric` | Status or measurement of a configured Android service |

Not every KPI is populated automatically. Some require permissions, supported Android APIs, enabled configuration, or custom instrumentation.

## Application Stability KPIs

### Mobile App Crash

Captures crashes reported through automatic unhandled-exception monitoring or the explicit crash API.

Useful measures include:

* Crash count
* Unique crash types
* Affected users
* Affected sessions
* Crash rate
* First and last occurrence

Useful pivots include:

* Exception name
* Application version
* Android version
* Device manufacturer and model
* Screen or fragment
* Transaction
* User session

### Mobile App Error

Captures application errors and handled exceptions submitted to GermainUX.

Use this KPI for software failures that do not necessarily terminate the application. Expected user validation should be categorized separately so it does not inflate the application-error rate.

### Mobile App Event

Captures supported:

* Application lifecycle events
* System events
* Custom events
* Low-memory notifications
* Foreground and background transitions
* Application startup events

System-event availability varies by Android version, permissions, application state, and device manufacturer.

## Performance KPIs

### Mobile App Fragment Load

Measures the load duration of supported Android fragments.

Use it to identify:

* Slow fragments
* Release regressions
* Device-specific performance problems
* Business-process steps with poor performance

### Mobile App View Navigation

Measures navigation duration for supported Android activities and views.

Custom UI frameworks, including navigation that does not use standard activity or fragment lifecycles, may require custom transaction instrumentation.

### Mobile App Transaction

Measures custom operations instrumented with:

```text theme={null}
GermainAPM.startTransaction(...)
GermainAPM.endTransaction(...)
```

Transactions can represent:

* Network requests
* Data synchronization
* Local database operations
* Authentication
* Search
* Form submission
* Order processing
* Custom business-process steps

Useful measures include count, average duration, median, percentiles, maximum duration, failure count, and affected users.

## Usage KPIs

### Mobile App Uptime

Measures the application lifetime observed by GermainUX, including available foreground and background duration.

Android does not always notify an application before terminating its process. A complete final uptime value may therefore be unavailable for some executions.

### Mobile App Usage

Provides application-usage measurements that can be analyzed with:

* Active users
* Sessions
* Application version
* Android version
* Device
* Environment
* Time period
* User role or segment, when configured

Combine usage data with screens, fragments, events, and business-process transactions for more detailed adoption analysis.

## Device and Resource KPIs

### Battery

`Mobile Battery Level` helps determine whether application behavior or failures correlate with battery state.

Battery information should be used as application context rather than as a complete device-management solution.

### CPU and memory

Use the following KPIs to analyze resource conditions available to the monitored application:

* Mobile CPU Usage
* Mobile Memory Usage
* Mobile Process Memory

These metrics can help investigate slow transactions, low-memory events, freezes, or crashes.

### Disk

`Mobile Disk Usage` captures storage information accessible to the application. Use it to identify whether limited storage correlates with failed downloads, synchronization, caching, or file operations.

### Network

Use:

* Mobile Network Bandwidth
* Mobile Network Usage

These KPIs provide available network context for analyzing slow or failed operations. They do not replace network-carrier or device-management telemetry.

## Recommended Measures

Depending on the KPI, configure:

* Count
* Unique users
* Affected sessions
* Average
* Median
* Percentiles

> [accordion] Show all 12
>
> * Minimum and maximum
> * Duration
> * Error or crash rate
> * Success and failure rates
> * Trend compared with the previous period
> * Deviation from a baseline

Analyze percentiles and affected-user counts alongside averages. Averages can hide serious problems affecting a smaller user group.

## Recommended Pivots

Useful dimensions include:

* Application
* Environment
* Application version
* Android version
* Device manufacturer
* Device model

> [accordion] Show all 16
>
> * User or role
> * Session
> * View or activity
> * Fragment
> * Transaction
> * Event or error name
> * Network state
> * Geographic region, when approved
> * Business process
> * Release

Avoid using personal or high-cardinality values as pivots unless they are necessary and approved.

## Business-Process KPIs

Create business-process monitoring from relevant mobile events, views, fragments, and transactions.

Common business-process measurements include:

* Processes started
* Processes completed
* Processes failed
* Processes abandoned
* Completion rate
* Failure rate

> [accordion] Show all 11
>
> * Abandonment rate
> * End-to-end duration
> * Step duration
> * Process overrun
> * Lost productivity

A screen visit alone does not confirm that a process step succeeded. Use a transaction or custom event when completion must be verified.

## Alerts

Configure alerts for conditions such as:

* New crash signature
* Increased crash rate
* Increased application errors
* Slow application launch
* Slow fragment or view navigation
* Critical transaction failure

> [accordion] Show all 10
>
> * Performance regression after a release
> * Repeated low-memory conditions
> * Increased business-process abandonment
> * Missing expected telemetry

Use minimum-volume, duration, and recurrence requirements to avoid noisy alerts.

## Dashboards and Reports

Android dashboards can include:

* Active users and sessions
* Application usage
* Crashes and affected users
* Errors and exceptions
* Launch and navigation performance
* Slowest fragments

> [accordion] Show all 11
>
> * Custom transactions
> * Business-process effectiveness
> * Application-version comparison
> * Android and device breakdown
> * CPU, memory, storage, battery, and network context

Scheduled reports can summarize current values, trends, changes compared with the previous period, new errors, and affected user populations.

## Validation

After enabling Android monitoring:

**1. Confirm that expected KPIs receive data**

**2. Verify application and environment names**

**3. Generate a controlled event, transaction, and handled exception**

**4. Validate crash collection in a safe test build**

**5. Navigate through supported activities and fragments**

**6. Confirm that device metrics are available where expected**

**7. Verify data across debug and release builds**

**8. Confirm that sensitive attributes are excluded**

**9. Test dashboard filters, alerts, and reports**

## Get Help

> [card] [Contact GermainUX Support](https://docs.germainux.com/main/support.md)
>
> The GermainUX team helps you get up and running faster, empower your team, turn data into actionable insights, and optimize performance to deliver measurable business outcomes.

> [card] Can't find what you need?
>
> Search all GermainUX docs with **Ctrl + K**, or use the feedback buttons at the bottom of this page to tell us what is missing.

The content of this document is proprietary to GERMAIN SOFTWARE.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.