diff --git a/test/cpp/interop/stress_test.cc b/test/cpp/interop/stress_test.cc
index 2d84c0d103ccdf4dee34d384680f0c63b8642b50..fffa3dd3de7499215af868cba57819d3889a8dc5 100644
--- a/test/cpp/interop/stress_test.cc
+++ b/test/cpp/interop/stress_test.cc
@@ -236,7 +236,8 @@ int main(int argc, char** argv) {
           FLAGS_sleep_duration_ms, FLAGS_metrics_collection_interval_secs);
 
       bool is_already_created;
-      grpc::string metricName = "/stress_test/qps/thread/" + std::to_string(i);
+      grpc::string metricName =
+          "/stress_test/qps/thread/" + std::to_string(thread_idx);
       test_threads.emplace_back(
           thread(&StressTestInteropClient::MainLoop, client,
                  metrics_service.CreateGauge(metricName, is_already_created)));