diff --git a/src/contactmodel.cpp b/src/contactmodel.cpp
index 846077bd1df90fd1a89f81c0d89130284b6d3b72..966ecfb62fb741a065aab95b6f22c546989268d0 100644
--- a/src/contactmodel.cpp
+++ b/src/contactmodel.cpp
@@ -118,6 +118,7 @@ public:
     QString searchQuery;
     std::mutex contactsMtx_;
     std::mutex bannedContactsMtx_;
+    QString searchStatus_ {};
 
 public Q_SLOTS:
     /**
@@ -423,7 +424,10 @@ ContactModel::searchContact(const QString& query)
 void
 ContactModelPimpl::updateTemporaryMessage(const QString& mes)
 {
-    linked.owner.conversationModel->updateSearchStatus(mes);
+    if (searchStatus_ != mes) {
+        searchStatus_ = mes;
+        linked.owner.conversationModel->updateSearchStatus(mes);
+    }
 }
 
 void