diff --git a/drivers/include/mrf24j40.h b/drivers/include/mrf24j40.h
index 740d6afcf9d3356adea050756b196a9c0ce86cae..cb7fe79e1598bf25545efd9f7cd2607ccbe6048a 100644
--- a/drivers/include/mrf24j40.h
+++ b/drivers/include/mrf24j40.h
@@ -139,6 +139,7 @@ typedef struct {
     uint8_t header_len;                     /**< length of the header */
     uint8_t pending;                        /**< Flags for pending tasks */
     uint8_t irq_flag;                       /**< Flags for IRQs */
+    uint8_t tx_retries;                     /**< Number of retries needed for last transmission */
 } mrf24j40_t;
 
 /**
diff --git a/drivers/mrf24j40/include/mrf24j40_registers.h b/drivers/mrf24j40/include/mrf24j40_registers.h
index da21295ebd1b7c2e468f3f3e11da173a326bacd2..cc5d3c6828a181ac935e5c815d695ef4a8576503 100644
--- a/drivers/mrf24j40/include/mrf24j40_registers.h
+++ b/drivers/mrf24j40/include/mrf24j40_registers.h
@@ -267,6 +267,14 @@ extern "C" {
 #define MRF24J40_TXSTAT_TXNSTAT                 (0x01)
 /** @} */
 
+/**
+ * @name    Shift offsets for TXSTAT register (0x24)
+ * @{
+ */
+#define MRF24J40_TXSTAT_MAX_FRAME_RETRIES_SHIFT (6U)
+#define MRF24J40_TXSTAT_CCAFAIL_SHIFT           (5U)
+/** @} */
+
 /**
  * @name    Bitfield definitions for the SOFTRST register (0x2A)
  * @{
diff --git a/drivers/mrf24j40/mrf24j40_netdev.c b/drivers/mrf24j40/mrf24j40_netdev.c
index a910599e27b2ebbf5f11ca4a831ae17e486af4a6..29b9abbebe47f634dc71e931e9152c22688ac6aa 100644
--- a/drivers/mrf24j40/mrf24j40_netdev.c
+++ b/drivers/mrf24j40/mrf24j40_netdev.c
@@ -319,6 +319,15 @@ static int _get(netdev_t *netdev, netopt_t opt, void *val, size_t max_len)
                 res = sizeof(int8_t);
             }
             break;
+        case NETOPT_TX_RETRIES_NEEDED:
+            if (max_len < sizeof(uint8_t)) {
+                res = -EOVERFLOW;
+            }
+            else {
+                *((uint8_t *)val) = dev->tx_retries;
+                res = sizeof(int8_t);
+            }
+            break;
 
         default:
             /* try netdev settings */
@@ -538,6 +547,7 @@ static void _isr(netdev_t *netdev)
 #ifdef MODULE_NETSTATS_L2
         if (netdev->event_callback && (dev->netdev.flags & MRF24J40_OPT_TELL_TX_END)) {
             uint8_t txstat = mrf24j40_reg_read_short(dev, MRF24J40_REG_TXSTAT);
+            dev->tx_retries = (txstat >> MRF24J40_TXSTAT_MAX_FRAME_RETRIES_SHIFT);
             /* transmision failed */
             if (txstat & MRF24J40_TXSTAT_TXNSTAT) {
                 /* TX_NOACK - CCAFAIL */