diff --git a/webgpu-cts/test_runner.js b/webgpu-cts/test_runner.js
index 9178d3e..fcc7086 100644
--- a/webgpu-cts/test_runner.js
+++ b/webgpu-cts/test_runner.js
@@ -238,7 +238,22 @@
     endHeartbeatScope();
 
     sendMessageTestStatus(res.status, res.timems);
-    sendMessageTestLog(res.logs);
+    if (res.status === 'pass') {
+      // Send an "OK" log. Passing tests don't report logs to Telemetry.
+      sendMessageTestLogOK();
+    } else {
+      // Log all the logs to the console so they are visible.
+      if (res.logs) {
+        // Log the query string first as logs from multiple browsers may be interleaved and prefixed
+        // with their process id. Logging the test name lets us see what process a test ran in.
+        console.log(`Logs from ${queryString}`);
+        for (const l of res.logs) {
+          console.log(l);
+        }
+      }
+      // Report non-INFO logs to the harness so they don't show up in the LUCI failure reason.
+      sendMessageTestLog((res.logs || []).filter(l => l.name !== 'INFO'));
+    }
     sendMessageTestFinished();
   };
   await wpt_fn();
@@ -284,8 +299,12 @@
   }));
 }
 
+function sendMessageTestLogOK() {
+  socket.send('{"type":"TEST_LOG","log":"OK"}');
+}
+
 function sendMessageTestLog(logs) {
-  splitLogsForPayload((logs ?? []).map(prettyPrintLog).join('\n\n'))
+  splitLogsForPayload(logs.map(prettyPrintLog).join('\n\n'))
     .forEach((piece) => {
       socket.send(JSON.stringify({
         'type': 'TEST_LOG',
