diff --git a/changelog.d/11836.misc b/changelog.d/11836.misc
new file mode 100644
index 0000000000000000000000000000000000000000..be7e331c639c3c2fc9bff9fd24a6d55cad3d34b0
--- /dev/null
+++ b/changelog.d/11836.misc
@@ -0,0 +1 @@
+Minor performance improvement in room state lookup.
diff --git a/synapse/storage/state.py b/synapse/storage/state.py
index df8b2f1088778fe47caef1ee0ac7ba41323aec00..913448f0f95ea130bf887169a8482190273faaa2 100644
--- a/synapse/storage/state.py
+++ b/synapse/storage/state.py
@@ -74,21 +74,21 @@ class StateFilter:
 
     @staticmethod
     def all() -> "StateFilter":
-        """Creates a filter that fetches everything.
+        """Returns a filter that fetches everything.
 
         Returns:
-            The new state filter.
+            The state filter.
         """
-        return StateFilter(types=frozendict(), include_others=True)
+        return _ALL_STATE_FILTER
 
     @staticmethod
     def none() -> "StateFilter":
-        """Creates a filter that fetches nothing.
+        """Returns a filter that fetches nothing.
 
         Returns:
             The new state filter.
         """
-        return StateFilter(types=frozendict(), include_others=False)
+        return _NONE_STATE_FILTER
 
     @staticmethod
     def from_types(types: Iterable[Tuple[str, Optional[str]]]) -> "StateFilter":
@@ -527,6 +527,10 @@ class StateFilter:
         )
 
 
+_ALL_STATE_FILTER = StateFilter(types=frozendict(), include_others=True)
+_NONE_STATE_FILTER = StateFilter(types=frozendict(), include_others=False)
+
+
 class StateGroupStorage:
     """High level interface to fetching state for event."""