diff --git a/go/test_platform/analytics/result.pb.go b/go/test_platform/analytics/result.pb.go
index 24b25da..bc44734 100644
--- a/go/test_platform/analytics/result.pb.go
+++ b/go/test_platform/analytics/result.pb.go
@@ -321,7 +321,7 @@
 	// e.g. "provision_AutoUpdate.double".
 	DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
 	// The TestRun.build_id of the parent test run.
-	ParentBuildId string   `protobuf:"bytes,3,opt,name=parent_build_id,json=parentBuildId,proto3" json:"parent_build_id,omitempty"`
+	ParentBuildId int64    `protobuf:"varint,3,opt,name=parent_build_id,json=parentBuildId,proto3" json:"parent_build_id,omitempty"`
 	Verdict       *Verdict `protobuf:"bytes,4,opt,name=verdict,proto3" json:"verdict,omitempty"`
 	// A one line human readable description of what happened during test
 	// case execution (e.g. error/warning message). Not intended to be machine
@@ -372,11 +372,11 @@
 	return ""
 }
 
-func (m *TestCaseResult) GetParentBuildId() string {
+func (m *TestCaseResult) GetParentBuildId() int64 {
 	if m != nil {
 		return m.ParentBuildId
 	}
-	return ""
+	return 0
 }
 
 func (m *TestCaseResult) GetVerdict() *Verdict {
@@ -591,7 +591,7 @@
 }
 
 var fileDescriptor_ea3c1349f87b947c = []byte{
-	// 651 bytes of a gzipped FileDescriptorProto
+	// 652 bytes of a gzipped FileDescriptorProto
 	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x54, 0x4d, 0x6f, 0xd3, 0x40,
 	0x10, 0x95, 0x9b, 0xd6, 0x4e, 0x26, 0x69, 0x41, 0x56, 0x05, 0xa6, 0x12, 0x34, 0x0d, 0x5f, 0x3d,
 	0xd9, 0x12, 0x1f, 0x42, 0x80, 0x2a, 0x44, 0xcb, 0x05, 0x09, 0xa1, 0xca, 0x6d, 0x39, 0x70, 0xb1,
@@ -621,16 +621,16 @@
 	0x00, 0x7f, 0xfe, 0x7c, 0x75, 0x4d, 0xae, 0x3f, 0xe9, 0x29, 0xd2, 0x73, 0x2f, 0xdb, 0xfb, 0x04,
 	0xa1, 0x43, 0x16, 0x2f, 0x1a, 0xac, 0x79, 0xd1, 0xd1, 0xef, 0x00, 0x76, 0xec, 0x01, 0x27, 0x44,
 	0xd1, 0x1c, 0x1f, 0xea, 0x92, 0x87, 0xf5, 0x1f, 0xed, 0x7f, 0x06, 0x77, 0x7c, 0x67, 0xe7, 0x33,
-	0xe4, 0x06, 0x60, 0xdb, 0xc1, 0xc7, 0x7e, 0x92, 0x16, 0xee, 0xba, 0xb9, 0xae, 0xa9, 0xaf, 0xe0,
-	0xde, 0xa5, 0x69, 0x08, 0x2f, 0x24, 0x25, 0x25, 0x19, 0x33, 0x5a, 0x28, 0xd3, 0x34, 0x44, 0x5e,
-	0xfb, 0x79, 0xd9, 0xc5, 0x6c, 0xee, 0x93, 0x67, 0x2e, 0x37, 0xfa, 0x13, 0x40, 0x77, 0x36, 0x16,
-	0xf1, 0x7b, 0xe8, 0x4f, 0x24, 0x25, 0x9a, 0x16, 0x76, 0x3e, 0xbc, 0x5d, 0x7b, 0xa9, 0xdb, 0x3d,
-	0xe9, 0x6c, 0xf7, 0xe0, 0x18, 0xe1, 0xee, 0xc9, 0xc1, 0xd1, 0x2d, 0x10, 0xbf, 0x05, 0x50, 0x9a,
-	0x48, 0xed, 0xb4, 0x1b, 0xb7, 0x6a, 0x7b, 0xc8, 0x46, 0xe9, 0x6b, 0xe8, 0x52, 0x5e, 0x3a, 0x61,
-	0xe7, 0x56, 0x61, 0x44, 0x79, 0x89, 0xb2, 0x23, 0x18, 0x90, 0x31, 0xe1, 0xa5, 0xe0, 0x4e, 0xba,
-	0x79, 0xab, 0xb4, 0xef, 0xf9, 0x16, 0x19, 0x3d, 0x82, 0xd0, 0xcd, 0xb4, 0x7d, 0x59, 0x57, 0x84,
-	0x19, 0xea, 0xbb, 0xea, 0x82, 0xd1, 0x3e, 0x44, 0xde, 0xe4, 0xe5, 0x84, 0xe3, 0x93, 0xef, 0x1f,
-	0x2b, 0x91, 0xe2, 0xaa, 0xaa, 0x4d, 0x93, 0x0a, 0x59, 0x65, 0xb3, 0x40, 0xa8, 0xac, 0xe6, 0x53,
-	0x49, 0xdc, 0xc2, 0xce, 0x2a, 0x91, 0xad, 0xd8, 0xff, 0xe3, 0x10, 0x19, 0x2f, 0xff, 0x05, 0x00,
-	0x00, 0xff, 0xff, 0x37, 0x4f, 0xfd, 0xdc, 0x21, 0x06, 0x00, 0x00,
+	0xd4, 0xc1, 0x19, 0xda, 0x76, 0xf0, 0xb1, 0x9f, 0xa4, 0x85, 0xbb, 0x6e, 0xae, 0x6b, 0xea, 0x2b,
+	0xb8, 0x77, 0x69, 0x1a, 0xc2, 0x0b, 0x49, 0x49, 0x49, 0xc6, 0x8c, 0x16, 0xca, 0x34, 0x0d, 0x91,
+	0xd7, 0x7e, 0x5e, 0x76, 0x31, 0x9b, 0xfb, 0xe4, 0x99, 0xcb, 0x8d, 0xfe, 0x04, 0xd0, 0x9d, 0x8d,
+	0x45, 0xfc, 0x1e, 0xfa, 0x13, 0x49, 0x89, 0xa6, 0x85, 0x9d, 0x0f, 0x6f, 0xd7, 0x5e, 0xea, 0x76,
+	0x4f, 0x3a, 0xdb, 0x3d, 0x38, 0x46, 0xb8, 0x7b, 0x72, 0x70, 0x74, 0x0b, 0xc4, 0x6f, 0x01, 0x94,
+	0x26, 0x52, 0x3b, 0xed, 0xc6, 0xad, 0xda, 0x1e, 0xb2, 0x51, 0xfa, 0x1a, 0xba, 0x94, 0x97, 0x4e,
+	0xd8, 0xb9, 0x55, 0x18, 0x51, 0x5e, 0xa2, 0xec, 0x08, 0x06, 0x64, 0x4c, 0x78, 0x29, 0xb8, 0x93,
+	0x6e, 0xde, 0x2a, 0xed, 0x7b, 0xbe, 0x45, 0x46, 0x8f, 0x20, 0x74, 0x33, 0x6d, 0x5f, 0xd6, 0x15,
+	0x61, 0x86, 0xfa, 0xae, 0xba, 0x60, 0xb4, 0x0f, 0x91, 0x37, 0x79, 0x39, 0xe1, 0xf8, 0xe4, 0xfb,
+	0xc7, 0x4a, 0xa4, 0xb8, 0xaa, 0x6a, 0xd3, 0xa4, 0x42, 0x56, 0xd9, 0x2c, 0x10, 0x2a, 0xab, 0xf9,
+	0x54, 0x12, 0xb7, 0xb0, 0xb3, 0x4a, 0x64, 0x2b, 0xf6, 0xff, 0x38, 0x44, 0xc6, 0xcb, 0x7f, 0x01,
+	0x00, 0x00, 0xff, 0xff, 0x7e, 0xcb, 0x0b, 0xbf, 0x21, 0x06, 0x00, 0x00,
 }
diff --git a/src/test_platform/analytics/result.proto b/src/test_platform/analytics/result.proto
index 712ca01..b90586f 100644
--- a/src/test_platform/analytics/result.proto
+++ b/src/test_platform/analytics/result.proto
@@ -104,7 +104,7 @@
   string display_name = 2;
 
   // The TestRun.build_id of the parent test run.
-  string parent_build_id = 3;
+  int64 parent_build_id = 3;
 
   Verdict verdict = 4;
 
