An AI cold calling bot greets the person with fixed words, checks whether a person or a machine answered, handles voicemail and call screeners, answers objections and hands interested people to a rep. It fails most often on bought lists and misread voicemails. Dograh, the open-source AI voice agent platform we build, runs self-hosted or on Dograh Cloud.
Key Takeaways
- No bot setting fixes a call made without consent.
- A slow "hello" can be misread as a voicemail greeting.
- Let the bot answer an objection once, then accept the answer.
A cold call from a bot runs through a fixed set of phases, and each one has its own way to go wrong. Below, we follow the call in order, from the consent check to the handover to a rep, showing how each phase works in Dograh.
Consent comes before the bot dials
The bot's first job happens before any call: making sure the person may be called at all. In the US, an AI voice is an artificial voice under the Telephone Consumer Protection Act (TCPA), as the Federal Communications Commission (FCC) confirmed for AI-generated voices. Cold calls are sales calls, so they need prior express written consent from the person, and a list bought from a broker carries none.
The same FCC calling rules limit sales calls to 8 a.m. to 9 p.m. in the called person's local time and require a check against the National Do Not Call Registry and your own do-not-call list. A voicemail left in an AI voice is an artificial-voice message too, so it needs the same consent. Take this as a plain-words summary, and confirm with counsel how it applies to your list before the bot dials anyone.
Rules differ outside the US. For people in the EU, the AI Act asks for a spoken AI notice at the start of the call, which our post on what a voice agent must tell callers under Article 50 covers. Whether a US call opens by saying it is an AI depends on where the person is and which state laws apply.
The first seconds: greeting and who answered
The bot speaks first with fixed words, not generated ones, because the opening carries the legal identification. In Dograh, the opening is the Greeting Text on the Start Call node, played word for word, or a pre-recorded clip of a real person. If Pre-Call Data Fetch pulls the contact's record first, the greeting waits for it and the person hears ringing a moment longer.
The greeting names the business and gives a callback number, and for sales calls it offers a way to stop the calls within two seconds of that identification. Allow Greeting Interruption is on by default, so a prospect who says "Who's this?" over the greeting can cut it off before the required words play. Switch it off if the identification sits in the greeting.
At the same time, the bot has to work out who answered. With voicemail handling switched on, Dograh treats a short first answer, under two and a half seconds, as a person. Longer speech is checked against fixed voicemail phrases, then sent to a language model that has three seconds to label it. When the answer is unclear, the call goes to the agent as a person, a choice called fail open. Our post on the first 15 seconds of AI outbound calls covers why speed and delivery decide whether the prospect stays.

Voicemail and call screeners
What the bot does at a voicemail box is your choice, and it does nothing until you switch the feature on. Voicemail handling is off by default. Once you turn on "Enable voicemail and screening handling" in the agent's Settings, "When voicemail is detected" starts at Disconnect the call, and Leave a message plays a text or recorded message instead.
Call screeners are the newer problem. Phone assistants now answer unknown numbers and ask who is calling and why. Dograh can play a screening message, such as the caller's name and the reason, and then wait up to 30 seconds for the person to pick up, with at most two tries. If the screening message is empty, the bot ends the call at the screener.
Campaign retries interact with both. With the Voicemail retry switch on, a voicemail answer earns another call later, and if the bot leaves a message every time, one person can collect several recordings of the same pitch. Pick one of the two, and keep the message short enough to finish before the mailbox cuts it off.
Open Source Alternative to Vapi / Retell
Self-hosted voice agent platform — no per-minute fees
dograh-hq/dograh
Star on GitHub
Objections, opt-outs and handing to a rep
Objections are handled by prompt guidance, so the words are generated each time. Tell the agent in the node prompt to answer an objection once, briefly, and then accept the answer. Because a language model writes the reply, it can drift from your wording, and it can promise things you never offered unless the prompt rules that out. Our AI cold call script templates give tested lines for the common objections and the fixed opening.
Opt-outs need a firm path. When someone asks not to be called again, the agent confirms it, writes the request to your system through an HTTP API tool, and ends the call. HTTP API tools do not retry on their own, so the prompt should tell the agent what to say if the write fails, and someone should check those calls the same day.
Interested prospects go to a person. Transfer Call dials the rep while the prospect hears hold music and connects them once the rep answers. If the rep is busy or does not answer within the timeout, the agent is told the transfer failed and the call continues, so the prompt should offer to book a callback instead.
Where cold calling bots fail
Each failure traces back to a specific mechanism you can find and fix. Spam labels come first, because a number that has drawn complaints is labelled before anyone answers. Then the answer check misfires in both directions. A voicemail greeting that starts with a quick "Hi, it's Sam" can pass as a person, and a person who answers with a long "Hello, this is Sam at Acme, how can I help?" can be sent to the voicemail check.
People are also wary of synthetic voices. Hiya's State of the Call 2026 report, a survey of more than 12,000 consumers in six countries by a call-labelling company, found that 1 in 3 people had received a deepfake call. A bot that sounds human but dodges the question "Am I talking to a real person?" walks straight into that suspicion.
The rest happen inside the conversation. Objection loops start when the prompt does not say when to stop, and invented promises appear when it does not say what the bot must never offer. Dead air during a slow lookup makes people end the call. Most phone calls also still reach the agent as 8 kHz audio, while a browser demo runs at 16 kHz, so names and numbers can be misheard more often on a real line, depending on the speech-to-text model. Test over a real phone call before launch.
Join the Dograh Community
Dograh is an OSS alternative to Vapi. Join our Slack community for queries, releases, best practices & community interactions.
Catch failures before they cost you
You find these failures by reading calls, not dashboards. Open the full call trace for any call that ended early or went to voicemail by mistake, and you can see the timing of every layer for each turn. Then run QA on a sample of campaign calls, since it scores each step and flags calls that went off script.
Where you run the bot changes what you can inspect. The platform is open-source, so you can self-host it with your own carrier and model keys, or local models, and keep every recording on your servers, or run it on the managed cloud. Self-hosted Dograh has no per-minute platform fee, but servers, model keys and phone minutes still cost money. Dograh Cloud charges a 1¢-a-minute platform fee.
If you are still choosing a tool, our comparison of the best AI cold calling software sets voice agents against AI dialers, and the ultimate guide to AI cold calling covers consent, caller ID and measuring results end to end. Start with one consented list, listen to the first fifty calls, and fix the phase that breaks most often before you scale.
Glossary
- Answer check
- The step at the start of an outbound call that decides whether a person or a machine answered. In Dograh a short first answer counts as a person, and longer speech goes through voicemail phrases and then a language model.
- Call screener
- A phone assistant that answers unknown numbers and asks the caller to say who they are and why they are calling before the person picks up. A bot can play a screening message and wait for the person.
- Fail open
- Sending an unclear answer to the agent as if a person picked up, instead of ending the call. It risks talking to a voicemail box but avoids ending the call on a real prospect.
- Prior express written consent
- A signed agreement, which can be electronic, to receive sales calls with an artificial or prerecorded voice at a given number. US AI-voice cold calls need it, and bought lists do not carry it.

