Excessive battery usage

Excessive battery usage is the percentage of watch face sessions where battery usage exceeds 4.44% per hour. Google Play collects this data when devices aren't charging and no apps are in use.

When battery usage exceeds 4.44% per hour the watch won't last a full day on a single charge. This harms users and the Wear OS ecosystem.

To maximize battery life, aim for battery usage under 3.2% per hour.

Efficiency requirements

An efficient watch face app should have:

  • < 1% excessive battery usage
  • < 3.2% battery usage per hour for 80% of sessions

Vitals provides the following data:

  • Excessive battery usage over time
  • Battery usage per hour histogram
  • Contributing factors
  • Breakdowns

Contributing factors

These are key factors affecting your app's battery usage:

  • Excessive CPU usage: The portion of watch face sessions that use the CPU for 90 seconds or more per hour.
  • Excessive partial wakelocks: The portion of watch face sessions use wakelocks for 18.5 seconds or more per hour.

Use breakdowns and Battery Historian to investigate further.

Breakdowns

Breakdowns group affected sessions by characteristics such as OS, device, and region. Select a breakdown to see an hourly battery usage histogram for that group.

Reduce battery usage

Use the following suggestions to reduce your app's battery usage.

Use Watch Face Format

Watch Face Format uses declarative XML instead of executable code to simplify app creation and reduces battery usage.

Handle Always on display (AoD) mode

When a watch isn't in use it switches to Always-on display (AoD), also called ambient mode. In AoD, your watch face should illuminate no more than 15% of pixels.

Optimize memory usage

Large images, fonts, and animations (like sweeping second hands) increase battery usage.

  • Use the lowest resolution resources needed
  • Crop resources to their minimum size (avoid transparent borders)
  • Remove or crop anything hidden by other elements to reduce overdraw

See Optimize memory usage for more suggestions.

Limit animations

Animating elements makes watch faces visually appealing but uses more battery. To reduce their impact:

  • Avoid using high fps animations
    • For most animations 15 fps is recommended
  • Limit usage of dynamic elements such as Gyro and ArithmeticExpression
    • ArithmeticExpression updates as frequently as its source data. High frequency sources such as MILLISECOND and ACCELEROMETER use more battery.
  • Avoid unnecessary animations in AoD mode

Avoid wakelocks

Publish your app using Watch Face Format to avoid wakelocks.