diff --git a/src/runner_doiact_grav.h b/src/runner_doiact_grav.h
index b795270b2e44ec4c063a777d4b9bb514479dbaea..9e03e6989bd9b6275d03b046c707fb11d06a0fa3 100644
--- a/src/runner_doiact_grav.h
+++ b/src/runner_doiact_grav.h
@@ -234,7 +234,7 @@ static INLINE void runner_dopair_grav_pp_full(const struct engine *e,
       const float r2 = dx * dx + dy * dy + dz * dz;
 
 #ifdef SWIFT_DEBUG_CHECKS
-      if (r2 == 0.f && h_i == 0.)
+      if (r2 == 0.f && h2_i == 0.)
         error("Interacting particles with 0 distance and 0 softening.");
 
       /* Check that particles have been drifted to the current time */
@@ -329,7 +329,8 @@ static INLINE void runner_dopair_grav_pp_truncated(
       const float r2 = dx * dx + dy * dy + dz * dz;
 
 #ifdef SWIFT_DEBUG_CHECKS
-      if (r2 == 0.f) error("Interacting particles with 0 distance");
+      if (r2 == 0.f && h2_i == 0.)
+        error("Interacting particles with 0 distance and 0 softening.");
 
       /* Check that particles have been drifted to the current time */
       if (gparts_i[pid].ti_drift != e->ti_current)
@@ -724,7 +725,8 @@ static INLINE void runner_doself_grav_pp_full(struct runner *r,
       const float r2 = dx * dx + dy * dy + dz * dz;
 
 #ifdef SWIFT_DEBUG_CHECKS
-      if (r2 == 0.f) error("Interacting particles with 0 distance");
+      if (r2 == 0.f && h2_i == 0.)
+        error("Interacting particles with 0 distance and 0 softening.");
 
       /* Check that particles have been drifted to the current time */
       if (gparts[pid].ti_drift != e->ti_current)
@@ -854,7 +856,8 @@ static INLINE void runner_doself_grav_pp_truncated(struct runner *r,
       const float r2 = dx * dx + dy * dy + dz * dz;
 
 #ifdef SWIFT_DEBUG_CHECKS
-      if (r2 == 0.f) error("Interacting particles with 0 distance");
+      if (r2 == 0.f && h2_i == 0.)
+        error("Interacting particles with 0 distance and 0 softening.");
 
       /* Check that particles have been drifted to the current time */
       if (gparts[pid].ti_drift != e->ti_current)