diff --git a/DDG4/edm4hep/Geant4Output2EDM4hep.cpp b/DDG4/edm4hep/Geant4Output2EDM4hep.cpp
index 15c2bd8383ed74117b6be6ed26860ef736c26751..554937cbce87dbb57c5ed495a4909ee51b4b0289 100644
--- a/DDG4/edm4hep/Geant4Output2EDM4hep.cpp
+++ b/DDG4/edm4hep/Geant4Output2EDM4hep.cpp
@@ -355,6 +355,7 @@ void Geant4Output2EDM4hep::saveParticles(Geant4ParticleMap* particles)    {
         int iqdau = (*k).second;
         auto qdau = (*mcpc)[iqdau];
         qdau.addToParents(q);
+        q.addToDaughters(qdau);
       }
 
       for (const auto& ipar : p->parents) {
@@ -367,6 +368,7 @@ void Geant4Output2EDM4hep::saveParticles(Geant4ParticleMap* particles)    {
           int iqpar = (*k).second;
           auto qpar = (*mcpc)[iqpar];
           q.addToParents(qpar);
+          qpar.addToDaughters(q);
         }
       }
     }