A WhatsApp flow is a conversation mapped out in advance: a series of messages, choices, and conditions that runs automatically as soon as a trigger fires. You build it in a visual editor by dragging blocks and connecting them. When a customer sends a message or an event happens in your system, the flow walks through its steps, remembers answers as variables, and picks paths based on conditions.
The parts of a flow
- Trigger: what starts the flow — an incoming message, a choice, or an event in your system
- Message blocks: text, buttons, list messages, carousels
- Variables: answers and fetched data that you use later on
- Conditions: branches based on a value
- Actions: HTTP requests to your own systems
- End: close it, ask again, or hand off to a team member
Note: “flow” means two things
Meta also uses the term “WhatsApp Flows” for form-like screens inside WhatsApp. When people search for “WhatsApp flow builder,” they usually mean something else: an editor where you map out the whole conversation. This page — and Easy Flow Builder — is about the second one.
How a flow runs in practice
What sets a good flow apart
- There's always a way out to a person
- Every path ends properly, including the one you didn't think of
- The customer should have to type as little as possible
- Messages are short: two lines read faster than six
- You test every path before you publish
Frequently asked questions
Is a WhatsApp flow the same thing as a chatbot?
A flow is the blueprint; the chatbot is what the customer experiences. Unlike an AI chatbot, a flow follows paths you laid out yourself, so its behavior is predictable.
How long can a flow be?
Technically unlimited, practically short. Five to ten steps per path is plenty; if it gets longer than that, split it into several flows.
Can a flow use data from my system?
Yes, with the HTTP block. That's how the flow pulls order status, availability, or customer details and uses them in messages and conditions.
What happens when a customer sends something unexpected?
Then the flow takes the default path. Always put a fallback there: ask again, or hand off to a team member.