Voice agents that speak like a local.
Agents that answer and place real phone calls in 30+ languages. Build one in an afternoon, put it on a number, pay per minute. Run it on our cloud — or inside your own, when the audio cannot leave your network.
Self-serve · pay per minute · live today
Ava · Northside Dental
Inbound · +1 (555) 010-0142
Connecting…
- Interrupt it. It stops.
- Says it’s an AI, up front
- Books against your real calendar
- Inbound and outbound
- 30+ languages
- Connects to your existing telephony
- Your cloud or ours
- No monthly commitment
Built for the calls small teams get every day
One platform, five jobs it already does well. Start with one line and one agent, and grow from there.
Customer support
Answers the questions you get every day from your own material, and hands over to a person when it should.
IVR replacement
Replace “press 1 for…” with a conversation that routes by what the caller actually says.
Outbound sales and collections
Follow-ups, reminders and collections from a list or your CRM, with every outcome written back.
Appointments
Books, reschedules and cancels against your real calendar, with time zones handled.
Multilingual service
One agent, 30+ languages, switching mid-sentence when the caller does.
Chapter 01 of 05
Sounds right
The part callers notice first: spoken sentences, a delivery chosen per reply, and an agent that stops the moment you speak.
It sounds like a person, not a phone tree
Every reply is written to be heard rather than read, and the way it is spoken is chosen per reply rather than fixed once per agent.
- Speaks in short, spoken sentences: the length a person actually uses on a call, not a paragraph read aloud.
- Warmth, calm or urgency is chosen for each reply and carried into the voice, so the delivery matches what is being said.
- Natural hesitations and acknowledgements where a person would use them, and none where they would not.
- Reads numbers, dates, codes and amounts the way a person says them aloud, and reads important ones back for confirmation.
- Register, courtesy forms and openers follow the language being spoken, not a translation of English phrasing.
How it works
The delivery instruction is generated per reply and mapped to whatever the selected voice can actually perform: pauses, emotion, rate or a spoken-style prompt. Anything the engine cannot perform is stripped rather than spoken aloud. Every call is scored afterwards on reply length, speaking rate, repeated sentences, stock phrases and filler use, and those numbers sit on the call record.
Composing reply
Sure, let me pull that up for you.pause One moment.
This voice can perform
- Pauses
- Emotion
- Rate
- Spoken-style prompt
Stripped, not spoken aloud
[laugh]
Anything the engine cannot perform never reaches the caller.
Scored after the call · on the record
It knows when to speak, and when to stop
Interruption and end-of-turn are decided from how the caller’s voice actually ends, which is what makes a phone conversation feel like a conversation.
- Interrupt it mid-sentence and it stops to listen, the way a person does.
- When you talk over it, its own voice drops out of your way instead of competing with you.
- A pause mid-thought is treated as a pause, not as your turn ending. It waits instead of talking over the end of your sentence.
- If a call goes silent it re-engages once, and ends the call cleanly rather than holding an empty line.
- If the caller says goodbye, the call ends there. No last word after the farewell.
How it works
End-of-turn is an acoustic decision, how the voice trails off, rather than a fixed silence timer or a keyword list, with barge-in gated so a one-word backchannel does not derail a sentence. Turn-taking is tuned for phone audio specifically, which behaves nothing like a laptop microphone.
1Caller interrupts
Agent stops mid-sentence and drops out of the way.
2Mid-thought pause
Treated as a pause, not a turn. The agent waits.
3Turn ends acoustically
The voice trails off. Now the agent replies.
Chapter 02 of 05
Does the work
Answers from your documents, books and updates your systems mid-call, remembers the last conversation, and hands over with context.
It answers from your material, and says so when it cannot
Upload the documents an agent should answer from, and it answers from them, or admits it does not know rather than inventing something plausible.
- Price lists, policy documents, product sheets, FAQs, scripts: uploaded, and used on the call.
- Answers are grounded in the retrieved passage, so they reflect the document rather than the model’s general knowledge.
- When nothing in the material covers the question, the agent says so and offers a next step instead of guessing.
- Product names, place names and industry terms can be taught to the recogniser, so they are heard correctly on a noisy line.
- Updating a document updates what the agent says. There is no prompt to rewrite.
How it works
Retrieval runs per turn and starts while the caller is still speaking, so the lookup is already in hand when the reply is composed. A miss is a hard block on answering rather than a soft hint, which is what stops a confident wrong answer.
Sources
price-list.pdf
Used on calls · updated today
cancellation-policy.docx
Used on calls
help.yourdomain.example
Crawled · re-checked nightly
Taught to the recogniser
Retrieved · insurance-policy.pdf · section 2
Retrieved while the caller was still speaking
It remembers the last conversation
When memory is switched on, an agent recognises a returning caller and picks up where the last call ended.
- Recalls what the caller asked for, agreed to, or was promised.
- Removes the “as I mentioned last time…” gap that makes automated calls feel like starting over.
- Off by default and enabled per agent, because not every use case should remember a caller.
Memory · this agent
Off by defaultReturning caller recognised
Jordan L. · last call: about a moved appointment
- Asked to move Thursday to the following week
- Agreed to a morning slot
- Was promised a text with directions
It does the work, not just the talking
Agents call your systems mid-conversation, booking, looking up, updating, creating, and speak the result back.
- Book, reschedule and cancel against a real calendar, with time zones handled.
- Look a customer up, check an order or a balance, and answer with what the system actually returns.
- Create or update a record in your CRM while the call is still running.
- Any internal API can be given to an agent as an action, with the words it should use while it waits.
- Actions that change something can be made to require the caller’s spoken confirmation first.
How it works
Each action is described to the agent with its own parameters and a natural “while I check that…” line, so a slow backend sounds like a person checking rather than dead air. Sensitive actions sit behind a read-back-and-confirm gate.
calendar.book(slot, patient, timezone)
orders.lookup(order_id)
crm.update(record, fields)
your.api(any parameters you define)
calendar.cancel(booking_id)
confirm first
While the backend works
It hands over to a person properly
A caller can reach a human at any point, and the human arrives with the context rather than asking the caller to start again.
- Ask for a person, press a key, or simply sound like you want one. All three route the call.
- The person receiving it is briefed on what the caller wanted before they speak.
- Transfer to a desk, a mobile, or a queue.
- Calls that end in a handover are marked as such, so you can see what your agents are handing over and why.
Asks for a person
“Can I speak to someone?”
Presses a key
0 pressed
Sounds like they want one
Frustration detected in tone
- Desk
- Mobile
- Queue
Brief for Dana · read before you answerWarm transfer
Jordan is calling about the cleaning booked for Wednesday at 8 and wants to know if the practice offers payment plans for a crown. Identity verified. Calm, in a hurry. The agent has already offered the following Wednesday and Jordan said no.
Chapter 03 of 05
Fits your setup
Your languages, your phone lines, your channels and your outbound lists. Nothing to replace.
It speaks your customers’ languages
One agent covers 30+ languages with code-switching mid-sentence, rather than a separate deployment per market.
- Callers switch language mid-sentence and the agent follows.
- Regional accents and dialects are supported within a language, not flattened into one.
- A library of voices to choose from, or a custom voice cloned for your brand.
- A language we do not yet cover can be added, typically in three to four weeks.
How it works
The language of the reply follows the caller turn by turn; it is not pinned at the start of the call.
Hello, how can I help?
Code-switching mid-sentence
Voice library
- Ava · Warm
- Kai · Calm
- Riley · Upbeat
- Your brand · Cloned
Coverage
30+ languages today. One you need that we do not cover yet can be added, typically in three to four weeks.
It runs on your phone lines
Agents connect to the telephony you already have, over SIP. No replacement of your phone system.
- Connects over SIP to your existing setup, including major cloud and on-premise platforms.
- Or take a number from us: call destinations in 180+ countries, numbers available in 20+.
- Inbound and outbound from the same agent. One build, both directions.
- Bring your own carrier account if you have one, and keep your rates.
- Recording, transcripts and per-number routing included.
How it works
Inbound routing is per number, so one account can run different agents on different lines, and an agent can be swapped on a number without touching the carrier.
Your phone system
Cloud or on-premise PBX · your carrier
CallWhiz AI agents
Inbound and outbound
- +1 (555) 010-0100Front deskAva
- +1 (555) 010-0142BillingKai
- +1 (555) 010-0177After hoursRiley
Swap the agent on a line without touching the carrier.
It is not only a phone agent
The same agent answers on the web, on WhatsApp and in your mobile app, with one set of instructions and one set of knowledge.
- An embeddable voice widget for your website. The caller clicks and talks.
- The official WhatsApp Business API, including tap-to-answer menus that fill in details without a round trip.
- Mobile: route a call to a teammate’s phone when they are available, and let the agent take it when they are not.
Front desk agent
One set of instructions · one set of knowledge · every channel
Phone
Inbound and outbound on your lines, over SIP or a number from us.
- Front desk lineInbound
- Renewals campaignOutbound
Web widget
yourdomain.exampleTalk to usThe visitor clicks and talks.
WhatsApp
Hi Jordan, want to book, move an appointment, or talk to a person?BookMove appointmentTalk to a personOfficial Business API. Tap-to-answer fills in details without a round trip.
Mobile
- Dana · availableRings her phone
- Dana · in a meetingAgent takes it
It makes the calls you never get around to
Run outbound campaigns from a list, a sheet or your CRM, with retries, pacing and per-call outcomes written back.
- Upload a list or connect a CRM; the campaign dials, talks, and records what happened.
- Failed and unanswered calls retry on their own schedule instead of being lost.
- Outcomes and extracted fields are written back to the source record.
- Pre-recorded campaigns with personalised details spliced in, where a full conversation is not needed.
- A campaign can be paused platform-wide, immediately, including calls that are ringing.
September renewals
Source: CRM list · paced · caller’s time zone · outcomes written back
- PPriya S.Renewal dueDialing
- MMarcus T.Renewal dueNo answer · retry scheduled
- EElena R.Reminder · pre-recorded, name spliced inQueued · 10:00 local
- TTom W.Renewal dueOpted out · honoured live
- AAisha K.Renewal dueDone · callback booked
Pausing stops the platform-wide campaign immediately, including calls that are ringing. Every outcome and extracted field lands back on the source record.
Chapter 04 of 05
You can trust it
Rules that are enforced rather than hoped for, tests before release, a full record of every call, and a build you can read.
It stays inside the rules you set
Compliance is a setting on the agent, not a paragraph in the prompt hoping to be obeyed.
Say it’s an AI
The agent states it is an AI before it starts.
OnCalling hours
Per agent, in the customer’s own time zone, enforced before a call is placed, not after.
09:00–18:00 · caller’s time zoneDaily cap per number
So nobody is called five times in a day by accident.
1 attempt per dayOpt-out honoured during the call
A caller asking not to be called again is recorded as such the moment they say it.
OnSensitive details protected in speech
Long numbers and one-time codes are masked rather than read aloud, and identity can be required before any account detail is discussed.
OnPolicy pack
Ready-made packs for regulated work, with the stricter rules locked on rather than left to configuration.
Regulated · floors lockedRetention and erasure
Recordings and transcripts age out on your schedule, and a caller’s data can be erased on request.
On your scheduleAudit trail
Who changed what, tamper-evident.
Tamper-evident
How it works
The guard sits between the model and the voice, so a rule breach is stopped before it is spoken, not flagged afterwards. Floors in a regulated pack cannot be relaxed from the console; relaxing one requires an audited override.
You can test it before your customers do
Agents are tested against written scenarios the same way software is, so a prompt change is checked before it reaches a caller.
- Write a scenario, an awkward caller, a refund demand, a wrong number, and run the agent against it.
- Turn a real call that went badly into a test case in one click.
- Compare two versions of an agent head to head before switching.
- A weekly improvement pass proposes changes, and a person approves or rejects each one. Nothing edits itself into production.
Front desk · candidate version
Compared with current- Awkward caller asks the same thing three timespass
- Refund demand outside policypass
- Wrong number, wants to leave anywaypass
- Caller switches to Spanish mid-sentencefail
- Asks for legal advicepass
Not switching yet
The candidate answered in English after the caller switched. Made from a real call in one click; fixed before any customer hears it.
You can see exactly what happened on every call
Every call leaves a full record: recording, transcript, outcome, who ended it and why, what the agent did, and how it sounded.
- Recording and searchable transcript.
- Outcome and end reason on every call: resolved, transferred, callback, abandoned, opted out.
- The actions the agent took, and what came back.
- A post-call summary that quotes the call rather than paraphrasing it.
- How it sounded: speaking rate, reply length, repeated sentences, filler use, so “it sounds robotic” becomes something you can point at and fix.
Actions taken
- calendar.find_slots 3 slots
- calendar.book booked
Summary · quotes the call
Caller asked for “a cleaning sometime next week, ideally in the morning”; booked “Wednesday at 8” and confirmed by text.
How it sounded
Building one takes an afternoon
Describe the job in plain language and the agent is drafted for you, section by section, with the gaps flagged before it goes live.
- Describe the job; the instructions are written for you, then edited by you.
- A lint pass catches the mistakes that cause bad calls: missing boundaries, a tool the agent cannot actually call, a rule that contradicts the compliance pack.
- Every version is kept, with who changed it and when, and any version can be restored.
- Test by phone or in the browser before it goes anywhere near a customer.
Describe the job
“Answer calls for a dental practice. Book and move appointments, answer questions about prices and insurance from our documents, take messages after hours, and put anyone who asks through to the front desk.”
Drafted section by section, then yours to edit
Greeting and who it isdrafted
What it can help withdrafted
Boundarieslint
Missing: what to do when asked for legal advice
Actionslint
“refund_order” is not attached to this agent
Handoverdrafted
Compliancelint
Calling hours contradict the regulated pack
Versions
- v12 · Dana · todaylive
- v11 · Sam · yesterdayrestore
- v10 · Dana · last weekrestore
Chapter 05 of 05
You can afford it
An API for developers, a deployment that fits your data rules, and pricing a small team can start on today.
Developers get the whole thing as an API
Everything the console does is an API call, and every call can push events to your systems.
- Create and manage agents, place calls and read call records programmatically.
- Web SDK with signed tokens and domain allow-listing for browser calling.
- Webhooks before a call (to look the caller up) and after it (to file the result).
- Published OpenAPI description; bearer-token auth.
Before the call
call.started
Look the caller up and hand the agent what you know.
After the call
call.completed
File the outcome, the summary and the extracted fields.
import { CallWhiz AI } from "@callwhiz/sdk";
const callwhiz = new CallWhiz AI({ apiKey: process.env.CALLWHIZ_API_KEY });
// Draft an agent from a plain-language description of the job
const agent = await callwhiz.agents.create({
name: "Front desk",
job: "Dental front desk: book and move appointments, take messages after hours.",
voice: "ava",
languages: "auto",
knowledge: ["kb_pricing", "kb_policies"],
actions: ["calendar.find_slots", "calendar.book", "crm.create_note"],
compliance: { discloseAi: true, callingHours: "09:00-18:00" },
});
// Put it on a number you own or one you bought from us
await callwhiz.numbers.assign("+1 555 010 0100", { agentId: agent.id });
// Place an outbound call
const call = await callwhiz.calls.create({
agentId: agent.id,
to: "+1 555 010 0142",
metadata: { leadId: "L-2291" },
});
console.log(call.id, call.status);{
"event": "call.completed",
"call_id": "call_01J9",
"agent_id": "agt_frontdesk",
"direction": "inbound",
"outcome": "resolved",
"ended_by": "caller",
"end_reason": "goodbye",
"actions": [
{ "name": "calendar.book", "status": "ok" }
],
"summary": "Asked for a cleaning next week; booked Wednesday at 8.",
"recording_url": "https://…",
"transcript_url": "https://…"
}Run it where your data has to live
The same platform runs as SaaS, inside your own cloud account, or on your own hardware, with the same features either way.
SaaS
Sign up and be live today.
Self-serve · pay per minute
Your cloud
The platform inside your own AWS, Azure or GCP account, so call audio never leaves your boundary.
Scoped, then live in about 30 days
On-premise
Bare metal or Kubernetes, for networks with no cloud at all.
Scoped, then live in about 30 days
Available when you need them, not required to start
- SSO and role-based access
- Data residency by region
- Multi-tenancy
- 99.9% uptime SLA
The same features in every mode. In-cloud and on-premise deployments are scoped first, then live on real calls in about 30 days.
Pricing that a small team can start on
Pay per minute from credits, with no platform fee, no per-seat charge and no monthly commitment.
- One credit is US$0.01.
- A standard-voice minute is about five credits; premium voices about seven; realtime models eight to fifteen.
- No platform fee, no seat licences, no minimum.
- Larger deployments are quoted separately.
Estimate your month
About
$50a month
5,000 credits · 5 credits a minute · one credit is US$0.01
An estimate. Billed per minute from credits. No platform fee, no seat licences, no minimum. Larger deployments are quoted separately.
Objections, answered without being asked
Short answers that stand on their own.
No. Sign up, build an agent, put it on a number, be live today. Scoping applies only when you want it running inside your own infrastructure.
No. Most customers are small and mid-sized teams paying per minute. The controls large companies need exist; they are not required to start.
No. It connects to your existing telephony over SIP. You keep your numbers, your carrier and your setup.
It does not have to. The same platform runs inside your own cloud account or on your own hardware.
Interrupt it and it stops. It speaks in spoken sentences with a delivery chosen per reply, and every call is measured for the things that sound wrong so they can be fixed.
It says so and hands to a person, with the context. It is built to admit a gap rather than invent an answer.
Credits. One credit is one cent; a standard-voice minute is about five. Nothing else on the bill.
Put an agent on a number this afternoon.
Sign up, describe the job, attach a line, and pay per minute. When you want a walkthrough, or the audio has to stay inside your network, book a demo and we’ll scope it with you.
No platform fee · no seat licences · no minimum