6–8 min read
Flows
Updated on: 18/12/2025
Set timeouts so contacts don’t get stuck
If you just need the essentials, follow this quick path:
- Identify the questions where drop-off is likely (and worth a reminder)
- Enable “continue when there is no response” on a Wait for Response node
- Choose the right No response path (remind, exit, or internal tracking)
- Cap reminder loops using
@node.visit_count
A good default is 1–2 reminders max, then a clear “restart later” instruction.
Step-by-Step Process
Timeouts are most useful on questions where drop-off is common, such as:
- Multi-step registrations
- Data collection flows (dates, IDs, phone numbers)
- Consent steps
- Any flow with a long pause risk (busy users)
[CAPTURE: Flow showing a Send Message followed by a Wait for Response node.]
- In your flow, locate (or add) a Wait for Response node.
- Open the node settings.
- Enable the option to continue when there is no response (or equivalent).
- Set the timeout duration (example: 5 minutes).
- Save the node.
[CAPTURE: Wait for Response configuration showing a timeout duration and a “No response” route.]
Once the timeout triggers, decide what should happen next. Common options:
Option A — Send a reminder and loop back
- From No response, send a short reminder message.
- Connect back to the same Wait for Response node.
[CAPTURE: No response branch → Reminder message → back to Wait for Response.]
Option B — Let them restart later
- From No response, send a message explaining how to restart the flow.
- End the flow (or exit that branch).
Example message idea: “No problem—when you’re ready, reply with [KEYWORD] to continue.”
[CAPTURE: No response branch → Send Message showing a restart keyword.]
Option C — Apply internal actions (no contact reminder)
From No response, you can also:
- Add the contact to a group (e.g., “Incomplete – No Response”)
- Apply a label (e.g., “Dropped after Q1”)
- Notify your team (email/alert action if available)
[CAPTURE: No response branch connected to “Add to Group” and/or internal notification actions.]
If you loop contacts back after a timeout, set a limit so they don’t receive reminders forever.
A common approach:
- Add a Split by Expression before looping.
- Use a counter like
@node.visit_count(or your platform’s equivalent) to stop after N attempts. - After the last attempt, route them to an exit message or a “restart later” instruction.
[CAPTURE: Flow showing No response → Split by Expression using a visit counter → either loop back or exit.]
Common Issues & Quick Fixes
Timeouts keep triggering reminders forever
Problem: Contacts who don’t reply get stuck in an endless reminder loop.
Fix:
- Add a Split by Expression before looping.
- Use
@node.visit_countto stop after a set number of attempts (often 2–3 max). - After the limit, route to an exit message (or a “restart later” instruction).
Contacts drop off and never know how to continue
Problem: After a timeout, users don’t understand how to restart or resume the journey.
Fix:
- On the No response branch, send a short message explaining what to do next.
- Include a simple restart keyword (example: “Reply START when you’re ready to continue.”).
Timeout reminders increase message volume and cost
Problem: Reminders generate extra sends, especially at scale.
Fix:
- Use timeouts only on high-value questions where reminders improve completion.
- Keep reminders short and limit retries to 1–2 where possible.
- Prefer internal tracking (group/label/notification) over repeated contact reminders when appropriate.
