diff --git a/native/markdown/rules.react.js b/native/markdown/rules.react.js
--- a/native/markdown/rules.react.js
+++ b/native/markdown/rules.react.js
@@ -395,14 +395,9 @@
   };
 }
 
-let defaultTextMessageRules = null;
-
-function getDefaultTextMessageRules(): MarkdownRules {
-  if (!defaultTextMessageRules) {
-    defaultTextMessageRules = textMessageRules([], false);
-  }
-  return defaultTextMessageRules;
-}
+const getDefaultTextMessageRules: () => MarkdownRules = _memoize(() =>
+  textMessageRules([], false),
+);
 
 export {
   inlineMarkdownRules,
diff --git a/web/markdown/rules.react.js b/web/markdown/rules.react.js
--- a/web/markdown/rules.react.js
+++ b/web/markdown/rules.react.js
@@ -196,13 +196,8 @@
   };
 }
 
-let defaultTextMessageRules = null;
-
-function getDefaultTextMessageRules(): MarkdownRules {
-  if (!defaultTextMessageRules) {
-    defaultTextMessageRules = textMessageRules([], false);
-  }
-  return defaultTextMessageRules;
-}
+const getDefaultTextMessageRules: () => MarkdownRules = _memoize(() =>
+  textMessageRules([], false),
+);
 
 export { linkRules, useTextMessageRulesFunc, getDefaultTextMessageRules };