Skip to main content
These practices keep Flows reliable in production and easy for teammates to change.

Structure

Name the outcome (Booking, FAQ, Qualify). Put shared routines in child Flows and call them with Go to Flow.
Build the main success route, then add failure, timeout, and “I don’t understand” branches.
Every Condition and interactive menu needs a fallback. Silence feels like a broken bot.
Split early. Large monolith Flows are hard to test and dangerous to publish.

Content and channels

  • Prefer Omnichannel messages; specialize only when required.
  • Keep Quick Reply labels short.
  • Respect media limits per channel.
  • Mind Meta messaging windows when using long Delays or drips.

Data

  • Create fields before you build; use stable names.
  • Collect only what you use.
  • Tag for coarse routing; use custom fields for values.
  • Document the field contract when a parent Flow calls a child.

AI inside Flows

  • Use AI Action for one-shot classify/extract steps.
  • Constrain model output so Conditions stay reliable.
  • Hand off to a full AI Agent for open-ended chat.

Release discipline

Operations checklist

  1. Published?
  2. Trigger attached and ordered correctly?
  3. Fallback path exists?
  4. Fields/tags verified?
  5. Channel-specific media tested on device?
  6. Unsubscribe path for drips?

Next

Recipes

Copyable patterns that apply these practices.

Limits

Hard caps to design around.