diff --git a/src/libclient/authority/storagehelper.cpp b/src/libclient/authority/storagehelper.cpp
index 395dc77c75c939cad4abfb32667ef7e8b40bce9a..758e630f70372c9799213cb877e58f90b2977de3 100644
--- a/src/libclient/authority/storagehelper.cpp
+++ b/src/libclient/authority/storagehelper.cpp
@@ -206,8 +206,6 @@ getContactInteractionString(const QString& authorUri, const api::interaction::St
 }
 
 namespace vcard {
-QString compressedAvatar(const QString& image);
-
 QString
 compressedAvatar(const QString& image)
 {
diff --git a/src/libclient/authority/storagehelper.h b/src/libclient/authority/storagehelper.h
index a5060fd5cd71cd26eb59dd9a862f9b3b84097602..2dc68a3150f9a7c75a64f3e0f3c5fa53e7f7593c 100644
--- a/src/libclient/authority/storagehelper.h
+++ b/src/libclient/authority/storagehelper.h
@@ -73,6 +73,8 @@ QString getContactInteractionString(const QString& authorUri,
 
 namespace vcard {
 
+QString compressedAvatar(const QString& image);
+
 /**
  * Build the vCard for a profile
  * @param profileInfo
diff --git a/src/libclient/conversationmodel.cpp b/src/libclient/conversationmodel.cpp
index d3a79ddad77743f07fc2e098b84d2934e39f0e38..1cacfaf7ec239d25c5dd82febc0d092d7d811cdb 100644
--- a/src/libclient/conversationmodel.cpp
+++ b/src/libclient/conversationmodel.cpp
@@ -986,7 +986,11 @@ ConversationModel::createConversation(const VectorString& participants, const Ma
 void
 ConversationModel::updateConversationInfos(const QString& conversationId, const MapStringString info)
 {
-    ConfigurationManager::instance().updateConversationInfos(owner.id, conversationId, info);
+    MapStringString newInfos = info;
+    // Compress avatar as it will be sent in the conversation's request over the DHT
+    if (info.contains("avatar"))
+        newInfos["avatar"] = storage::vcard::compressedAvatar(info["avatar"]);
+    ConfigurationManager::instance().updateConversationInfos(owner.id, conversationId, newInfos);
 }
 
 bool