diff --git a/docs/4. Product Features/03. Flows/2. Flow Actions/04. Wait for the contact to respond.md b/docs/4. Product Features/03. Flows/2. Flow Actions/04. Wait for the contact to respond.md
index f9efd1842..b6d3143a9 100644
--- a/docs/4. Product Features/03. Flows/2. Flow Actions/04. Wait for the contact to respond.md
+++ b/docs/4. Product Features/03. Flows/2. Flow Actions/04. Wait for the contact to respond.md
@@ -4,7 +4,7 @@
| 5 minutes read |
Level: Beginner |
- Last Updated: October 2025 |
+ Last Updated: July 2026 |
@@ -59,20 +59,86 @@ The Wait for Response node is essential whenever a flow needs input from the con
## Text-based responses
### 1. has any of the words
-This option accepts the input if it contains any of the words defined in the response criteria. Multiple words can be added, separated by commas. For example, if the criteria include Yes, Y, Ya, Yup, then any of these responses will be treated as valid.
-Also, if the field is left blank, any text response from the user will be accepted.
+Accepts the reply if it contains **at least one** word from the criteria list. Matching is case-insensitive. Words in the criteria can be separated by commas.
-
+If the criteria field is left blank, any text reply is accepted.
+**When to use:** Accepting multiple ways a contact might say the same thing, like "yes".
+
+| Criteria | Contact reply | Result |
+|---|---|---|
+| Yes, Y, Haan, Yep | "Yep I agree" | Valid — "Yep" matches |
+| Yes, Y, Haan, Yep | "No thanks" | Invalid — no word matches |
+| Yes, Y, Haan, Yep | "yes" | Valid — "yes" matches |
+
+---
### 2. has all of the words
-To accept the input if the input matches exactly what is defined in the response criteria.
+Accepts the reply if it contains **every** word in the criteria list. The reply can include extra words — only the criteria words need to be present. Matching is case-insensitive.
+
+**When to use:** Confirming that a contact's reply acknowledges all required keywords.
+
+| Criteria | Contact reply | Result |
+|---|---|---|
+| fever, cough | "I have fever and cough since yesterday" | Valid — both words present |
+| fever, cough | "I have fever" | Invalid — "cough" is missing |
+| fever, cough | "Cough and Fever" | Valid — both present, order doesn't matter |
+
+---
### 3. has a phrase
-To accept the input if the input is present in the response criteria.
+Accepts the reply if it contains the criteria as a **continuous phrase** anywhere within it. Matching is case-insensitive.
+
+**When to use:** Detecting a specific phrase within a longer free-text reply.
+
+| Criteria | Contact reply | Result |
+|---|---|---|
+| stomach ache | "I have a stomach ache since morning" | Valid — phrase found |
+| stomach ache | "stomach-ache" | Invalid — hyphen breaks the phrase |
+| stomach ache | "Stomach Ache" | Valid — case-insensitive |
+
+---
### 4. has only the phrase
-Accepts only if the response matches exactly what is defined in the response criteria.
+Accepts the reply **only if it exactly matches** the criteria phrase, nothing more or less. Leading/trailing spaces are ignored. Matching is case-insensitive.
+
+**When to use:** Expecting a specific keyword response, like a numbered menu selection.
+
+| Criteria | Contact reply | Result |
+|---|---|---|
+| Yes | "yes" | Valid |
+| Yes | "YES" | Valid — case-insensitive |
+| Yes | "yes please" | Invalid — extra word not allowed |
+| Yes | "ye" | Invalid — must match exactly |
+
+---
+
+### 5. starts with
+Accepts the reply if it **begins with** the specified text. The rest of the reply can be anything. Matching is case-insensitive.
+
+**When to use:** Capturing replies that follow a predictable prefix, like a registration code or a command keyword.
+
+| Criteria | Contact reply | Result |
+|---|---|---|
+| REG | "REG12345" | Valid — reply starts with REG |
+| REG | "My REG is 123" | Invalid — REG is not at the start |
+| hello | "Hello, I need help" | Valid — case-insensitive |
+
+---
+
+### 6. has multiple values
+Accepts the reply only if **every word in the reply is from the criteria list**. The contact does not need to send all criteria values — any subset is fine — but they cannot send any word outside the list. Criteria values are separated by commas. Matching is case-insensitive.
+
+**When to use:** Letting contacts pick any combination from a fixed set of options while rejecting anything off the list.
+
+| Criteria | Contact reply | Result |
+|---|---|---|
+| Math, Science, English, History | "Math" | Valid — Math is in the list |
+| Math, Science, English, History | "Math Science" | Valid — both in the list |
+| Math, Science, English, History | "Math Art" | Invalid — "Art" is not in the list |
+| Math, Science, English, History | "Math, Science, English, History" | Valid — all values in the list |
+
+This is the mirror of **has all of the words**: that operator checks that every criteria word appears in the reply; this one checks that every reply word appears in the criteria.
---