Comparison

Twilio answering machine detection vs VM Hunter

Twilio's built-in AMD is a parameter on the outbound call. VM Hunter is a dedicated detector that listens to what is said and returns a richer verdict. Here is what each gives you, and how to run them side by side.

Both answer the same question at the moment of answer: person or machine. They differ in what they listen for, what they tell you afterwards, and how much you can check. This page sticks to what each product documents and to what you can measure on your own calls.

Side by side

Twilio AMDVM Hunter
How you turn it onThe MachineDetection parameter on the call (Enable or DetectMessageEnd)A Media Stream from your TwiML to the VM Hunter bridge, or any dialer that can stream audio
ResultAnsweredBy: human, machine_start, machine_end_beep, machine_end_silence, machine_end_other, fax, unknownAMDSTATUS HUMAN / MACHINE plus AMDCAUSE with the reason
Decides fromTwilio's audio analysis of the answer (its documentation does not describe the method in detail)A transcript of the first two seconds, plus tone and silence analysis
Carrier prompts, IVRsReported as machine or unknownRecognised by wording and labelled MACHINE
Call screening (iPhone, Google)Not a documented categoryLabelled CALLGUARD_PHRASE so you can answer it
Disconnected numbersNot a documented categorySIT tones labelled DISCONNECT
Evidence per callThe AnsweredBy valueTranscript, reason and audio sample in the portal
Works outside TwilioNoYes: VICIdial, Asterisk, FreeSWITCH and any WebSocket client
StatusGenerally availableTwilio bridge in beta; other integrations in production

When Twilio's AMD is the right choice

  • You are already on Twilio and want detection with no extra moving parts. One parameter, no bridge to host.
  • Your use case is notifications, where the cost of a wrong verdict is a replayed message rather than a lost lead.
  • You do not need to know why a call was called a machine.

When VM Hunter is the right choice

  • Live agents are waiting on the verdict, so false machines cost you reachable people and false humans cost agent time.
  • You want to handle call screening and disconnected numbers differently from voicemail.
  • You need to audit verdicts: a transcript and a recording for every call, not a label.
  • You run more than one telephony platform and want one detector across them.

How to compare them on your own calls

  • Split one list across two campaigns: one with MachineDetection on, one through the VM Hunter bridge.
  • Record both. Twilio's AnsweredBy gives you a label; VM Hunter's call logs give you the transcript and audio.
  • Score each call by what is audible in the first two seconds, not by how the call ended. Count false machines (people dropped) separately from false humans (voicemails reaching agents); they cost different things.
  • Compare time to verdict from your own timestamps.

The bridge, its systemd unit and a Caddy TLS example are on GitHub; the setup is in the Twilio guide.

FAQ

Questions

Can I use VM Hunter on Twilio calls?

Yes, through the Twilio bridge: your TwiML starts a Media Stream to the bridge, the bridge gets the verdict from VM Hunter and redirects the call to your TwiML for a person or for a machine. The bridge is open source and currently in beta.

Do I need to switch off Twilio's AMD to use VM Hunter?

You would not run both on the same call. Leave the MachineDetection parameter off and let the bridge decide, or run them on different campaigns while you compare.

Which is faster?

VM Hunter returns its verdict about two seconds after answer on a normal call. Twilio documents its own detection timing; compare on your own calls, since both depend on how quickly the callee speaks.

Which is cheaper?

Twilio charges a per-call fee for AMD on top of voice minutes; see its pricing page for the current rate. VM Hunter is priced per call analysed with a free plan of 5,000 calls a month and paid plans from $100 a month. Which is cheaper depends on volume; the pricing page has the numbers.

Does VM Hunter work with Twilio Flex or a Twilio-based dialer?

If you can start a Media Stream on the outbound leg at answer and redirect the call from a webhook, yes. That is what the bridge does. Platforms that hide the call control from you cannot use it.

Try it on one campaign

The free plan includes 5,000 calls a month, enough to run VM Hunter next to your current AMD for a day and compare the dispositions. No card needed.