How to Build a WhatsApp Greeting Menu (with the Emoji Picker)
A clean menu deflects 60% of repeat questions. Build yours in five minutes — emoji picker included.
Why a greeting menu matters
Most WhatsApp customers ask the same five questions: "what do you sell?", "how much?", "do you deliver?", "where are you?", "talk to a human?" A greeting menu intercepts those before they hit your AI's token budget — customers tap a button instead of typing, and the right answer ships in milliseconds.
Botline's menu is a state machine, not just a static list. You can have up to 6 top-level items, each with up to 6 sub-items (2 levels deep), and each item routes to one of five action types: a static reply, an AI-context-primed answer, an escalation to a human, a sub-menu, or a route to a specific agent persona.
The editor lives at Dashboard → WhatsApp → Greeting Menu:
Step 1 — Pick a starter template
Botline ships eight pre-built menu templates by business vertical: Ecommerce, Restaurant, Salon, Clinic, Coaching, Real Estate, Services, and Generic SME. Click Templates at the top of the editor and pick the one closest to your business — you can edit any item afterwards.
The template seeds 4-5 sensible top-level items with appropriate emoji and pre-filled AI hints. For a salon, you'll see 🛍️ Services · 📅 Book · 💰 Pricing · 📍 Location · 🧑💼 Talk to staff. Save 5 minutes of typing.
Step 2 — Set the label and emoji
Each item has a Key (1-9 digit the customer types), a Label (24 chars max, displayed on the WhatsApp button), and an Action.
The label is where most of the customer-facing polish lives. Click the smiley 😊 button on the right of the Label input to open the emoji picker. The picker shows a "Suggested for menus" row that reacts to what you've typed — type "Products" and 🛍️ surfaces; type "Book appointment" and 📅 appears. Pick one to insert at your cursor position. (See our setup guide for the broader UI tour.)
One emoji at the start of the label is the sweet spot. Two or more clutters; zero misses the eye-catch. Watch the 24-char counter — emoji each count as 1-2 characters depending on the codepoint.
Step 3 — Pick the action type
Five action types control what happens when the customer taps an item:
- Static reply — sends a fixed text reply, exactly as written. Best for FAQs that never change ("our address is 123 Main St").
- AI context — lets the AI answer freely, but with a hint you write below ("Recommend products from our catalog based on the customer's needs"). The AI follows the hint without you having to write the reply word-for-word.
- Escalate — pauses the AI and routes the conversation to a human teammate. Set up notification rules under Settings → Notifications to control who gets pinged.
- Sub-menu — opens a nested list. Top-level only (you can't nest sub-menus inside sub-menus).
- Route to agent — switches to a specific agent persona for the rest of the conversation. Useful when you have separate sales/support agents with different prompts.
AI context is the most underrated of the five — it gives the customer a tappable shortcut without forcing you to write a static answer that goes stale every time you launch a new product.
Step 4 — Build a sub-menu (optional)
For "Book appointment" or "Browse services" items, a sub-menu beats a long static list. Set the Action to Sub-menu, save, then click Add sub-item. Sub-items have the same shape — Key, Label, Action — and can do anything top-level items do except open another sub-menu.
Example structure for a salon:
- 📅 Book appointment (sub-menu)
- 1 · ✂️ Hair (AI context: hair services)
- 2 · 💅 Nails (AI context: nail services)
- 3 · 💄 Bridal (Route to agent: Bridal Specialist)
- 0 · ↩️ Back (auto-generated, returns to top menu)
The "0 · Back" item is added automatically — you don't need to declare it.
Step 5 — Test before going live
- Save your menu. Botline runs a validator that catches duplicate keys, empty labels, and orphaned sub-menus.
- Open the Preview pane on the right of the editor. It renders exactly what the customer will see on WhatsApp.
- Send a test message from your own WhatsApp to your business number. The AI replies with the menu. Tap each top-level item to verify routing.
- Specifically test the Talk to human escalation — make sure the right teammate gets notified.
Smoke test: if you see a "menu inside the menu" message (e.g. the AI replies with another bullet list when you tapped a button), the underlying agent prompt is fighting the menu. Check Settings → AI Configuration → System Prompt and remove any "always offer the customer the following options:" fragments — let the menu state machine handle that.
Best practices
- Less is more. 4 well-chosen top-level items convert better than 6 forced ones. Cut the weakest items.
- Use AI context, not Static reply, where possible. Static replies go stale; AI context with a good hint stays fresh as your products and policies change.
- Always include "Talk to human". Escalation is non-negotiable — customers need an out, and offering it builds trust even when no one taps it.
- Lead with action verbs. "🛒 Order now" beats "🛒 Products". "📅 Book a slot" beats "📅 Calendar".
- Watch the menu-smell warnings. The dashboard flags when your AI's prompt is silently re-rendering a menu inside its replies — fix the prompt rather than fight the duplication.
- Localize labels. If most customers reply in Urdu or Bahasa Malaysia, write the label in their language. The AI handles both languages either way; the menu label is what they SEE, so it should match their script.