diff --git a/binarycpython/utils/grid.py b/binarycpython/utils/grid.py
index 246a9853cb875e6630ccc9a7bf3085bbbc16de0d..fda9f533b86b3a7fda6d654cbf555d879cb73962 100644
--- a/binarycpython/utils/grid.py
+++ b/binarycpython/utils/grid.py
@@ -4774,7 +4774,9 @@ eccentricity3=0
         eta, units, tpr, eta_secs = trem(
             dt, system_number, dn, self.grid_options["_total_starcount"]
         )
-        tpr *= self.grid_options['num_cores']
+
+        # compensate for multithreading and modulo
+        tpr *= self.grid_options['num_cores'] * self.grid_options['modulo']
 
         if eta_secs < secs_per_day:
             fintime = time.localtime(now + eta_secs)