Most voice agent prompts spend pages on the happy path and one line on everything else: "transfer if needed, be polite, end the call when done." Those three moments are where callers get frustrated.
This guide focuses only on the prompt sections for interruptions, transfers and call closure. It gives copy-ready wording, tool descriptions, before-and-after examples and a checklist. It assumes your call flow is already designed.
Why These Three Moments Need Their Own Prompt Sections
• Interruptions: the model sees a fragment of its own unfinished sentence plus the caller's new words, and often tries to finish its old thought
• Transfers: a model that knows it can transfer will do it inconsistently unless triggers are explicit
• Closure: without rules, agents hang up on a pause, or keep talking after the caller has said goodbye
Prompt wording cannot change how your platform detects speech. It controls what the agent does next. Tune detection settings in the platform and recovery behavior in the prompt.
Section 1: Interruption Recovery
What to Tell the Model
• Stop the old thought; respond to what the caller just said
• Never say "as I was saying"
• Treat short acknowledgments ("okay," "mm-hm") as listening, not as a new request
• If the interruption was unclear, ask one short question
• If the interruption came during a read-back, restate only the item still unconfirmed
Copy-Ready Prompt Block
Prompt section (H2 heading): Interruptions
"If the caller starts speaking while you are talking, stop and respond to what they said. Do not finish or repeat your previous sentence."
"Never say 'as I was saying.' If they only said a short acknowledgment like 'okay' or 'yeah,' continue from where you stopped, in one short sentence. If you could not understand them, ask one short clarifying question."
"If they interrupted a confirmation, repeat only the detail that is still unconfirmed."
Before and After
○ Weak prompt result: Agent: "Your appointment is Thursday at two, and the technician will call thirty minutes before—" Caller: "Wait, Thursday doesn't work." Agent: "—arrival. Is there anything else?"
➤ With the block: Agent: "Your appointment is Thursday at two, and the technician will—" Caller: "Wait, Thursday doesn't work." Agent: "No problem. What day works better for you?"
The Vapi prompting guide gives similar advice in its "When NOT to End the Call" rules: if the caller interrupts, stop talking, listen and respond.
Section 2: Transfer Rules
Write Triggers, Not "When Needed"
List the exact conditions. Keep "do not transfer" rules too, or the agent will hand off every hard question.
Prompt section (H2 heading): Transfer rules
"Transfer the call when any of these is true:
- The caller asks for a person, a manager or 'someone real.'
- The caller describes a safety risk: gas smell, smoke, sparks or flooding near electrics. Tell them to leave the area and call 911 first if anyone is in danger.
- The caller disputes a charge or asks for a refund.
- You have asked the same clarifying question twice and still do not understand.
- The caller sounds upset and has repeated the same request twice.
Do not transfer just because a question is detailed. Try to answer from your knowledge base first."
Say One Short Line, Then Act
Callers should know what is happening, but only once. Platforms differ here: Fonoster's prompting docs warn that a configured transfer message plays automatically, so the model should not announce it too. Match the prompt to your platform.
• If your platform plays a transfer message: tell the model to call the transfer tool without speaking
• If it does not: one line, such as "I'll connect you with our dispatcher now, one moment," then call the tool
Pass Context, Not the Transcript
Prompt section (H2 heading): Transfer summary
"Before transferring, prepare a one-sentence summary for the person receiving the call: caller name, reason for calling, what you already confirmed and anything they asked you not to repeat. Do not include payment card numbers."
Tool Description Matters as Much as the Prompt
Models read the tool description to decide when to call it. Put the trigger list in the description itself, not only in the system prompt.
Example tool description (transfer_to_dispatcher): "Transfer the live call to the dispatch team. Use only when a transfer rule in the system prompt is met. Include a one-sentence summary. Do not use for general questions about pricing or service areas."
The Vapi guide notes that if a transfer tool is not firing reliably, the tool's description field is the first thing to check.
Section 3: When the Transfer Fails
This is the most skipped section in voice prompts. If nobody answers, the caller should not loop or be dropped.
Prompt section (H2 heading): If transfer fails
"If the transfer does not connect, tell the caller plainly: 'I wasn't able to reach the team right now.' Then offer one option: take a callback number and best time, or give the main office number."
"Confirm the callback number by reading it back in groups. Do not try the same transfer more than once unless the caller asks."
• Decide in advance how many retries are allowed
• Always end with a concrete next step and an owner
• For safety calls, repeat the emergency instruction before offering a callback
Our guide to after-hours call handling and failed handoffs covers the routing side of this problem.
Section 4: Call Closure
When to End and When Not To
Prompt section (H2 heading): Ending the call
"End the call only when the caller's request is handled or handed off, and you have stated the next step."
"Before ending, ask once: 'Is there anything else I can help with?' If the caller says goodbye, says thanks and nothing else, or confirms they are done, close."
Do not end the call when: the caller interrupts you; the caller goes quiet (wait, then ask once if they are still there); or the caller says a short fragment like 'okay' or 'hmm' before you have confirmed they are done."
Avoid the Double Goodbye
Some platforms speak a goodbye message when the end-call tool fires. If the model also says goodbye, the caller hears it twice. Fonoster's docs say to tell the model to hang up, not to say goodbye, when a hangup message is configured.
On other platforms the goodbye must come from the model. Retell's function calling docs suggest giving the end-call function a message parameter so the agent does not hang up in silence.
Copy-Ready Closing Lines
• "You're all set for Thursday at two. You'll get a text reminder the day before. Thanks for calling."
• "I've passed your details to our billing team, and they'll call you back today. Thanks for your patience."
• "I couldn't reach the dispatcher, but I have your callback request for 4 p.m. Thanks for calling."
Each line confirms the outcome, sets the next step and thanks the caller, in that order.
Worked Example: HVAC Booking Line, Annotated
This is an original, illustrative call written to show the three sections working together.
• Agent: "Thanks for calling. I can book a service visit or answer questions. What can I help with?"
• Caller: "My AC stopped—"
• Agent: (caller still speaking; agent waits)
• Caller: "—and there's a burning smell from the vent."
• Agent: "If you see smoke or anyone feels unwell, leave the house and call 911. I'm connecting you to our dispatcher now." *(Transfer rule 2; one line; tool called with summary.)*
• System: transfer not answered
• Agent: "I wasn't able to reach the dispatcher. Please switch the system off at the thermostat. Can I take a callback number?" *(Failure block; safety step repeated.)*
• Caller: "Okay."
• Agent: "What's the best number to reach you?" *("Okay" treated as acknowledgment; agent does not close.)*
• Caller: "555-0142." *(Fictional number.)*
• Agent: "That's five five five, zero one four two. Is that right?" … "Thanks. The dispatcher will call you back as soon as possible." *(Closure: outcome, next step.)*
Review Checklist for These Prompt Sections
• Interruption block present, with acknowledgment vs new request rule
• No "as I was saying" or full repeats after interruption
• Numbered transfer triggers and explicit "do not transfer" cases
• Safety trigger tells callers to call 911 first when anyone is in danger
• Transfer announcement matched to platform (silent or one line)
• Transfer summary format defined, with data excluded
• Transfer failure path with retry limit and next step
• End-call rules and "do not end" rules both present
• Goodbye handled once, by model or platform, not both
• Tool descriptions contain the trigger conditions
Test These Sections Before Launch
Prompts are hypotheses until tested in real audio. Our guide on testing AI voice agents for interruptions, latency and failed handoffs gives a test matrix, and our voice agent KPI guide covers transfer metrics to watch after launch.
Our Own Product Note
Disclosure: this is our own product. LuMay Voice Agents (Voxentis) include call escalation that transfers to a human with a live summary, as described on our features page. The prompt sections above work on any voice platform.
Next Step
Paste the three blocks into a copy of your current prompt, adjust the triggers to your business and run ten deliberately awkward test calls. Fix the first failure you hear before adding anything else.
References
• Vapi, Voice AI Prompting Guide: https://docs.vapi.ai/prompting-guide
• Fonoster, Write prompts for voice: https://docs.fonoster.com/autopilot/prompting
• Retell AI, Function calling for a custom LLM voice agent: https://docs.retellai.com/integrate-llm/integrate-function-calling





