diff --git a/docs/changes.txt b/docs/changes.txt
index 9a0eaa984..c105633ac 100644
--- a/docs/changes.txt
+++ b/docs/changes.txt
@@ -58,6 +58,7 @@
 - Metal Runtime: added support for vectors up to 4
 - OpenCL Backend: added workaround to make optimized kernels work on Apple Silicon
 - OpenCL Backend: moved functions to ext_OpenCL.c and includes to ext_OpenCL.h
+- OpenCL Backend: show device_type in device list info on Apple Silicon
 - OpenCL Kernel: Set native_threads to 32 on Apple GPU's for various hash-modes
 - OpenCL Runtime: Added support to use Apple Silicon compute devices
 - OpenCL Runtime: Add some unstable warnings detected on macOS
diff --git a/src/terminal.c b/src/terminal.c
index aab94cc84..e95268f85 100644
--- a/src/terminal.c
+++ b/src/terminal.c
@@ -1388,13 +1388,31 @@ void backend_info_compact (hashcat_ctx_t *hashcat_ctx)
 
         if ((device_param->skipped == false) && (device_param->skipped_warning == false))
         {
-          event_log_info (hashcat_ctx, "* Device #%u: %s, %" PRIu64 "/%" PRIu64 " MB (%" PRIu64 " MB allocatable), %uMCU",
-                    device_id + 1,
-                    device_name,
-                    device_available_mem / 1024 / 1024,
-                    device_global_mem    / 1024 / 1024,
-                    device_maxmem_alloc  / 1024 / 1024,
-                    device_processors);
+          if (strncmp (device_name, "Apple M", 7) == 0)
+          {
+            cl_device_type opencl_device_type = device_param->opencl_device_type;
+
+            const char *device_type_desc = ((opencl_device_type & CL_DEVICE_TYPE_CPU) ? "CPU" : ((opencl_device_type & CL_DEVICE_TYPE_GPU) ? "GPU" : "Accelerator"));
+
+            event_log_info (hashcat_ctx, "* Device #%u: %s, %s, %" PRIu64 "/%" PRIu64 " MB (%" PRIu64 " MB allocatable), %uMCU",
+                      device_id + 1,
+                      device_name,
+                      device_type_desc,
+                      device_available_mem / 1024 / 1024,
+                      device_global_mem    / 1024 / 1024,
+                      device_maxmem_alloc  / 1024 / 1024,
+                      device_processors);
+          }
+          else
+          {
+            event_log_info (hashcat_ctx, "* Device #%u: %s, %" PRIu64 "/%" PRIu64 " MB (%" PRIu64 " MB allocatable), %uMCU",
+                      device_id + 1,
+                      device_name,
+                      device_available_mem / 1024 / 1024,
+                      device_global_mem    / 1024 / 1024,
+                      device_maxmem_alloc  / 1024 / 1024,
+                      device_processors);
+          }
         }
         else
         {