How can I create a Multi-level IVR?

How can I create a Multi-level IVR?

Short answer: Build a top‑level IVR menu, then add a Menu block under each option to create sub‑menus (Level 2, Level 3, etc.). Connect each final path to a destination (queue, user, or voicemail), set repeat/timeout behavior, and publish.


When to use a multi‑level IVR

Use multi‑level menus when a single list (e.g., 1–3) isn’t enough. Example: Sales → (1) New Orders / (2) Existing Orders or Support → (1) Product A / (2) Product B.


Prerequisites

  • You can sign in to the MyOperator Web Panel.
  • Access to Calls → Design Callflow and permission to create/edit IVRs.
  • Greeting audio/TTS for each menu level.
  • A simple draft of your menu tree (see template below).

Plan your menu (copy template)

Level 1 (Main):  1 = Sales  2 = Support  3 = Billing  0 = Operator (escape)  * = Repeat menuLevel 2 – Sales:  1 = New Orders  2 = Existing Orders  9 = Back to Main (optional)Level 2 – Support:  1 = Product A  2 = Product B  3 = Technical Help

Steps (Web Panel)

  1. Open Callflow Designer
    Go to Calls → Design Callflow. Create a new flow or click Edit on an existing one.
  2. Add the main Menu
    Insert a Menu block. Record or type the prompt (e.g., “Press 1 for Sales, 2 for Support, 3 for Billing. Press 0 for Operator.”). Set invalid input and no‑input/timeout rules, repeat count, and a Repeat menu key (e.g., *).
  3. Create sub‑menus
    For each Level‑1 option that needs more choices (e.g., Sales), drag another Menu block and connect it to that option’s output. Record/type the sub‑menu prompt (e.g., “Press 1 for New Orders, 2 for Existing Orders.”).
  4. Connect final destinations
    From the lowest‑level menu options, connect to the destination you want: Queue, User/Team, Voicemail, or Announcement.
  5. Add fallbacks
    For each menu level, set what happens on invalid input and no input after X retries (e.g., route to Operator or Voicemail). Consider adding 0 = Operator.
  6. (Optional) Language selection first
    If you need multiple languages, place a short Language menu before the main menu, branching to language‑specific copies of the tree.
  7. Save & Publish
    Click Save then Publish to apply the changes.

Example: B2B/B2C under Sales

  • Main menu: “Press 1 for Sales, 2 for Support, 3 for Billing, 0 for Operator.”
  • Sales (1) → Sub‑menu: “Press 1 for B2B Sales, 2 for B2C Sales.”
  • B2B (1): Route to B2B Sales Queue.
  • B2C (2): Route to B2C Sales Queue.

Test before going live

  1. Place a test call; verify the greeting and each option.
  2. Exercise no‑input (wait for timeout) and invalid input (press an unmapped key).
  3. Check Call Logs path (e.g., Number → Main IVR → 1 Sales → 1 B2B → Queue).
  4. Adjust prompts/paths if anything is unclear.

Best practices

  • Keep it shallow: Prefer ≤ 2 levels to minimize caller effort.
  • Be consistent: Keep numbering consistent across levels (e.g., 0 = Operator, * = Repeat).
  • Write for the ear: Short prompts first; detail second. Avoid long lists.
  • Handle edge cases: Define behavior for invalid and no‑input at every level.
  • Name clearly: Use descriptive block names (e.g., IVR – Main, IVR – Sales L2).
  • Accessibility: Ensure audio is clear, moderate volume, minimal music under prompts.

Troubleshooting

Symptom

Likely cause

Fix

Sub‑menu never reached

Output wire not connected

Connect the Level‑1 option to the Level‑2 Menu block and republish

Wrong destination

Option mapped incorrectly

Re‑map option to the correct Queue/User and retest

Call loops or dead‑ends

No fallback on invalid/timeout

Set repeat count and route to Operator/Voicemail on failure

Key press not detected

Wi‑Fi calling/VoIP or noisy prompt

Disable Wi‑Fi calling; upload a cleaner prompt; retest


Related articles