diff --git a/src/cell.c b/src/cell.c
index f8722eccc55f662ef20d7762292b9798c5e0a157..f95c802e5fe7385728b9f9880bb9ee2cacba9a9e 100644
--- a/src/cell.c
+++ b/src/cell.c
@@ -1600,6 +1600,8 @@ void cell_reset_task_counters(struct cell *c) {
 #ifdef SWIFT_DEBUG_CHECKS
   for (int t = 0; t < task_type_count; ++t) c->tasks_executed[t] = 0;
   for (int t = 0; t < task_subtype_count; ++t) c->subtasks_executed[t] = 0;
+  for (int k = 0; k < 8; ++k)
+    if (c->progeny[k] != NULL) cell_reset_task_counters(c->progeny[k]);
 #else
   error("Calling debugging code without debugging flag activated.");
 #endif