diff --git a/openair1/PHY/NR_UE_TRANSPORT/nr_dlsch_decoding.c b/openair1/PHY/NR_UE_TRANSPORT/nr_dlsch_decoding.c
index 9a9f4c85bc8862a38c20dbb9f822aabf1387af22..588022583115e909897867c9979174950eb6b2d8 100644
--- a/openair1/PHY/NR_UE_TRANSPORT/nr_dlsch_decoding.c
+++ b/openair1/PHY/NR_UE_TRANSPORT/nr_dlsch_decoding.c
@@ -360,6 +360,9 @@ uint32_t nr_dlsch_decoding(PHY_VARS_NR_UE *phy_vars_ue,
   }
   t_nrLDPC_procBuf** p_nrLDPC_procBuf = harq_process->p_nrLDPC_procBuf;
 
+  // Fix for harq round when pucch fails
+  harq_process->round = nr_rv_round_map_ue[harq_process->rvidx];
+
   // HARQ stats
   phy_vars_ue->dl_stats[harq_process->round]++;
     
@@ -431,8 +434,6 @@ uint32_t nr_dlsch_decoding(PHY_VARS_NR_UE *phy_vars_ue,
 
   nb_rb = harq_process->nb_rb;
 
-  // Fix for harq round when pucch fails
-  harq_process->round = nr_rv_round_map_ue[harq_process->rvidx];
 
   harq_process->trials[harq_process->round]++;