A phone menu can sound polished and still send callers nowhere. The recording says “press zero,” but zero has no route. A silent caller hears the greeting forever. An updated department name no longer matches the person answering.
Create AI IVR voice prompts from an approved phone tree, then test the recordings inside that configured system. Voice generation supplies the audio. Your phone platform supplies keypad handling, timeouts, schedules and routing.
Approve the choices before recording
Start with the actual destinations available to callers. Ask the system owner to confirm which team receives each choice, when it is staffed and what happens when nobody answers. A script should describe that behavior accurately.
Our fictional example is Harbor Repair, a small appliance-repair business. Its proposed menu offers appointments, existing repairs and opening hours. Repeat and staff-assistance choices are included only because this example assumes those routes have been configured.
| Key | Spoken choice | Required configured destination |
|---|---|---|
| 1 | Book an appointment | Appointment route |
| 2 | Ask about an existing repair | Repair-status route |
| 3 | Hear opening hours | Approved hours recording |
| 9 | Hear the choices again | Replay the main menu |
| 0 | Speak with the team | Staff route with an approved fallback |
Do not copy those keys into a real recording until they match the real system. A clear promise that cannot be fulfilled is worse than a simpler menu with fewer options.
SignalWire's phone-menu guidance emphasizes concise choices and caller-friendly behavior. Use that principle to remove information callers do not need in order to choose.
Organize modules around system behavior
A modular set makes maintenance easier, but only if the file names correspond to actual states in the phone tree. Give each module a stable identifier and record the exact approved text.
| Module | Purpose | Example content or decision |
|---|---|---|
| GREET | Identify the business | Thank the caller and name Harbor Repair |
| MAIN | Present available choices | Approved keys and destinations |
| INVALID | Respond to an unsupported key | Explain that the choice was not recognized |
| TIMEOUT | Respond when no input arrives | Invite a choice or use the approved fallback |
| CLOSED | Explain the closed-hours route | Verified hours and available next action |
If GREET and MAIN are separate files, avoid repeating the greeting when the menu loops. If your platform plays one combined opening file, document that instead. The module design should follow the system's behavior rather than impose an unnecessary structure.
For an invalid key, a short message such as “That choice was not recognized. Please choose from the following options” can lead back into the menu. For silence, the system owner must decide whether to replay, route to assistance or end the call after a defined number of attempts.
Do not invent a promise of immediate staff assistance when nobody is available. Closed-hours and unanswered-call behavior need explicit ownership.
Confirm the platform's audio requirements
Check the phone provider's supported upload types, encoding, channel count and other requirements. Do not assume that every system needs the same sample rate or that renaming a file changes its format.
For example, Twilio documents audio playback through its Play instruction. A different phone system may use a different upload process or conversion stage. Follow the system you are configuring.
Keep the original clean audio master and create a separate delivery copy. If the phone platform converts the audio, listen to the converted result through a real call. A local file can sound clear while the deployed rendition clips consonants or adds distracting artifacts.
Consistent perceived loudness matters across modules, but loudness processing belongs in the appropriate audio editor. The voiceover loudness matching guide explains how to compare clean clips without treating peak level as loudness.
Test behavior, not just pronunciation
Call the configured test number and follow every valid option. Confirm the destination you actually reach. A correct spoken key does not prove that the matching route is active.
Then test an invalid key and a period of silence. Observe how long the system waits, what it plays next and whether the caller can recover. Record actual behavior instead of assuming the platform's default is suitable.
| Call test | Expected result to define | Evidence to record |
|---|---|---|
| Press each valid key | Correct destination | Destination reached and time |
| Press an unsupported key | Clear recovery path | Message played and next state |
| Remain silent | Approved timeout behavior | Wait duration and fallback |
| Press repeat | Choices replay appropriately | No accidental greeting loop |
| Call during closed hours | Correct scheduled route | Message and available action |
| Destination does not answer | Approved fallback | No dead end or false promise |
If the platform supports entering a choice while the menu is still playing, test that behavior too. Do not announce that callers can interrupt unless the actual configuration supports it reliably.
Use ordinary phone playback conditions, including a modest listening level. Another reviewer who has not read the script can tell you which choices were easy to remember and which required a replay.
Keep revisions small and traceable
The IVR script and call-test worksheet records module identifiers, approved destinations and observed call outcomes. Keep the script version and audio version linked so an administrator can tell which recording belongs to which tree.
When a department or schedule changes, update the affected text and route together. Test the changed path plus the paths that lead into and out of it. Replacing a single audio file can still create a mismatch with the surrounding flow.
If a new take sounds like a different speaker or recording environment, compare it with the accepted set. The voiceover pickups workflow helps preserve delivery across revisions.
Use only approved operational statements. Recording notices, privacy language and service commitments should come from the organization's actual requirements and practices. A generic script should not invent them to sound professional.
Frequently asked questions
Does an AI voice tool build the phone menu itself?
Not necessarily. Voice Lab creates narration audio. Key handling, routing, schedules and fallback behavior are configured in the phone system and must be tested there.
How many choices should the first menu contain?
Use the smallest useful set that matches real caller needs and available routes. There is no universal number that makes a menu good. Listen for whether an unfamiliar caller can remember and act on the choices.
Should I always offer zero for a person?
Only when that key has a real configured route and an appropriate fallback. Do not record an assistance promise that the system cannot fulfill.
Why does the uploaded recording sound worse than the original?
The platform may convert or process the file. Confirm its format requirements and listen through a real call, then compare that rendition with the clean master.
What should happen when a caller does nothing?
The system owner should approve a timeout and recovery path. Test silence explicitly so the caller does not encounter an endless loop, an unexplained disconnect or an unavailable destination.
Finish with a complete test call
A useful IVR set combines clear speech with truthful choices and working destinations. Approve the tree, generate the modules and finish by calling every path. The caller should be able to reach the promised next step without understanding how the system was built.
Record one approved menu in Voice Lab
Hero image: AI-generated editorial illustration. Examples are original planning exercises, not measured model tests.
