diff --git a/packages/builder/src/components/design/settings/controls/FieldContext/ExplanationModal/index.svelte b/packages/builder/src/components/design/settings/controls/FieldContext/ExplanationModal/index.svelte
index f587d51d19..227e5b46fc 100644
--- a/packages/builder/src/components/design/settings/controls/FieldContext/ExplanationModal/index.svelte
+++ b/packages/builder/src/components/design/settings/controls/FieldContext/ExplanationModal/index.svelte
@@ -1,10 +1,6 @@
+
+
+
+
+ {#if schema.type === "string"}
+
+ {:else if schema.type === "datetime"}
+
+
+
+
+ {:else if schema.type === "number"}
+
+
+ {:else if schema.type === "json"}
+
+ {/if}
+
+
+
diff --git a/packages/builder/src/components/design/settings/controls/FieldContext/ExplanationModal/subjects/NotRequired.svelte b/packages/builder/src/components/design/settings/controls/FieldContext/ExplanationModal/subjects/NotRequired.svelte
new file mode 100644
index 0000000000..f9a00ebcd8
--- /dev/null
+++ b/packages/builder/src/components/design/settings/controls/FieldContext/ExplanationModal/subjects/NotRequired.svelte
@@ -0,0 +1,9 @@
+
+
+
+
+ A 'required' contraint can be applied to columns to ensure a value is always present. If a column doesn't have this constraint, then its value for a particular row could he missing.
+
+
diff --git a/packages/builder/src/components/design/settings/controls/FieldContext/ExplanationModal/subjects/StringsAsNumbers.svelte b/packages/builder/src/components/design/settings/controls/FieldContext/ExplanationModal/subjects/StringsAsNumbers.svelte
new file mode 100644
index 0000000000..27e28c13e6
--- /dev/null
+++ b/packages/builder/src/components/design/settings/controls/FieldContext/ExplanationModal/subjects/StringsAsNumbers.svelte
@@ -0,0 +1,9 @@
+
+
+
+
+ Text can be used in place of numbers in certain scenarios, but care needs to be taken to ensure that non-numerical values aren't also present, otherwise they may be parsed incorrectly and lead to unexpected behavior.
+
+
diff --git a/packages/builder/src/components/design/settings/controls/FieldContext/ExplanationModal/subjects/Support.svelte b/packages/builder/src/components/design/settings/controls/FieldContext/ExplanationModal/subjects/Support.svelte
new file mode 100644
index 0000000000..e15c231f0e
--- /dev/null
+++ b/packages/builder/src/components/design/settings/controls/FieldContext/ExplanationModal/subjects/Support.svelte
@@ -0,0 +1,38 @@
+
+
+
+
+
+ Fully compatible with the component as long as the data is present.
+
+
+
+ Possibly compatible with the component, but beware of other caveats mentioned in the context tooltip.
+
+
+
+ Imcompatible with the component.
+
+
+
+
diff --git a/packages/builder/src/components/design/settings/controls/FieldContext/ExplanationModal/Property.svelte b/packages/builder/src/components/design/settings/controls/FieldContext/ExplanationModal/subjects/components/Property.svelte
similarity index 100%
rename from packages/builder/src/components/design/settings/controls/FieldContext/ExplanationModal/Property.svelte
rename to packages/builder/src/components/design/settings/controls/FieldContext/ExplanationModal/subjects/components/Property.svelte
diff --git a/packages/builder/src/components/design/settings/controls/FieldContext/ExplanationModal/subjects/components/Section.svelte b/packages/builder/src/components/design/settings/controls/FieldContext/ExplanationModal/subjects/components/Section.svelte
new file mode 100644
index 0000000000..41f919fd10
--- /dev/null
+++ b/packages/builder/src/components/design/settings/controls/FieldContext/ExplanationModal/subjects/components/Section.svelte
@@ -0,0 +1,9 @@
+
+
+
+
+
diff --git a/packages/builder/src/components/design/settings/controls/FieldContext/ExplanationModal/subjects/components/Subject.svelte b/packages/builder/src/components/design/settings/controls/FieldContext/ExplanationModal/subjects/components/Subject.svelte
new file mode 100644
index 0000000000..2231a048ce
--- /dev/null
+++ b/packages/builder/src/components/design/settings/controls/FieldContext/ExplanationModal/subjects/components/Subject.svelte
@@ -0,0 +1,27 @@
+
+
+
+
+
+ {heading}
+
+
+
+
+
+
+
diff --git a/packages/builder/src/components/design/settings/controls/FieldContext/ExplanationModal/subjects/components/index.js b/packages/builder/src/components/design/settings/controls/FieldContext/ExplanationModal/subjects/components/index.js
new file mode 100644
index 0000000000..4ea7a2ca88
--- /dev/null
+++ b/packages/builder/src/components/design/settings/controls/FieldContext/ExplanationModal/subjects/components/index.js
@@ -0,0 +1,3 @@
+export { default as Subject } from "./Subject.svelte"
+export { default as Property } from "./Property.svelte"
+export { default as Section } from "./Section.svelte"
diff --git a/packages/builder/src/components/design/settings/controls/FieldContext/ExplanationModal/subjects/index.js b/packages/builder/src/components/design/settings/controls/FieldContext/ExplanationModal/subjects/index.js
new file mode 100644
index 0000000000..5dd1ed5410
--- /dev/null
+++ b/packages/builder/src/components/design/settings/controls/FieldContext/ExplanationModal/subjects/index.js
@@ -0,0 +1,4 @@
+export { default as Column } from "./Column.svelte"
+export { default as NotRequired } from "./NotRequired.svelte"
+export { default as StringsAsNumbers } from "./StringsAsNumbers.svelte"
+export { default as Support } from "./Support.svelte"