Answering Machine Detection (AMD): How It Works
Answering machine detection (AMD) is software on a dialer that listens to the first seconds of audio after a call is answered and classifies the answer as a live human or a machine. Humans get routed to agents; voicemail greetings get dispositioned and torn down. AMD runs on the dialer itself — Asterisk’s app_amd, VICIdial’s AMD integration — not at the carrier. It is a heuristic, not a certainty: it guesses from audio patterns, and every guess it gets wrong either wastes an agent’s time or hangs up on a live person.
That last failure mode is why AMD is a compliance topic and not just an efficiency one. A live person answered and abandoned by a false-positive AMD decision counts against the FCC’s abandoned-call limit, the same as a pacing overrun. This guide covers how the detection actually works, why the accuracy ceiling exists, how AMD interacts with the 3 percent abandoned-call rule, and what the carrier underneath the dialer contributes to detection accuracy. SIPNEX is an FCC-licensed carrier for predictive dialer operations — we do not sell an AMD product, and neither does any honest carrier, because AMD is a dialer-side function. What the carrier controls is the audio the AMD algorithm hears.
Where AMD sits in the call flow
A predictive dialer places more calls than there are available agents, betting that most will not be answered by a live person. When a call is answered — the carrier relays the SIP 200 OK from the far end — the dialer has a decision to make before committing an agent: is this a human or a machine?
That decision happens on the dialer server. In an Asterisk-based stack like VICIdial, the AMD application attaches to the answered channel and analyzes the inbound audio stream for a few seconds. It then returns a status — human, machine, or not sure — and the dialer acts on it. Human: bridge to an agent immediately. Machine: disposition the lead (typically as an answering machine), optionally leave a message, and hang up. Not sure: campaign configuration decides, and the safer setting is to treat it as human.
The carrier’s job in this flow is transport. SIPNEX authenticates the trunk, signs the call with A-level STIR/SHAKEN attestation, routes it, and passes the answered audio back to the dialer unmodified. The classification logic, thresholds, and dispositions all live in your dialer configuration.
How the detection actually works
AMD is audio-pattern analysis, and the core insight is behavioral: humans and machines answer phones differently. A human picks up and says something short — “Hello?” — then goes silent and waits for a response. An answering machine or voicemail greeting launches into a longer, continuous statement: “Hi, you’ve reached the Nguyen family, we can’t come to the phone right now, please leave a message after the tone.”
The algorithm measures that difference using a handful of timers and counters applied to the early audio:
- Initial silence. How long before any speech starts. Long silence after answer leans machine (or a dead line).
- Greeting length. How long the first burst of continuous speech runs. Short burst then silence leans human; a long unbroken greeting leans machine.
- After-greeting silence. A human stops talking and waits. Sustained silence after a short utterance is the classic human signature.
- Word count and word length. The analyzer counts discrete voiced segments. One or two words leans human; a string of many words leans machine.
- Tone detection. A voicemail beep is a strong machine signal, and beep detection is how “leave a message on the machine” features know when to start playback.
Asterisk’s app_amd exposes each of these as tunable parameters — initial silence, greeting duration, after-greeting silence, minimum word length, maximum number of words, and a total analysis window that defaults to five seconds. VICIdial passes campaign-level settings into that same engine. Every AMD tuning exercise is fundamentally the same activity: adjusting those thresholds against the answering behavior of the population you are dialing.
Why 100% accuracy is impossible
The reason no AMD implementation reaches 100 percent is that the two categories overlap at exactly the moment the decision must be made. A human who answers with “Hello, this is Sarah at Coastal Realty, how can I help you?” sounds like a greeting recording. A voicemail message recorded as a terse “Leave a message” sounds like a human. Businesses with live receptionists reading scripted openings, consumers who answer in a noisy car, machines with human-recorded casual greetings — the edge cases are endless, and the algorithm has only a few seconds of audio to work with.
That time budget is the second constraint. The longer AMD listens, the more confident its classification — but every additional second of analysis is a second a live human stands there saying “Hello? Hello?” into silence. Humans interpret that gap as a robocall and hang up, which destroys the contact even when the classification would have come back correct. And as covered below, the FCC’s abandoned-call definition puts a hard regulatory ceiling on how long you can leave a live answer waiting. AMD is therefore an engineered trade-off between three losses: misclassified machines that waste agent time, misclassified humans that burn leads and create compliance exposure, and detection delay that causes hang-ups all by itself.
Treat any vendor’s flat accuracy percentage with suspicion. Detection performance depends on the population being dialed — consumer versus business, mobile versus landline voicemail, regional answering habits — and on the audio quality delivered to the algorithm. The same thresholds that perform well on one campaign’s leads can misfire on another’s.
The compliance stake: AMD and the FCC 3% rule
The FCC’s TCPA rules cap abandoned calls at 3 percent of calls answered by a live person, measured per campaign over a 30-day period. An abandoned call is one where a live person answers and no agent is connected within 2 seconds of the person’s completed greeting. Each abandoned call carries statutory damages of $500 to $1,500. The full measurement methodology is in our abandoned call rate guide; what matters here is how AMD feeds that calculation on both sides of the fraction.
AMD false positives add to the numerator. When AMD decides a live human is a machine and the dialer hangs up, a live person answered and no agent connected — that is an abandoned call under the FCC definition, regardless of what your dialer logged it as. An operation whose pacing is conservative can still fail the 3 percent test on AMD misclassification alone, and the dialer’s own drop report may not show it because the calls were dispositioned as machines.
AMD also shapes the denominator. Only live-human answers count in the abandon-rate calculation — voicemail answers are excluded. If AMD misclassifies machines as humans, it inflates the denominator and makes your measured rate look better than reality; if it misclassifies humans as machines, it shrinks the denominator while silently adding hidden abandons. Miscategorized AMD dispositions distort abandon-rate reporting in both directions, which is why compliance reviews should sample AMD-dispositioned call recordings, not just trust the summary numbers.
Tuning AMD: accuracy vs answer-rate economics
Whether to run AMD at all is an economics question before it is a settings question. Aggressive AMD maximizes agent talk time — agents only hear live humans. But every false positive throws away an answered call from a lead you paid to acquire and dialed at per-minute cost, and hands you a potential TCPA violation as a bonus. Conservative AMD (or none) protects every live answer but sends agents a steady stream of voicemail greetings to disposition manually.
The practical tuning guidance, from operators who run this daily:
- Bias toward human on uncertainty. Configure “not sure” results to route to an agent. A wasted few seconds of agent time is cheaper than an abandoned call at $500 minimum.
- Shorten the analysis window before you sharpen the thresholds. Long analysis windows cause human hang-ups even when classification is correct. If contacts report dead air, the window is too long.
- Tune per campaign, not globally. Consumer mobile voicemail, residential landline machines, and business receptionists have different audio signatures. A national B2C campaign and a B2B campaign should not share thresholds.
- Audit with recordings. Pull a sample of machine-dispositioned calls weekly and listen. The percentage of live humans in that pile is your hidden abandon contribution.
- Consider progressive dialing for high-value leads. When each contact is expensive, one-call-per-agent pacing with no AMD removes both the misclassification risk and the abandoned-call risk entirely.
What the carrier controls: the audio AMD hears
AMD is only as good as the audio delivered to it, and that is the layer the carrier owns. Three carrier-side properties directly affect detection accuracy.
Codec pass-through. AMD heuristics are tuned for uncompressed waveforms. G.711u delivers the full 64 kbps audio stream; G.729 compression discards signal detail, and that lost detail raises AMD false-positive rates. A carrier that transcodes your calls to a compressed codec mid-path degrades your detection without touching your dialer config. SIPNEX passes G.711 natively with no carrier-side transcoding, which is the codec recommendation we give every dialer operation.
Clean early media and answer signaling. AMD’s timers start when the dialer believes the call was answered. Sloppy answer supervision — late 200 OK, ringback bleeding into the answered stream, clipped first syllables — shifts the audio relative to the timers and corrupts the measurements the classifier depends on. The first fraction of a second of the called party’s greeting is exactly the evidence AMD needs most.
Consistent PDD. Post-dial delay does not change what AMD hears on one call, but variable call setup timing breaks the predictive pacing that decides how many answered calls arrive at once. When pacing lurches, agent availability lurches, and operators respond by tightening AMD aggressiveness to compensate — trading misclassification risk for a pacing problem the carrier created. SIPNEX targets sub-3-second PDD with low variance so the algorithm sees the stable timing it assumes.
None of this makes the carrier an AMD vendor. It makes the carrier the floor under your AMD accuracy — and a floor you should test, which is why we provision test trunks so you can compare detection performance on the same leads against your current provider.
Frequently asked questions
What is answering machine detection on a dialer?
Answering machine detection (AMD) is dialer-side software that analyzes the first seconds of audio after a call is answered and classifies the answer as a live human or a machine. It measures patterns like initial silence, greeting length, silence after the greeting, word count, and voicemail beep tones. Humans typically answer with a short utterance and then wait; machines play a long continuous greeting. Based on the classification, the dialer bridges the call to an agent, dispositions it as an answering machine, or applies a campaign rule for uncertain results. In Asterisk-based systems like VICIdial, this is implemented by the app_amd application with campaign-tunable thresholds.
How accurate is answering machine detection?
No AMD implementation reaches 100 percent, because human and machine answers overlap in exactly the seconds when the decision must be made — a scripted business greeting sounds like a recording, and a terse voicemail message sounds like a human. Accuracy depends on the population being dialed, the tuning of the thresholds, and the audio quality delivered by the carrier: compressed codecs like G.729 discard waveform detail and raise false-positive rates, which is why G.711 pass-through is the standard recommendation for dialer trunks. Treat any flat vendor accuracy claim with suspicion and validate against your own leads by auditing recordings of machine-dispositioned calls.
Do AMD false positives count as abandoned calls under FCC rules?
Yes. The FCC defines an abandoned call as one answered by a live person where no agent connects within 2 seconds of the person’s completed greeting. If AMD misclassifies a live human as a machine and the dialer hangs up, a live person answered and no agent connected — that meets the definition regardless of how the dialer dispositioned the call. Those hidden abandons count toward the 3 percent per-campaign, 30-day limit, and each one carries statutory damages of $500 to $1,500. The full rule is covered in our abandoned call rate guide.
Should I turn AMD off for compliance?
Not necessarily — it is a trade-off, not a rule. Disabling AMD eliminates misclassification risk but sends every voicemail answer to an agent, which cuts productivity and can push operators toward more aggressive pacing that creates its own abandon risk. The middle path most operations use: keep AMD on, bias uncertain results to route to agents, shorten the analysis window to avoid dead-air hang-ups, tune thresholds per campaign, and audit machine-dispositioned recordings weekly. For high-value leads where every answered call matters, progressive dialing without AMD removes both risks at the cost of throughput.
Does SIPNEX offer an AMD service?
No, and no carrier honestly can — AMD is a dialer-side function that runs on your Asterisk, VICIdial, or contact center platform. What SIPNEX controls is the layer AMD depends on: native G.711 pass-through with no carrier-side transcoding, clean answer supervision and early media so the classifier’s timers line up with the actual greeting, and consistent sub-3-second PDD so your predictive pacing stays stable. Our support engineers run VICIdial and advise on codec and AMD tuning as part of dialer-specific support, but the AMD software itself lives on your dialer.
SIPNEX provides unlimited-channel SIP trunks built for predictive dialers — native G.711 pass-through for AMD accuracy, A-level STIR/SHAKEN attestation, and consistent sub-3-second PDD, at published wholesale per-minute rates. Test your AMD hit rate on a SIPNEX trunk against your current carrier: request a test trunk or call (833) 665-2220.
Keep reading.
The carrier built by operators, for operators.
FCC-licensed carrier with its own STIR/SHAKEN SP certificate. Operator-owned. SIP trunks built for operators who dial at volume.