diff --git a/src/stores/room-list/RoomListStore.ts b/src/stores/room-list/RoomListStore.ts
index e045166e7c9..470c2b685fe 100644
--- a/src/stores/room-list/RoomListStore.ts
+++ b/src/stores/room-list/RoomListStore.ts
@@ -387,8 +387,6 @@ export class RoomListStoreClass extends AsyncStoreWithClient<IState> implements
 
     // logic must match calculateListOrder
     private calculateTagSorting(tagId: TagID): SortAlgorithm {
-        const isDefaultRecent = tagId === DefaultTagID.Invite || tagId === DefaultTagID.DM;
-        const defaultSort = isDefaultRecent ? SortAlgorithm.Recent : SortAlgorithm.Alphabetic;
         const settingAlphabetical = SettingsStore.getValue("RoomList.orderAlphabetically", null, true);
         const definedSort = this.getTagSorting(tagId);
         const storedSort = this.getStoredTagSorting(tagId);
@@ -396,7 +394,7 @@ export class RoomListStoreClass extends AsyncStoreWithClient<IState> implements
         // We use the following order to determine which of the 4 flags to use:
         // Stored > Settings > Defined > Default
 
-        let tagSort = defaultSort;
+        let tagSort = SortAlgorithm.Recent;
         if (storedSort) {
             tagSort = storedSort;
         } else if (!isNullOrUndefined(settingAlphabetical)) {
@@ -431,7 +429,7 @@ export class RoomListStoreClass extends AsyncStoreWithClient<IState> implements
 
     // logic must match calculateTagSorting
     private calculateListOrder(tagId: TagID): ListAlgorithm {
-        const defaultOrder = ListAlgorithm.Natural;
+        const defaultOrder = ListAlgorithm.Importance;
         const settingImportance = SettingsStore.getValue("RoomList.orderByImportance", null, true);
         const definedOrder = this.getListOrder(tagId);
         const storedOrder = this.getStoredListOrder(tagId);
diff --git a/test/stores/room-list/RoomListStore-test.ts b/test/stores/room-list/RoomListStore-test.ts
new file mode 100644
index 00000000000..04b99a80357
--- /dev/null
+++ b/test/stores/room-list/RoomListStore-test.ts
@@ -0,0 +1,35 @@
+/*
+Copyright 2022 The Matrix.org Foundation C.I.C.
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*/
+
+import { ListAlgorithm, SortAlgorithm } from "../../../src/stores/room-list/algorithms/models";
+import { OrderedDefaultTagIDs } from "../../../src/stores/room-list/models";
+import RoomListStore, { RoomListStoreClass } from "../../../src/stores/room-list/RoomListStore";
+import { stubClient } from "../../test-utils";
+
+describe("RoomListStore", () => {
+    beforeAll(async () => {
+        const client = stubClient();
+        await (RoomListStore.instance as RoomListStoreClass).makeReady(client);
+    });
+
+    it.each(OrderedDefaultTagIDs)("defaults to importance ordering for %s=", (tagId) => {
+        expect(RoomListStore.instance.getTagSorting(tagId)).toBe(SortAlgorithm.Recent);
+    });
+
+    it.each(OrderedDefaultTagIDs)("defaults to activity ordering for %s=", (tagId) => {
+        expect(RoomListStore.instance.getListOrder(tagId)).toBe(ListAlgorithm.Importance);
+    });
+});