Demystifying AMD: How Answering Machine Detection Algorithms Actually Work

For progressive and predictive dialer sales campaigns, a sophisticated Answering Machine Detection (AMD) algorithm is essential for maximizing dialing efficiency and conserving agent time. This algorithm is run on every call the dialer places, determining whether the call went to voicemail or the contact picked up. It needs to be finely tuned: too many false positives waste agents' time by connecting them to voicemails, while overly aggressive settings risk misclassifying human-answered calls as machines, leading to abandoned leads and a poor customer experience. Despite its importance, AMD often seems like a black box with unpredictable decision making. In order to select an effective dialer with a reliable AMD, ​​it’s helpful to understand the factors that influence its decisions and how to measure its accuracy. 

Relevant Factors

The most sophisticated answering machine detection algorithms rely on multiple factors to most accurately categorize calls as answered or unanswered by a human. These factors include: 

Ringing Time

The length of time a call rings before connecting to a human or answering machine is a strong indicator of who picked up. The vast majority of calls with a very short (e.g., less than 1 second) or very long ringing time (e.g., greater than 30 seconds) are not answered by a human, and effective algorithms account for this in their decision making.

Silence Between Phrases (aka Call Progress Analysis)

Answering machine messages usually have a consistent cadence of multiple words without long pauses, whereas live human speech tends to start with a few words in a greeting, and then wait for a response. AMD algorithms that leverage Call Progress Analysis use these silence durations before, during, and after utterances to filter out more unanswered calls.

Call Progress Analysis

Answering Machine Keywords

Answering machines typically rely on the same set of words or phrases, such as “the person you have reached is unavailable” or “please leave your message after the beep”. Once a call has been connected, AMD algorithms can process its live transcription and use answering machine keyword matching to categorize calls as unanswered.  

Human Greeting Keywords

Similarly, there are common human responses to outbound calls, the most common being "Hello", “Hi who is this?” or “Hi, this is {first name}”. Live transcription can be leveraged to detect these responses in real time and connect these calls to agents immediately.   

AI

AI that leverages large language models (LLMs) is exceptional at determining whether a call was answered by a human or an answering machine. At their core, LLMs are tuned to probabilistically determine the next most likely word. While there are many permutations of voicemail greetings, once you have a few words, they become very predictable for LLMs. However, AI is not good at detecting complete silence or beeps and many calls are answered that way, so it must be used in combination with other AMD methods. Additionally, it’s more expensive than keyword matching alone and subject to greater latency.

Other Factors 

AMD solutions differ in their approach to call categorization. Less commonly used factors include background noise, vocal tone, and vocal pitch. These factors often fluctuate in normal human speech, whereas an answering machine message typically maintains a constant level of background noise and a more even tone and pitch. Automated voicemails, with their steady and robotic tone, are even easier for AMDs to detect. More recently, machine learning techniques have been used to turn audio signals into images, and perform image analysis on top of the converted Mel Spectrograms to classify them as either human or machine.

Measuring Accuracy 

Perfectly measuring AMD accuracy would require listening to every call, which isn’t possible at scale. However, it’s simple to approximate it. Call center platforms typically enable you to associate agent call dispositions with Answered / Unanswered (or Human / Machine) labels in order to calculate business-critical KPIs like conversation count and answer rate. This feature can be extended to monitoring (Count of calls connected to agents that have human-answered dispositions) / (Count of all calls connected to agents). This percentage serves as a good proxy for the accuracy of your dialer in categorizing calls as answered by human. You can complement this approach by using post-call transcription to categorize calls as human or machine with keywords or AI. 

Some variability in AMD accuracy by day and by campaign is expected, as no algorithm is perfect. In order to increase their accuracy, the best AMD solutions use a combination of the approaches discussed above to determine if a call was answered by a human or not. However, there is a cost-benefit tradeoff. The more approaches utilized, the more expensive (and potentially, slow) the solution is likely to be in reaching a determination. Because most people will not stay on a one-sided call for more than a couple seconds before hanging up, you may consider these other strategies for keeping your abandon rate low.  

Stop Wasting Your Agents' Time

Whether your progressive or predictive dialer campaign focuses on generating leads, qualifying them, conducting surveys, or re-engaging contacts, your choice of call center software and the accuracy of its AMD algorithm is a meaningful decision that has the power to enhance or hinder the results of your campaign and the health of your business.

Regal’s best-in-class AMD algorithm combines numerous factors to maximize the number of human conversations and reduce wasted time on unanswered calls. 

Ready to make every call count? Request a demo today.

Explore our customer stories to witness real-world examples of businesses achieving remarkable results through our innovative solutions.

Learn about these products and services at Regal.io, read most posts at regal.io/blog or email us at hello@regal.io.

Treat your customers like royalty

Ready to see Regal in action?
Book a personalized demo.

Thank you! Click here if you are not redirected.
Oops! Something went wrong while submitting the form.