Excessive battery usage

When battery usage for a Wear OS watch face exceeds 4.44% per hour when devices aren't charging and no apps are in use, 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 for 80% of sessions and less than 1% excessive battery usage overall.

Contributing factors

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

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

Use Battery Historian to investigate further.

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.