What is the reply buttons vs list message choice?
Reply buttons vs list message is the decision a WhatsApp designer makes every time a bot or agent asks a question with fixed answers. Reply buttons (interactive type button) show up to three tappable options under the message; the customer taps one and its title comes back as their answer. A list message (interactive type list) shows a single menu button that opens a sheet of up to ten rows, optionally grouped into titled sections, with a description line under each row.
The limits drive the choice. Reply buttons allow at most 3 buttons, each title up to 20 characters and each ID up to 256, with a body of up to 1,024 characters. A list allows 10 rows in total across up to 10 sections, a 20-character label on the menu button, row titles of 24 characters, row descriptions of 72 and section titles of 24. Headers and footers are capped at 60 characters in both formats.
Both formats are session messages: they can be sent only inside an open 24-hour customer service window, and both produce an interactive reply carrying the ID you assigned — button_reply for buttons, list_reply for lists. Template buttons follow other rules (up to 10 per template, quick replies mixed with CTA buttons), so this comparison is about free-form interactive messages. Each format is defined in depth on its own page: quick reply button and list message.
Key takeaways
- Use reply buttons for two or three short choices and a list message for four to ten options or labels that need a description.
- Reply buttons allow at most 3 options with 20-character titles; a list allows 10 rows in total, with 24-character titles and 72-character descriptions.
- Buttons answer in one tap; a list makes the user open a menu and pick a row, so it adds a step.
- Both are free-form interactive messages, sendable only inside an open customer service window; templates have their own button rules.
- Both return the ID you assigned (
button_reply.idorlist_reply.id), so route on the ID, never on the visible label.
The reply buttons vs list message choice: key facts and limits
- Reply buttons
- Up to 3; titles 20 characters
- Button ID
- Up to 256 characters
- List rows
- 10 in total, across up to 10 sections
- List text
- Row title 24, description 72, menu button 20
- Header and footer
- 60 characters each
- Taps to answer
- Buttons 1; list at least 2
- When you can send
- Inside an open customer service window
- Reply object
- button_reply or list_reply, with your ID
How does the reply buttons vs list message choice work?
- Step 1
Count the options
Two or three answers: reply buttons. Four to ten: a list. More than ten: narrow the question first, or move it into a WhatsApp Flow with a real form.
- Step 2
Measure the labels
Button titles stop at 20 characters; list rows give 24 for the title plus 72 for a description. If an option needs a price, a time or a caveat, the list's description line is the place for it.
- Step 3
Weigh the taps
A button answers in one tap. A list needs the user to open the menu and then choose, so reserve it for questions where seeing every option side by side matters more than speed.
- Step 4
Assign stable IDs
Give each button or row an ID such as
slot_tmrw_0709. The reply returns it inbutton_reply.idorlist_reply.id, so rewording a label later never breaks routing. - Step 5
Test on real traffic
Send each format to a share of users and compare the answer rate and the time to answer, not just taps. The simulation on this page shows how such a test settles.
The reply buttons vs list message choice in code
{"messaging_product": "whatsapp","to": "919812345678","type": "interactive","interactive": {"type": "button","body": { "text": "When should our phlebotomist visit?" },"action": {"buttons": [{ "type": "reply", "reply": { "id": "slot_tmrw_0709", "title": "Tomorrow 7–9 am" } },{ "type": "reply", "reply": { "id": "slot_tmrw_0911", "title": "Tomorrow 9–11 am" } },{ "type": "reply", "reply": { "id": "slot_more", "title": "Other slots" } }]}}}
Three buttons at most; each title up to 20 characters.
Example: Booking home sample collection in Hyderabad
A Hyderabad diagnostics lab asks patients to pick a home sample-collection slot. Its first bot sent a list of nine slots straight away; many patients opened it, faced too many choices and closed it. The team switched to three reply buttons — "Tomorrow 7–9 am", "Tomorrow 9–11 am" and "Other slots" — with only the third opening the full nine-row list, each row's description noting whether the slot suits fasting tests. Most patients now book in one tap, and the list still serves those whose morning is busy.
Common mix-ups
Common mistakes with the reply buttons vs list message choice
A list for three options
It adds a tap for no benefit and hides the choices behind a menu. Up to three short options belong on buttons.
Labels that do not fit
Over-limit titles are rejected by the API, and long-but-legal labels get cut off on small screens. Write "Track order", not "Click here to track your order".
Routing on the visible text
Customers sometimes type "tomorrow" instead of tapping, and marketing will reword labels. Route on the
id, and treat free text as a fallback path.Chaining "More options" buttons
Three buttons, then three more, then three more costs a round trip per screen. Past three choices, send a list — or a Flow — at once.
Expecting either format outside the window
Interactive messages are free-form, so after 24 hours of customer silence they fail. Re-engage with a template that carries quick-reply buttons instead.
Why the difference matters
Why does the reply buttons vs list message choice matter?
The wrong format costs answers. Three options tucked into a list hide behind an extra tap and get fewer replies; eight options forced into buttons become a chain of "More options" messages, each a round trip that loses people. Choosing on option count, label length and urgency keeps a flow short, keeps the bot's replies moving while the customer is still in the chat, and gives analytics a clean ID to count for every answer.
Rules of thumb
Best practices for the reply buttons vs list message choice
- Put the most likely answer first; on buttons it is the easiest one to reach with a thumb.
- Use the list's row description for the detail that decides the choice: price, duration or availability.
- Keep an "Other" or "Talk to us" way out in both formats.
- Log time-to-answer per format; it reveals friction that tap counts hide.