diff --git a/changelog.d/11623.bugfix b/changelog.d/11623.bugfix
new file mode 100644
index 0000000000000000000000000000000000000000..4116e5dd7c7bf52d8ef93ddc4229986774ce9b4e
--- /dev/null
+++ b/changelog.d/11623.bugfix
@@ -0,0 +1 @@
+Fix a long-standing bug where responses included bundled aggregations when they should not, per [MSC2675](https://github.com/matrix-org/matrix-doc/pull/2675).
diff --git a/synapse/handlers/message.py b/synapse/handlers/message.py
index 1a7190085a7d86b8436b6260529a1472010ffb8e..5e3d3886eb1d1c0d6ea48301a45750989a6f4adc 100644
--- a/synapse/handlers/message.py
+++ b/synapse/handlers/message.py
@@ -246,9 +246,7 @@ class MessageHandler:
                 room_state = room_state_events[membership_event_id]
 
         now = self.clock.time_msec()
-        events = await self._event_serializer.serialize_events(
-            room_state.values(), now, bundle_aggregations=True
-        )
+        events = await self._event_serializer.serialize_events(room_state.values(), now)
         return events
 
     async def get_joined_members(self, requester: Requester, room_id: str) -> dict: