diff --git a/lib/reducers/user-reducer.js b/lib/reducers/user-reducer.js
--- a/lib/reducers/user-reducer.js
+++ b/lib/reducers/user-reducer.js
@@ -23,6 +23,7 @@
   setUserSettingsActionTypes,
   updateUserAvatarActionTypes,
 } from '../actions/user-actions.js';
+import bots from '../facts/bots.js';
 import { extractKeyserverIDFromID } from '../keyserver-conn/keyserver-call-utils.js';
 import { setNewSessionActionType } from '../keyserver-conn/keyserver-conn-types.js';
 import {
@@ -224,6 +225,33 @@
     .flat();
 }
 
+function discardKeyserverUsernames(
+  newUserInfos: UserInfos,
+  stateUserInfos: UserInfos,
+): UserInfos {
+  let result: UserInfos = {};
+  for (const id in newUserInfos) {
+    if (id === bots.commbot.userID) {
+      result = {
+        ...result,
+        [id]: {
+          ...newUserInfos[id],
+        },
+      };
+    } else {
+      const username = stateUserInfos[id] ? stateUserInfos[id].username : null;
+      result = {
+        ...result,
+        [id]: {
+          ...newUserInfos[id],
+          username,
+        },
+      };
+    }
+  }
+  return result;
+}
+
 type ReduceUserInfosResult = [
   UserStore,
   $ReadOnlyArray<ClientUserInconsistencyReportCreationRequest>,
@@ -314,10 +342,15 @@
     if (keyserverID !== authoritativeKeyserverID()) {
       return [state, [], []];
     }
-    const newUserInfos: UserInfos = _keyBy(userInfo => userInfo.id)(
+    const keyserverUserInfos: UserInfos = _keyBy(userInfo => userInfo.id)(
       action.payload.userInfos,
     );
 
+    const newUserInfos = discardKeyserverUsernames(
+      keyserverUserInfos,
+      state.userInfos,
+    );
+
     const userStoreOps: $ReadOnlyArray<UserStoreOperation> =
       convertUserInfosToReplaceUserOps(newUserInfos);
     const processedUserInfos: UserInfos = processUserStoreOps(