diff --git a/src/scheduler/Scheduler.cpp b/src/scheduler/Scheduler.cpp
index 58c23f7087bd5b4a65913e49ddd279868d8114cf..26bb357e78c99a2119c4a35d28d734f5aa8e07d2 100644
--- a/src/scheduler/Scheduler.cpp
+++ b/src/scheduler/Scheduler.cpp
@@ -945,8 +945,14 @@ void Aidge::Scheduler::saveStaticSchedulingDiagram(const std::string& fileName)
                 // Mermaid does not allow : character in task title
                 std::replace(name.begin(), name.end(), ':', '_');
 
-                fmt::print(fp.get(), "{} :{}, {}\n",
-                            name, element->early, element->late);
+                if (element->early == element->late) {
+                    fmt::print(fp.get(), "{} :milestone, {}, {}\n",
+                                name, element->early, element->late);
+                }
+                else {
+                    fmt::print(fp.get(), "{} :{}, {}\n",
+                                name, element->early, element->late);
+                }
             }
         }
     }
@@ -985,8 +991,14 @@ void Aidge::Scheduler::saveFactorizedStaticSchedulingDiagram(const std::string&
                     // Mermaid does not allow : character in task title
                     std::replace(name.begin(), name.end(), ':', '_');
 
-                    fmt::print(fp.get(), "{} :{}, {}\n",
-                                name, element->early, element->late);
+                    if (element->early == element->late) {
+                        fmt::print(fp.get(), "{} :milestone, {}, {}\n",
+                                    name, element->early, element->late);
+                    }
+                    else {
+                        fmt::print(fp.get(), "{} :{}, {}\n",
+                                    name, element->early, element->late);
+                    }
                 }
                 ++seq;
             }