AI Signals

Marchex's AI signals enable businesses to uncover a wealth of insights from their agent-customer conversations. Our signals can be utilized for a myriad of purposes, from optimizing agent time by eliminating the need to read transcripts or listen to audio recordings, to enhancing customer experiences by using in-depth sentiment analysis on all your B2C interactions. See below to learn which AI solutions fit your needs.

Sentiment Suite

The Sentiment Suite is our newest collection of AI signals. It's robust signal set identifies the emotions that your customers are expressing during conversations with your agents, as well as the underlying reasons behind these emotions. Ultimately, Sentiment Suite gives you the tools to understand your customers and how they perceive your business.

Sentiment Suite's signal classes are separated into two categories: Customer Emotion and Customer Perception.

Customer Emotion

Customer Emotion contains signals which pertain to classifying the preliminary emotions expressed by the customer during the conversation, as well as providing natural-language explanations for why the customer felt the way they did. These signals are:

  • Sentiment Summary: A string of free-form text containing a summary of the primary emotions expressed by the customer.
  • Sentiment: A string containing a rating of the prevailing emotions expressed by the customer: "positive", "negative", or "neutral".
  • Frustrated: A Boolean (true/false) indicating whether or not the customer expressed frustration at any point throughout the conversation.
  • Frustrated Reason: This signal is only returned if the Frustrated signal returns true. If so, Frustrated Reason returns a string of free-form text explaining why the customer was frustrated.

Customer Perception

View of The Business signals enable organizations to track their reputation in real time by analyzing customer satisfaction across all of their calls. This subset of signals is what truly differentiates Marchex's sentiment analysis from competitor offerings. Our AI combines structured assessments of customer emotion and satisfaction with conversation context to determine whether your customer's are brand advocates, or if they are at risk of becoming negative reviewers.

The Customer Perception signal class includes:

  • Satisfied: A Boolean (true/false) indicating whether the customer's needs were fulfilled, with true indicating satisfaction, and false indicating dissatisfaction. Occasionally, a conversation might not have enough substance for the AI to make a definitive assessment of customer satisfaction. In such a case, the Satisfied signal will be absent from the API signal payload (or blank in the Sales Enablement UI).
  • View of The Business: A string ("positive", "negative", or "neutral") indicating the caller's likely perception of the business after the conversation's conclusion. This signal intends to show whether the customer would be a net promoter, detractor, or neutral representative for the business.
  • View of The Business Reason: A string of free-form text explaining why the View of The Business rating was selected.
  • Concern Class: This signal will only have an output if the View of the Business signal was negative. In this case, Concern Class will return a string that coincides with one of the below classifiers:
    • Unhelpful/uninformed agent
    • Poor communication/lack of follow-up
    • Long hold during call
    • Work not performed on time
    • Unsatisfactory work
    • Provided incorrect information
    • Price/invoice/billing
    • Product availability
    • Technical issues with product
    • Service/product quality do not meet customer expectations
    • Lack of accountability
    • Transparency issues
    • Repeated handoffs and transfers during call
    • Recurring issues/ongoing problems
    • Insurances issues
    • Technician professionalism and competence
    • Damage caused
    • Other (accompanied with a custom concern label)

When the Sentiment Suite's signal classes are used in conjunction with one another, they can lead to invaluable insights pertaining to Who? What? and Why? The Sentiment Suite identifies which customers are feeling what (satisfaction, frustration), and it uncovers why they are feeling the way they are.

Sentiment Suite's insights can be used to:

  • Identify and make amends with the small subset of customers that are at risk for leaving a negative online review of your business
  • Request positive reviews from customers who expressed delight at their exceptional service
  • Identify which agents are leaving frustrated customers satisfied and with a positive view of your business, and which agents are doing the opposite

The signal labels shown above are surfaced to customers using Sentiment Suite in the Sales Enablement/Callcap UI. Customers using the Callcap API will notice slightly different signal labels from those found above (shown in the table below).

Technical information

Attributes generated by the Sentiment Suite

The following table outlines the attributes included within the sentiment object returned by the Callcap API.

AttributeData TypePossible ValuesDependenciesNotes
satisfiedbooleantrue,
false
frustratedbooleantrue,
false
sentimentstringPositive ,
Negative,
Neutral
viewstringPositive ,
Negative,
neutral
Short for "View of the Business"
frustrated_reasonstringValue is dynamically generated based on the conversation .frustrated= true
view_reasonstringValue is dynamically generated based on the conversation .Short for "View of the Business Reason"
summarystringValue is dynamically generated based on the conversation .
concern_classstringunhelpful/uninformed agent,
poor communication/lack of follow-up,
appointment availability/scheduling,
long hold during call,
work not performed on time,
unsatisfactory work,
provided incorrect information,
price/invoice/billing,
product availability,
technical issues with product, service/product quality do not meet customer expectations,
lack of accountability,
transparency issues,
repeated handoffs and transfers during call,
recurring issues/ongoing problems,
insurance issues,
technician professionalism and competence,
damage caused,
other - <custom reason>
view = "Negative"other - <custom reason> allows for the AI model to generate a new reason that isn’t already listed in the possible values.

In this case “” will be replaced by the reason generated by the AI model

An attribute (any one of the eight possible signals returned by the Sentiment Suite) may occasionally be blank for two possible reasons:

  1. In some cases, the AI model may not make a determination for one or several attributes. This often occurs when the conversation that takes place is too short or otherwise has insufficient substance to make a determination. In these cases, an attribute's value will be blank within the "sentiment" object, i.e. frustrated = "". This could occur for sentiment, satisfied, frustrated, view, and summary.
  2. As shown in the above table, frustrated_reason will be blank if frustrated = false. In the same manner, view_reason will be blank if view is not Negative.

How to invoke the Sentiment Suite

To add the Sentiment Suite to a call's details, add "sentiment" or "all" in the "detail" level of the GET request. The sentiment outputs will then be returned within the "sentiment" object, located in the "call" array of the API response.

Example Response

{
  "call": [{
    "call_id": "987654_23_11_19_2012_17:07:29_12",
    "start_datetime": "2020-09-01 09:07:15",
    "end_datetime": "2020-09-01 09:47:15",
    "sentiment": {
      "satisfied": false,
      "frustrated": true,
      "sentiment": "Negative",
      "view": "Negative",
      "frustrated_reason": "The caller was frustrated and annoyed that it took over 7 months to receive a replacement part after their part was broken by the business.",
      "view_reason": "The caller was frustrated with the delay in receiving the part, feeling disappointed and upset about the situation.",
      "concern_class": "work not performed on time",
    },
    "duration": 570,
    "rings": 4,
    "caller": {
      "city": "Wichita",
      "class": "Residential",
      "state": "KS",
      "name": "John Danger Doe",
      "address": "NF",
      "zip": "67202",
      "caller_id": "316-555-3333"
    },
  ]
}

The conversation's sentiment summary can be found in the Summaries array, also located within the "call" array:

"summaries":[
    {
      "text": "The caller expresses being upset about the situation and feeling let down by the service provided by the business. The agent acknowledges the issue and attempts to address it by reaching out to the parts department for a resolution."
      "type": "Sentiment"
    }
  ]