Clarification Needed: histogrammedTimeToFirstDraw vs histogrammedOptimizedTimeToFirstDraw in MetricKit

Hi Apple Developer Community,

I'm implementing MetricKit launch performance tracking in our iOS app and need clarification on two properties:

  • histogrammedTimeToFirstDraw
  • histogrammedOptimizedTimeToFirstDraw

The Documentation Problem:

The official MetricKit documentation provides minimal explanation of these properties beyond their names. Based on naming conventions, I initially assumed:

  • histogrammedTimeToFirstDraw = cold launches
  • histogrammedOptimizedTimeToFirstDraw = warm/optimized launches

Based on our measurements:

  1. The “optimized” metric appears only in a small fraction of launches
  2. The "optimized" metric is actually slower
  3. The naming suggests the opposite behavior

Questions:

  1. What specific launch conditions does each metric measure?
  2. Why would "optimized" launches be slower and less frequent?
  3. Is histogrammedOptimizedTimeToFirstDraw related to iOS app pre-warming or prediction features?
  4. If these metrics don’t correspond to cold vs. warm launch times, is there an alternative way to measure them accurately?

Any clarification from Apple or insights from developers who've tracked these metrics would be greatly appreciated.

Clarification Needed: histogrammedTimeToFirstDraw vs histogrammedOptimizedTimeToFirstDraw in MetricKit
 
 
Q