diff --git a/app/src/main/java/de/kuschku/quasseldroid/service/QuasselService.kt b/app/src/main/java/de/kuschku/quasseldroid/service/QuasselService.kt
index 81973c6e924edb844a04cfa0f05fa5036e4ae154..73ede25fbd303f92edd2d09eadb5dab89406abe5 100644
--- a/app/src/main/java/de/kuschku/quasseldroid/service/QuasselService.kt
+++ b/app/src/main/java/de/kuschku/quasseldroid/service/QuasselService.kt
@@ -248,6 +248,9 @@ class QuasselService : LifecycleService(),
     )
 
     sessionManager.connectionProgress.toLiveData().observe(this, Observer {
+      if (this.progress.first != it?.first && it?.first == ConnectionState.CONNECTED) {
+        database.message().clearMessages()
+      }
       this.progress = it ?: Triple(ConnectionState.DISCONNECTED, 0, 0)
       val handle = this.notificationHandle
       if (handle != null) {