diff --git a/src/utils/checkpointing/Checkpoint.cpp b/src/utils/checkpointing/Checkpoint.cpp
index 15c5f1bb242e298762bc492a1a840ed39d729232..2de99e48ee43fa2f5970ffedffd9f6e06886d72a 100644
--- a/src/utils/checkpointing/Checkpoint.cpp
+++ b/src/utils/checkpointing/Checkpoint.cpp
@@ -109,6 +109,8 @@ checkpoint()
                                 (is_tiny_vector_v<value_type>) or (is_tiny_matrix_v<value_type>)) {
                     symbol_table_group.createAttribute(symbol.name(), data);
                   } else if constexpr (std::is_same_v<value_type, EmbeddedData>) {
+                    symbol_table_group.createGroup("embedded/" + symbol.name())
+                      .createAttribute("type", dataTypeName(symbol.attributes().dataType()));
                     for (size_t i = 0; i < data.size(); ++i) {
                       CheckpointResumeRepository::instance().checkpoint(symbol.attributes().dataType().contentType(),
                                                                         symbol.name() + "/" + std::to_string(i),