Skip to content

Hang up on voicemail before the beep.

Streaming answering machine detection for outbound calls. Human, machine or undecided, in the first seconds of the call and always before your deadline.

Opening soon. We’ll email you when the sandbox opens.

Personal voicemailListening

Every greeting you listen to is billed.

A dialer that cannot tell a person from a voicemail pays for the greeting, and for whoever is waiting on the other end.

  • Contact centers

    Agents say hello to greetings, and stop dialing while they do.

  • Voice AI

    Speech-to-text, the LLM and text-to-speech run on every second of a greeting.

  • Every dialer

    Carrier minutes are billed from the answer: greeting, beep and the silence after it.

At 20,000 answered calls a day, about $5,040 a month goes to listening to machines. Run your numbers

Hear it decide.

Four listeners hear the call at once. The engine weighs what they report every 250 ms and answers as soon as the evidence agrees.

It sounds like a person, but it never stops to listen.

Call audio
Voice
Sound
speechspeechspeechspeechspeechspeechspeechtone
Silence
Fingerprint
Decision

Listening 0.00 s

Synthesized audio at 8 kHz through G.711 µ-law. Timings are illustrative and follow how the engine decides.

Median time to verdict
2.4 sTBD
From answer to verdict, across all verdicts.
Voicemails cut before the beep
94%TBD
Greetings ended before the record tone.
Verdict accuracy
97%TBD
On a held-out set of labeled calls.
People treated as machines
< 1%TBD
Live persons sent down the voicemail path.

Values marked TBD are placeholders until the benchmark is published.

You set the deadline. It answers inside it.

Pick a mode per stream and send a deadline. The engine answers 500 ms before it: with a verdict, or with an explicit undecided your dialer can act on.

Mode

The default. Waits for a confirming window before it calls a person a person.

Live person
human · 2.4 s
Busy signal
machine · 1.1 s
Dead air
machine · 3.1 s
Carrier voicemail
machine · 3.2 s
Personal voicemail
undecided
Answering bot
undecided
Budget
0s1s2s3s4s

The hatched end of the budget is the 500 ms answer margin. Illustrative timings.

Fits the telephony you already run.

Stream from Asterisk, FreeSWITCH, gRPC or WebSocket in µ-law, A-law or linear PCM, at 8 or 16 kHz. Not streaming? Send a recording over REST and get the same verdict.

Asterisk · ARI · chan_websocket · AudioSocket
; Answered calls enter Stasis; vmd-connector snoops the channel over ARI and streams
; the callee audio to the engine (chan_websocket, AudioSocket or RTP external media).
[outbound-amd]
exten => s,1,Set(VMD_MODE=balanced)
 same => n,Set(VMD_DEADLINE_MS=4000)
 same => n,Stasis(vmd)                    ; returns with VMD_LABEL and VMD_REASON set
 same => n,GotoIf($["${VMD_LABEL}" = "human"]?agents,s,1)
 same => n,Hangup()                       ; machine or undecided: free the trunk

API v1 preview. Read the Asterisk guide

Priced per call that gets a verdict.

1,000 calls free every month, then from $0.004TBD per call. No per-minute meter, no setup fee.

See pricing

Asked by people who run dialers.

Does it work on 8 kHz telephone audio?

Narrowband is home turf: G.711 µ-law, A-law and linear PCM at 8 kHz, the way calls cross real trunks. Wideband 16 kHz streams are supported too.

Which languages does it support?

It listens to how the call behaves rather than to its words: voice activity, turn-taking, tones, synthesized speech and acoustic fingerprints. That is not tied to one language. Known-greeting libraries are tuned per region.

Do you keep call audio?

By default, audio is processed in memory to produce the verdict and is not kept. Keeping recordings for review is an opt-in workspace setting.

How do we evaluate it before switching?

Run it in shadow mode next to your current AMD: it logs every verdict and acts on none, so you can compare call by call. Or send last month’s recordings over REST for a backtest. Both use the free quota first.

Stop paying to listen to greetings.

Opening soon. We’ll email you when the sandbox opens.