Answering Machine Detection (AMD)
Answering Machine Detection tells you whether a live person or a machine answered your outbound call, and ends calls that reach voicemail or an IVR automatically.
Why use AMD
Many outbound calls never reach a person. They end up on voicemail, an answering machine or an automated menu. AMD finds these calls in the first few seconds and drops them, so that:
- Your agents spend their time on real conversations, not on listening to voicemail greetings.
- Your AI agents don't waste tokens talking to a voicemail box or another bot.
- Your campaign reports are accurate, because every call shows whether it reached a human or a machine.
AMD is a good fit for outbound campaigns, automated notifications, telemarketing and AI voice agents placing outbound calls.
How it works
- AMD is set up for the destinations you need. We turn AMD on for specific countries or number ranges, for example, the whole UK (
44) except for a single range. Calls to destinations outside your list are placed as usual, without AMD and without an AMD charge. - AMD listens when the call is answered. It analyzes the first seconds of audio, which usually takes 3–4 seconds, and decides whether a human or a machine answered.
- Calls answered by a machine are ended. The call ends with the hangup cause
AMD_MACHINE. AMD treats voicemail and IVR menus the same way, so calls that land on an IVR are ended too. - The result is saved with the call. You can review it in your call history and through the API. See Tracking results.
Supported countries
AMD has to understand the local language of a voicemail greeting. It works reliably in these countries:
| Region | Countries |
|---|---|
| North America | United States (+1), Canada (+1) |
| South America | Brazil (+55), Chile (+56), Colombia (+57), Mexico (+52) |
| Europe | Belgium (+32), Denmark (+45), France (+33), Germany (+49), Italy (+39), Netherlands (+31), Norway (+47), Poland (+48), Portugal (+351), Spain (+34), Sweden (+46), Switzerland (+41), United Kingdom (+44) |
| Asia | Indonesia (+62), Malaysia (+60), Saudi Arabia (+966), Singapore (+65), Thailand (+66), United Arab Emirates (+971) |
| Oceania | Australia (+61), New Zealand (+64) |
We keep adding countries to this list. If the country you need isn't listed, ask your account manager: it may already be supported.
How to enable AMD
AMD is turned on by our team. Contact your account manager or [email protected] and tell us which destinations you want AMD on. We can also enable it for a trial period.
Tracking results
Every call in your call history shows a Hangup Cause. Calls where AMD ran also show an AMD Status and an AMD Score.
Hangup Cause
| Hangup Cause | Meaning |
|---|---|
NORMAL_CLEARING | The call was answered and ended normally. |
NO_ANSWER | Nobody answered. |
BUSY | The line was busy. |
AMD_MACHINE | AMD detected a machine (voicemail or IVR) and ended the call. |
FAILED | The call could not be connected. |
AMD Status and AMD Score
| Field | Meaning |
|---|---|
| AMD Status | What AMD decided: machine, human or notsure. |
| AMD Score | How confident AMD is in its decision, from 0 to 100%. |
AMD Status and AMD Score are empty for calls where AMD didn't run.
Where to find them
- Call history export: open History in the portal and click the export button. The file includes the Hangup Cause, AMD Status and AMD Score columns.
- API: each call record includes the fields
hangup_cause,amd_statusandamd_score. See Calls API.
Billing
- Charged per call. AMD is charged for every outbound call to a destination on your AMD list, whatever the result: human, machine or not sure. The charge doesn't depend on the call's length.
- Calls outside your AMD list are not charged. AMD doesn't run on them.
- Your price: contact your account manager.
- Transaction history: AMD charges appear as separate transactions. Filter by AMD to see them.
- Invoices and statements: AMD appears as a separate AMD line with the number of calls processed and the total amount for the period.