diff --git a/benchmarks/tracking/run_tracking_benchmarks.py b/benchmarks/tracking/run_tracking_benchmarks.py
index b0576b1fbfc523a47eaec530d824394869c4d3c1..cc65ad6339fd19e8c90d354622c8f27fbe409f54 100755
--- a/benchmarks/tracking/run_tracking_benchmarks.py
+++ b/benchmarks/tracking/run_tracking_benchmarks.py
@@ -67,7 +67,7 @@ if 'sim' in procs:
     if args.seed > 0:
         sim_cmd += ['--random.seed', args.seed]
     return_code = subprocess.run(sim_cmd).returncode
-    if return_code is not None and return_code < 0:
+    if return_code is not None and return_code != 0:
         print("ERROR running simulation!")
         exit(1)
     subprocess.run(['rootls', '-t', sim_file])
@@ -84,7 +84,7 @@ if 'rec' in procs:
 
     rec_cmd = ['xenv', '-x', juggler_xenv, 'gaudirun.py', os.path.join(sdir, 'options', option_script)]
     return_code = subprocess.run(rec_cmd).returncode
-    if return_code is not None and return_code < 0:
+    if return_code is not None and return_code != 0:
         print('ERROR running juggler ({})!'.format(opt))
         exit(1)
     process = subprocess.run(['rootls', '-t', rec_file])
@@ -97,7 +97,7 @@ if 'ana' in procs:
                '--tracking-collection', 'outputTrackParameters',
                '-o', 'results', '-t', args.nametag]
     return_code = subprocess.run(ana_cmd).returncode
-    if return_code is not None and return_code < 0:
+    if return_code is not None and return_code != 0:
         print('ERROR running analysis ({})!'.format(ana))
         exit(1)