diff --git a/JugBase/src/components/MC2DummyParticle.cpp b/JugBase/src/components/MC2DummyParticle.cpp
index 720879c51542ef5423f2d38e461e5a8bb19c18c2..e1604a607105a895ecf9c73415b2fac009329ada 100644
--- a/JugBase/src/components/MC2DummyParticle.cpp
+++ b/JugBase/src/components/MC2DummyParticle.cpp
@@ -57,7 +57,8 @@ namespace Jug::Base {
         auto relations = m_outputRelCollection.createAndPut();
         int ID = 0;
         for (const auto& p : *parts) {
-          if (p.genStatus() != 1) {
+          if (p.genStatus() > 1) {
+            debug() << "ignoring particle with genStatus = " << p.genStatus() << endmsg;
             continue;
           }
 
diff --git a/JugReco/src/components/DummyFarForwardParticles.cpp b/JugReco/src/components/DummyFarForwardParticles.cpp
index 15da559226f37537b9601b56a8fb1a19f6c6469a..37b1766feffec890042040133e0076f74b454ab7 100644
--- a/JugReco/src/components/DummyFarForwardParticles.cpp
+++ b/JugReco/src/components/DummyFarForwardParticles.cpp
@@ -118,7 +118,8 @@ private:
   std::vector<RecData> zdc(const dd4pod::Geant4ParticleCollection& mc) {
     std::vector<RecData> rc;
     for (const auto& part : mc) {
-      if (part.genStatus() != 1) {
+      if (part.genStatus() > 1) {
+        debug() << "ignoring particle with genStatus = " << part.genStatus() << endmsg;
         continue;
       }
       // only detect neutrons and photons
diff --git a/JugReco/src/components/ParticlesWithTruthPID.cpp b/JugReco/src/components/ParticlesWithTruthPID.cpp
index 1ca09520803b5bf5ededfb1391d48d4e76b0a589..ef7b7e65a8b106e2bab57a4d8f7928dcdfee7541 100644
--- a/JugReco/src/components/ParticlesWithTruthPID.cpp
+++ b/JugReco/src/components/ParticlesWithTruthPID.cpp
@@ -73,7 +73,8 @@ public:
       double best_delta = std::numeric_limits<double>::max();
       for (size_t ip = 0; ip < mc.size(); ++ip) {
         const auto& mcpart = mc[ip];
-        if (consumed[ip] || mcpart.genStatus() != 1 || mcpart.charge() == 0 || mcpart.charge() * charge_rec < 0) {
+        if (consumed[ip] || mcpart.genStatus() > 1 || mcpart.charge() == 0 || mcpart.charge() * charge_rec < 0) {
+          debug() << "ignoring non-primary/neutral/opposite charge particle" << endmsg;
           continue;
         }
         const double dp_rel = std::abs((mom.mag() - mcpart.ps().mag()) / mcpart.ps().mag());
diff --git a/JugTrack/src/components/TrackParamTruthInit.cpp b/JugTrack/src/components/TrackParamTruthInit.cpp
index 47fc783cc912b5a02e616498a740071c5d315c6d..78ab7ccb14504068dc5608edbb8af7b4c97499db 100644
--- a/JugTrack/src/components/TrackParamTruthInit.cpp
+++ b/JugTrack/src/components/TrackParamTruthInit.cpp
@@ -82,7 +82,8 @@ namespace Jug::Reco {
       for(const auto& part : *mcparts) {
 
         // genStatus = 1 means thrown G4Primary 
-        if(part.genStatus() != 1 ) {
+        if (part.genStatus() > 1 ) {
+          debug() << "ignoring particle with genStatus = " << part.genStatus() << endmsg;
           continue;
         }
         using Acts::UnitConstants::GeV;