VICIfast
Operations

How to build a multi-level IVR with nested menus

Chain phone menus into a layered IVR so callers can drill from a main menu into focused sub-menus.

VICIfast··3 min read
How to build a multi-level IVR with nested menus

A single menu with ten options is hard to follow. A better design is a layered tree: a short main menu that hands off to focused sub-menus. In VICIdial, each layer is its own Call menu, and you chain them together to build a multi-level IVR (interactive voice response).

The building block: the CALLMENU route

Nesting works because one menu option can route to another menu. When you set an option's route to CALLMENU, the route value is the Menu ID of the menu you want next. So pressing 2 on your main menu can drop the caller into a billing sub-menu, which then offers its own choices.

Each menu has its own greeting, its own timeout, and its own options. The caller presses a key, the system reads the DTMF tone, and either acts on it or chains deeper. Build each layer separately, then link them with CALLMENU routes once they all exist.

A worked example

flowchart TD
  A[Main menu] -->|1 Sales| B[Sales ingroup]
  A -->|2 Support| C[Support sub menu]
  A -->|3 Billing| D[Billing sub menu]
  C -->|1 New ticket| E[Support ingroup]
  C -->|2 Status| F[Status sub menu]
  D -->|1 Pay bill| G[Billing ingroup]

In this tree the main menu only offers three broad choices. Sales goes straight to a queue, while support and billing each open a sub-menu with their own narrower options. Most paths eventually end at an Ingroup where a live Agent picks up, which is the goal of any inbound tree.

Keep each layer short

  • Aim for three or four options per menu so callers can hold them in their head.
  • Give every menu a TIMEOUT and INVALID route so a silent or fumbling caller is never stranded.
  • Avoid going more than two or three layers deep; people get lost in long trees.
  • Offer a way back, such as a key that returns to the main menu via CALLMENU.
Build the deepest sub-menus first, then the ones above them. That way every CALLMENU route already has a real Menu ID to point at when you wire it up.

Test the whole tree, not just the happy path

Once your menus are linked, call in and walk every branch yourself. Press the keys a real caller would, but also press the wrong ones, and try going silent to confirm each menu's timeout and invalid handling do something sensible at every level. A nested tree multiplies the number of ways a caller can get stuck, so a dead-end three layers down is easy to miss if you only test the obvious route.

Pay special attention to the timeout and invalid options on every sub-menu, not just the main one. It is common to set them carefully on the top level and then forget them on the deeper menus, which leaves a caller who hesitates two layers in with nowhere to go. A copied menu inherits these settings, so duplicating a well-built menu is a fast way to keep the deeper layers consistent.

Where the calls end up

Every branch of your tree should land somewhere sensible, usually a queue. For the full inbound picture, read our inbound call handling guide. To build the queues at the leaves of your tree, follow creating an inbound group to take calls.

If you would rather design the tree than install software, our managed VICIdial hosting spins up a ready box in under a minute.

Frequently asked

How do I link one menu to another?
Set a menu option's route to CALLMENU and put the target Menu ID in the route value.
How deep should an IVR go?
Two or three layers at most. Long trees frustrate callers and increase the chance they hang up.

About VICIfast LLC

VICIfast LLC operates a managed VICIdial hosting + BYOI service for outbound and inbound call centers. We run the dialers, the carriers, the recordings pipeline, and the compliance plumbing so operators don’t have to.

Citing this article

VICIfast Engineering. “How to build a multi-level IVR with nested menus”. VICIfast LLC, June 21, 2026. Retrieved from https://vicifast.com/blog/build-vicidial-multi-level-ivr

Have questions?

Related posts

You might be interested in

VICIfast newsletter

Liked this? Get the next one in your inbox.

We ship the kind of stuff you just read — concrete, numbers-first, no drip. One email when a new post goes live. Unsubscribe in one click.

Comments

Comments are reviewed before they appear. We never publish your email.

No comments yet — be the first.