diff --git a/aspnetcore/blazor/state-management.md b/aspnetcore/blazor/state-management.md
index 48238f993860..97b9e56f871b 100644
--- a/aspnetcore/blazor/state-management.md
+++ b/aspnetcore/blazor/state-management.md
@@ -446,6 +446,11 @@ Generally, `sessionStorage` is safer to use. `sessionStorage` avoids the risk th
> [!WARNING]
> Users may view or tamper with the data stored in `localStorage` and `sessionStorage`.
+When implementing custom browser state storage, a useful approach is to adopt [cascading values and parameters](xref:blazor/components/cascading-values-and-parameters):
+
+* To consume state across many components.
+* If there's just one top-level state object to persist.
+
In-memory state container service
[!INCLUDE[](~/blazor/includes/state-container.md)]
@@ -886,6 +891,11 @@ Generally, `sessionStorage` is safer to use. `sessionStorage` avoids the risk th
> [!WARNING]
> Users may view or tamper with the data stored in `localStorage` and `sessionStorage`.
+When implementing custom browser state storage, a useful approach is to adopt [cascading values and parameters](xref:blazor/components/cascading-values-and-parameters):
+
+* To consume state across many components.
+* If there's just one top-level state object to persist.
+
In-memory state container service
[!INCLUDE[](~/blazor/includes/state-container.md)]
@@ -1341,6 +1351,11 @@ Generally, `sessionStorage` is safer to use. `sessionStorage` avoids the risk th
> [!WARNING]
> Users may view or tamper with the data stored in `localStorage` and `sessionStorage`.
+When implementing custom browser state storage, a useful approach is to adopt [cascading values and parameters](xref:blazor/components/cascading-values-and-parameters):
+
+* To consume state across many components.
+* If there's just one top-level state object to persist.
+
In-memory state container service
[!INCLUDE[](~/blazor/includes/state-container.md)]