diff --git a/testing/tools/coverage/coverage_report.py b/testing/tools/coverage/coverage_report.py
index 2c57946..2f3ba99 100755
--- a/testing/tools/coverage/coverage_report.py
+++ b/testing/tools/coverage/coverage_report.py
@@ -102,9 +102,6 @@
           'use_clang_coverage does not appear to be set to true for build, but '
           'is needed')
 
-    self.use_goma = common.GetBooleanGnArg('use_goma', self.build_directory,
-                                           self.verbose)
-
     self.output_directory = args['output_directory']
     if not os.path.exists(self.output_directory):
       if not self.dry_run:
@@ -180,11 +177,7 @@
   def build_binaries(self):
     """Build all the binaries that are going to be needed for coverage
     generation."""
-    call_args = ['ninja']
-    if self.use_goma:
-      call_args += ['-j', '250']
-    call_args += ['-C', self.build_directory]
-    call_args += self.build_targets
+    call_args = ['autoninja', '-C', self.build_directory, self.build_targets]
     return self.call(call_args, dry_run=self.dry_run) == 0
 
   def generate_coverage(self, name, spec):
diff --git a/testing/tools/safetynet_compare.py b/testing/tools/safetynet_compare.py
index e1b5c85..85f5f7f 100755
--- a/testing/tools/safetynet_compare.py
+++ b/testing/tools/safetynet_compare.py
@@ -386,9 +386,7 @@
     PrintErr('Done.')
 
     PrintErr('Building...')
-    cmd = ['ninja', '-C', build_dir, 'pdfium_test']
-    if GetBooleanGnArg('use_goma', build_dir):
-      cmd.extend(['-j', '250'])
+    cmd = ['autoninja', '-C', build_dir, 'pdfium_test']
     RunCommandPropagateErr(cmd, stdout_has_errors=True, exit_status_on_error=1)
     PrintErr('Done.')
 
