diff --git a/src/Cache.cpp b/src/Cache.cpp
index d009c0d38ae0d7f46d586b27ead5c5a364b8c457..84e2ddc2aaf1fc16b9c4d1cc8f23c94fd8e0afea 100644
--- a/src/Cache.cpp
+++ b/src/Cache.cpp
@@ -1572,7 +1572,6 @@ Cache::saveState(const mtx::responses::Sync &res)
         savePresence(txn, res.presence);
 
         markUserKeysOutOfDate(txn, userKeyCacheDb, res.device_lists.changed, currentBatchToken);
-        deleteUserKeys(txn, userKeyCacheDb, res.device_lists.left);
 
         removeLeftRooms(txn, res.rooms.leave);
 
@@ -4124,13 +4123,6 @@ Cache::updateUserKeys(const std::string &sync_token, const mtx::responses::Query
         }
 }
 
-void
-Cache::deleteUserKeys(lmdb::txn &txn, lmdb::dbi &db, const std::vector<std::string> &user_ids)
-{
-        for (const auto &user_id : user_ids)
-                db.del(txn, user_id);
-}
-
 void
 Cache::markUserKeysOutOfDate(lmdb::txn &txn,
                              lmdb::dbi &db,
diff --git a/src/Cache_p.h b/src/Cache_p.h
index 6190413fb44ff80203c785a8445b8f05aa0b3997..7780c80f681a549c8e331908062c40c1c723f1b3 100644
--- a/src/Cache_p.h
+++ b/src/Cache_p.h
@@ -55,9 +55,6 @@ public:
                                    lmdb::dbi &db,
                                    const std::vector<std::string> &user_ids,
                                    const std::string &sync_token);
-        void deleteUserKeys(lmdb::txn &txn,
-                            lmdb::dbi &db,
-                            const std::vector<std::string> &user_ids);
         void query_keys(const std::string &user_id,
                         std::function<void(const UserKeyCache &, mtx::http::RequestErr)> cb);