diff --git a/src/app/conversationsadapter.cpp b/src/app/conversationsadapter.cpp
index 45cb5fda58ef5e4659bd4c7c4a611a8f7425d824..857ed5ee1b250020136f2c7260995c78f39e3648 100644
--- a/src/app/conversationsadapter.cpp
+++ b/src/app/conversationsadapter.cpp
@@ -684,8 +684,12 @@ ConversationsAdapter::createSwarm(const QString& title,
                                   const VectorString& participants)
 {
     auto convModel = lrcInstance_->getCurrentConversationModel();
-    return convModel->createConversation(participants,
-                                         {{"title", title},
-                                          {"description", description},
-                                          {"avatar", avatar}});
+    MapStringString details;
+    if (!title.isEmpty())
+        details["title"] = title;
+    if (!description.isEmpty())
+        details["description"] = description;
+    if (!avatar.isEmpty())
+        details["avatar"] = avatar;
+    return convModel->createConversation(participants, details);
 }