When you run a test with Apptim Desktop and generate a performance report of your app, you will see certain colors (red/yellow/green) in each metrics captured by Apptim.

In the main dashboard cards (top) and in the Summary section, you see that each metric is evaluated against default thresholds set in Apptim, which are based on Google’s best practices (Android) and Apple’s best practices (iOS), along with other market benchmarks that consider device fragmentation. Each of these will have a green, yellow or red color according to the result against default benchmark or threshold. We call these thresholds Low, Moderate or Warning Limit.

  • Moderate Limit: when the metric value is over a "recommended" threshold that might cause issues in some devices, you will see a yellow mark. 🟑

  • Warning Limit: when the metric value is over an "acceptable" threshold and is likely to cause issues on some devices, you will see a red mark. πŸ”΄

  • Low Limit: when the metric value is in the range of the default threshold, you will see a green mark. 🟒

Check the tables below to see what the current default thresholds are for Android and iOS apps.

Default Thresholds for Android apps

Device Performance

Metric category

Moderate Limit 🟑

Warning Limit πŸ”΄

Avg. CPU usage

20%

50%

Max. CPU usage

70%

90%

Avg. Memory usage

256 MB

384 MB

Max. Memory usage

384 MB

512 MB

Avg./Max. Dalvik usage (market limit)

64 MB

128 MB

Max. Dalvik usage (device limit)

80%

90%

Max. Dalvik usage after GC (device limit)

60%

80%

Network: Uploaded data

5000 KB

20000 KB

Network: Downloaded data

20000 KB

50000 KB

Storage Used

100 MB

200 MB

Power Usage

33%

66%

App Performance

Metric category

Moderate Limit 🟑

Warning Limit πŸ”΄

Avg. FPS

30 FPS

15 FPS

Max. Drawing time

160 ms

320 ms

Max. lag in render frame (jank)

2 frames

3 frames

App Correctness

Metric category

Moderate Limit 🟑

Warning Limit πŸ”΄

# Android Activities

50

500

# Android Activities on Back Stack

6

10

Max. controls on the screen

50

100

# Nested layouts

10

20

Default Thresholds for iOS apps

Device Performance

Metric category

Moderate Limit 🟑

Warning Limit πŸ”΄

Avg. CPU Usage

20%

50%

Max. CPU Usage

70%

90%

Avg. Memory Usage

256 MB

384 MB

Max. Memory Usage

384 MB

512 MB

Network: Uploaded data

5000 KB

20000 KB

Network: Downloaded data

20000 KB

50000 KB

Storage Used

100 MB

200 MB

Power Usage

33%

66%

App Performance

Metric category

Moderate Limit 🟑

Warning Limit πŸ”΄

Avg. FPS

30 FPS

15 FPS

App Correctness

Metric category

Moderate Limit 🟑

Warning Limit πŸ”΄

Max. controls on the screen

50

100

# Nested Layouts

10

20

How to use these thresholds/benchmarks

When a Warning Limit has been reached in some metric listed here and it seems a bit high, the user can then click on the specific graph related to that metric or navigate to it in the left panel to understand:

  • At what moment of the test that value was reached

  • How the app UI was at that moment, looking also at the UI seconds before and after in the video

Also, it is important to cross-reference the information with device-specific behavior shown inside the "Environment” section.

How to customize your own thresholds/benchmarks?

Read this guide! πŸ™‚

Did this answer your question?