If APMEvents is backed by vtproto's pool then timestamppb comes out as one of the most allocation heavy object. This was fixed in apm-aggregation by using uint64 to encode timestamps. If uint64 suits all our needs, we should consider promoting that package to apm-data: https://github.com/elastic/apm-aggregation/tree/main/aggregators/internal/timestamppb