WhatsApp Flows: Forms and Bookings Inside the Chat
What WhatsApp Flows are, what you can build with them, how a Flow is sent by template or inside the 24-hour window, Flow JSON and the Flow Builder, endpoints, publishing rules, limits, pricing and design tips.
WhatsApp Flows are Meta’s native, multi-screen forms that open inside a WhatsApp chat. A customer taps a button, fills in screens with text fields, dropdowns, date pickers and checkboxes, and submits, all without leaving WhatsApp. Businesses use them for lead forms, appointment bookings, surveys and sign-ups.
A Flow is sent either as a button on an approved template message or as an interactive message inside the 24-hour customer service window. You build it in the Flow Builder in WhatsApp Manager or with Flow JSON through the API. This guide explains how Flows work, what Meta’s documentation says about limits and publishing, what they cost and how to design one that people finish.
Key takeaways
- A Flow is a set of screens with form components that opens in the chat; the answers come back to you as a message on your webhook.
- Send it with a Flow button on an approved template (any time) or as an interactive Flow message (only inside the 24-hour window).
- To send Flows, Meta requires a verified business and high message quality.
- Most Flows need no server. You only need a data endpoint for live data such as available slots or prices.
- Published Flows can’t be deleted, only deprecated, and Meta throttles or blocks Flows whose endpoint is unhealthy.
- A Flow in a template is charged at that template’s category rate; one sent inside the window is a service message.
What WhatsApp Flows are
Meta describes Flows as a way to build interactive workflows inside WhatsApp. Each Flow is made of screens, and each screen is made of components: headings and text, text inputs, text areas, dropdowns, radio buttons, checkboxes, date and calendar pickers, opt-in checkboxes, images, links and a footer button. Media upload components are also available.
When the customer submits the last screen, WhatsApp posts a short “Sent” reply in the chat and delivers the answers to your system. Compared with a chatbot that asks one question per message, a Flow collects several fields in one structured step, with validation and pickers, so there’s less typing and fewer typos.
What you can build: common use cases
When you create a Flow through Meta’s API you tag it with one or more categories: sign up, sign in, appointment booking, lead generation, contact us, customer support, survey or other. Typical uses:
- Lead forms: name, city, budget and preferred call time for a property, course or loan enquiry. See WhatsApp lead generation.
- Appointment booking: pick a service, a date and a time slot, then confirm.
- Surveys and feedback: a short rating plus an optional comment after a delivery or visit.
- Sign-ups: register for an event, a webinar or updates, with an opt-in checkbox.
- Quotes and recommendations: Meta’s own example guides cover an insurance quote, a pre-approved loan offer, collecting purchase intent and a personalised product offer.
Meta reminds businesses that Flows must follow local data regulations and the WhatsApp Business Messaging Policy, so only ask for what you need.
How a Flow is sent to a customer
There are two ways to put a Flow in front of someone:
| Method | When you can use it | Button text |
|---|---|---|
| Template message with a Flow button | Any time, to opted-in customers, once the template is approved | Up to 25 characters |
| Interactive Flow message | Only inside the 24-hour customer service window after the customer messages you | Meta advises 30 characters or less, no emoji |
A template is how you start the conversation: for example a marketing message saying “Book your free trial class” with a Book now button that opens the Flow. The template goes through Meta’s normal review first; see WhatsApp template messages.
An interactive Flow message is for replies. When a customer writes “I want to book a table”, your bot or agent can answer with a Flow straight away, because the customer service window is open.
Each send can carry a flow token, an identifier you choose. Meta’s webhook response doesn’t include the Flow ID, so the token (or a field you add) is how you match a submission to the customer, campaign or order it belongs to.
Building a Flow: Flow Builder and Flow JSON
Every Flow is defined in Flow JSON: a version, a list of screens, and the components and actions on each screen. You can create it in three places:
- Flow Builder in WhatsApp Manager: Meta’s own editor, where you build screens, preview them and publish. Meta’s Playground page points businesses here to build Flows they can send.
- The Message Templates page: Meta’s tutorials show a simple survey Flow being built while creating a template.
- The Flows API: create, update, publish and deprecate Flows programmatically with Flow JSON.
Limits Meta documents
| Item | Limit |
|---|---|
| Components per screen | 50 |
| Flow JSON size | 10 MB |
| Branches in the routing model | Up to 10 |
| Heading or subheading | 80 characters |
| Text input label | 20 characters |
| Radio button or checkbox options | 1 to 20 |
| Dropdown options | Up to 200 (100 with images) |
| Footer button label | 35 characters |
| Images per screen | 3 |
The last screen of a Flow is marked as terminal and must have a Footer component (the submit button). A Flow can have more than one terminal screen, and every route must end at one.
With or without a data endpoint
A Flow can be static, with every option written into the Flow JSON, or it can call a data endpoint, a server you run that sends back data for the next screen.
- No endpoint: fine for most lead forms, surveys and sign-ups. Screens just navigate from one to the next and the answers arrive when the customer submits. Meta recommends endpoint-free Flows unless you need live data.
- With an endpoint: needed when a screen depends on live data, such as free appointment slots, stock or a price that depends on earlier answers. Requests are encrypted (you upload an RSA public key and decrypt with AES-GCM), WhatsApp sends periodic health-check pings, and Meta says data endpoint requests time out after 10 seconds.
Meta monitors endpoint error rates, latency and availability and can alert you by webhook. If an endpoint keeps failing, the Flow’s health affects its status, as the next section explains.
Publishing and the lifecycle of a Flow
| Status | What it means |
|---|---|
| Draft | Being edited. Can only be sent for testing, and can be deleted. |
| Published | Live and can be sent to customers. |
| Throttled | Set by WhatsApp when the endpoint or screen navigation is unhealthy. Still works, but sending is limited to 10 messages per hour. |
| Blocked | Health got worse. You can’t send it and customers can’t open it until it recovers. |
| Deprecated | Retired for good. It can’t be sent again or restored. |
Meta’s Flows API says that once a Flow is published it can’t be modified or deleted, only deprecated. To change it you move it back to draft or clone it, and messages already sent keep the version they were sent with. Test thoroughly in draft before you publish.
What a WhatsApp Flow costs
Meta doesn’t list a separate fee for Flows. You pay for the message that carries the Flow:
- Flow in a template: charged at the template’s category rate. In India, from 1 October 2026, that is ₹0.8631 per delivered marketing message or ₹0.1150 per utility message, plus 18% GST.
- Interactive Flow message inside the window: a non-template message, which Meta counts as a service message. Each number gets 1,000 free service messages a month, then ₹0.1150 each for Indian numbers.
- The customer’s submission is an incoming message, and messages customers send you are free.
Full rates, volume tiers and examples are in WhatsApp API pricing in India. Rates change on fixed dates, so check Meta’s pricing page at the time of writing your budget.
Design tips for Flows people finish
Meta’s best-practice guide is worth reading in full. The points that matter most:
- Keep it under 5 minutes. One task per screen; split long forms across screens.
- Use short, action titles such as “Book appointment”, and show progress like “Question 1 of 3”.
- Pick the right component. No more than 10 options per screen, dropdowns only for 8 or more options, a date picker for dates, a text area for long answers.
- Make non-critical fields optional and add helper text for formats such as phone numbers.
- End with a summary screen so people can check their answers, and say what happens when they submit.
- Send a follow-up message after submission with next steps and how to change or cancel.
- Collect as little sensitive data as possible. Password and passcode fields are left out of the response by default, and newer Flow versions let you mark other fields as sensitive.
WhatsApp Flows in Automate AI
In Automate AI Marketing, a template can carry a Flow button in two ways:
- Use an existing Flow: enter the Flow ID of a Flow you have built and published in Meta’s WhatsApp Manager.
- Auto-create a simple form: Automate AI creates a basic Flow that asks for Name, Email and Phone.
Submissions are forwarded to a webhook URL you set, and they also appear in the customer’s chat, so your team sees the answers next to the conversation.
Frequently asked questions
What is a WhatsApp Flow?
A native, multi-screen form that opens inside a WhatsApp chat, with fields such as text inputs, dropdowns, date pickers and checkboxes. The answers come back to the business when the customer submits.
Can I send a Flow to someone who hasn’t messaged me?
Yes, as a Flow button on an approved template message, if the person has opted in to hear from you. Interactive Flow messages without a template only work inside the 24-hour customer service window.
Do I need a server or developer to use WhatsApp Flows?
Not for simple forms. Flows without a data endpoint just collect answers. You only need an endpoint for live data such as available slots or prices.
Do WhatsApp Flows work on WhatsApp Web?
No. Meta lists Android 6.0 or later and iOS 12 or later, and says Flows are not supported on companion devices such as WhatsApp Web.
Can I edit a Flow after publishing it?
Meta says a published Flow can’t be modified or deleted, only deprecated. To change it, move it back to draft or clone it and publish again. Messages already sent keep the old version.
How much does a WhatsApp Flow cost?
There’s no separate Flow fee. A Flow sent in a template is charged at the template’s category rate; one sent as an interactive message inside the 24-hour window counts as a service message.
Sources
- Meta: WhatsApp Flows
- Meta: WhatsApp Flows overview
- Meta: Get started with WhatsApp Flows
- Meta: Send a Flow message
- Meta: Flow JSON
- Meta: Flows components
- Meta: Flows API
- Meta: Lifecycle of a Flow
- Meta: Implement endpoints for Flows
- Meta: Flows webhooks
- Meta: WhatsApp Flows best practices
- Meta: Flows Playground
- Meta: Flows examples and tutorials
- Meta: Send messages (customer service window)
- Meta: Pricing on the WhatsApp Business Platform
WhatsApp rules and prices change. We check these guides against Meta’s documentation, but always confirm current terms with Meta before you rely on them. Questions? Message us on WhatsApp at +91 836 977 8812.

