diff --git a/Phys/FunTuple/src/FunTuple.cpp b/Phys/FunTuple/src/FunTuple.cpp
index af62ccadbab6790348be0c357bf017f5e2b7c69e..7396066151c8e2fd7bb853f9f7b1d5c6b568d84b 100755
--- a/Phys/FunTuple/src/FunTuple.cpp
+++ b/Phys/FunTuple/src/FunTuple.cpp
@@ -650,6 +650,11 @@ StatusCode FunTupleBase<T>::parse_decay_descriptors() {
   // loop over fields
   for ( unsigned int nfield = 0; nfield < m_particletupleprops.size(); nfield++ ) {
     ParticleTupleProp ptp = m_particletupleprops[nfield];
+
+    //print only for the first field, as the rest of field will have the same decay descriptors
+    if (nfield == 0)
+      this->info() << "User specified descriptor: " << ptp.DecayDescriptor() << endmsg;
+
     if ( m_use_loki_decay_finder ) {
       auto decayTree = m_decaytool_loki->tree( ptp.DecayDescriptor() );
       if ( !decayTree )
@@ -662,10 +667,18 @@ StatusCode FunTupleBase<T>::parse_decay_descriptors() {
                               StatusCode::FAILURE );
 
       auto tree_possibilities = m_decay_finder->getTreePossibilities( ptp.DecayDescriptor() );
+
       if ( tree_possibilities.empty() )
         throw GaudiException( "Error parsing the decay descriptor: " + ptp.DecayDescriptor(), "parse_decay_descriptors",
                               StatusCode::FAILURE );
       m_parsed_descriptor.push_back( tree_possibilities );
+
+      //print the tree possibilities only for the first field as the rest of the fields will have the same tree
+      if (nfield == 0) {
+        this->info() << "Number of decay possibilities with specified descriptor: " << tree_possibilities.size() << endmsg;
+        for (unsigned int i = 0; i < tree_possibilities.size(); ++i)
+          this->info() << "Possibility #" << i << ": " << tree_possibilities[i] << endmsg;
+      }
     }
   }
   return StatusCode::SUCCESS;