Question about Metrics Analysis in Xcode 26

Hello,

I have recently been using the new Power Profiler tool introduced in Xcode 26 to analyze the power consumption of my app. My app primarily operates in the background. During a profiling session of 5 hours and 30 minutes, I observed that the app was active in the background for 2 hours and 30 minutes, while it remained in a suspended state for the remaining 3 hours.

While the Power Profiler allows me to identify spikes in CPU, networking, and other resource usage at specific points, it is difficult to determine whether these values are objectively considered high.

For example, in my case, the total QoS Execution Time of CPU Impact recorded during the 5 hours and 30 minutes was 12.18 seconds. I am wondering whether this is considered a good metric.

Could you please advise on the following points? 1. Is there a commonly accepted or recommended ratio between app active time and CPU time that developers should aim for? 2. Are there any guidelines or reference materials on how to interpret CPU usage and other resource metrics for apps that primarily run in the background?

Any insights or advice would be greatly appreciated. Thank you.

In this case, with CPU time being relatively low compared to the total active time, it might be worth considering the duration of the background active time itself, which also impacts battery life, even without significant CPU usage - for example, by checking the following:

  • What background modes are used? For example, background-app-refresh, location, etc. If using location services, are continuous updates needed vs significant location changes?
  • Are background tasks being used correctly?
  • Are completion handlers being properly called, to allow the system to suspend sooner?

WWDC 2019 Session 707 "Advances in App Background Execution" may be a helpful resource: https://developer.apple.com/videos/play/wwdc2019/707/

Question about Metrics Analysis in Xcode 26
 
 
Q