The saying goes, “The squeaky wheel gets the grease”. Your car might have four bad wheels, but it’s the noisiest that gets your attention.

A customer support team has to manage their time and resources. Every agent starts their day with a pile of new support tickets to open, triage, assign and respond to. If they could detect a level of rage in customer tickets, should they respond to the angriest first?

Urgency is a subjective thing. An angry ticket from a client reporting an isolated bug is worth considering as urgent, as it’s definitely urgent in the mind of the client. Yet, the isolated bug issue might wait if a high priority customer comes calling at the same time. Urgency is not the same thing as importance (as President “Ike” Eisenhower likes to say).

We can’t apply a uniform criteria for clients, agents or companies on what makes something urgent or not. However, we can use machine learning and text analysis to alert us to which wheels are squeaking the most.

Why Detect Urgency?

Our recent conversations with customer support agents have pointed to a recurring theme: agents feel more empowered to do their jobs when they have more data to work with. If contextual information, like urgency, can be populated automatically for an incoming ticket, an agent has more information with which to take decisions. Agents also might be saved from needing to manually “tag” or process these incoming tickets.

Moreover, a team can automate triage and even responses by building on triggers and macros that stem from automatically tagged tickets. Increased efficiency in the routing process leads to quicker first time responses. For example, urgent tickets from high level clients can immediately be routed to specialized agents.

What about finding out the percentage of urgent tickets a team is receiving? Support agents and product managers can use an urgency detection model to get a sense for a general frustration level among clients or users. They can then correlate them against product launches, campaigns or dates (for both current and historical tickets) to identify baseline levels and high seasons. This can then inform product decisions, channel prioritization, even who to hire and when.

Introducing the Urgency Detector Model

It was with these benefits in mind that we built a pre-trained model to detect urgency not only for support tickets, but for any inbound piece of text (tweets, emails, etc.). It’s publicly available for all MonkeyLearn users and you can test it out by pasting text or uploading a file.

The model will classify text data into one of the following categories:

Urgent

Not Urgent

What constitutes “Urgent” is best described by how loud the wheel is squeaking; a surface level of urgency. If a user or client gives an indication that a problem needs immediate attention (or as soon as possible, or right away, etc.), that is the kind of feature or expression that our machines are learning to look for.

It’s critical to understand that this is only about the indication from the client; it is the only element that is being analyzed. The model can help answer the question: “does this client consider this issue urgent, and are they being vocal about it?” If a new ticket comes in hot, a support team will know about it before they even open it.

Adding Urgency Detection to your tickets with Zapier

Put this model to work by building a four step process with Zapier. You can follow the steps here detailed below, or use this template we set up. The zap triggers when a new ticket is added, in this case for Zendesk (doing this with other apps is possible but depends on what is available in Zapier).

Zendesk → New Ticket MonkeyLearn → Classify with Urgency Detector Zendesk → Find ticket Zendesk → Add Tags to Ticket

Step 1: Zendesk → New Ticket

To get started, create a new Zap. The first step starts with selecting Zendesk, and then selecting “New Ticket” as the trigger for whenever a new ticket is added to a view (see image below).

Zapier will then ask you which account you will connect with, and which view from Zendesk you want to select. Selecting the view for “Unassigned Tickets”, for example, means that this trigger will fire whenever a new ticket is added to the view “Unassigned Tickets”.

Step 2: MonkeyLearn → Classify with Urgency Detector

In this second step, we will define the action that follows the trigger from Step 1 (a new ticket in Zendesk). For this action, we will call for the Urgency Detector model from MonkeyLearn.

After finishing Step 1, Zapier will ask you to “Choose an action app”. Search for MonkeyLearn and select it. In the next step you will choose “Classify Text” (see image below). The next step will then ask you to select the MonkeyLearn account to connect with. After selecting the account, hit continue.

You should now be in the “Set up Template” or “Edit Template” part of the process (it will look like the image below). Here we will tell Zapier which classifier to work with and what text to analyze from the Zendesk ticket.

Under Classifier, select “Use a Custom Value (advanced)”. That will open up a new field where you can enter the model ID or identifier for the Urgency Detector, “cl_Aiu8dfYF”.

In the box below, you can select which information or data from the Zendesk ticket in Step 1 that MonkeyLearn should analyze. Clicking on the button in the top right corner, a drop down will appear with options. Here we recommend selecting the Subject and Description from Step 1, which will be enough for the MonkeyLearn to work with. Once selected, the fields should populate with sample data as shown in the image above.

Step 3 → Zendesk: Find Ticket

Up to this point we have defined a trigger (new ticket in Zendesk) and a first action (analyzing the ticket’s data in MonkeyLearn). Now we will add more steps in Zapier to take the result from MonkeyLearn (“urgent” or “not urgent”) and add that result as a tag to the original ticket in Zendesk. To do that, we have to first search for the original ticket from Step 1 that we want to work with.

Add a third step to your Zap (on the bottom of the left column) and choose Zendesk. Then select the Zendesk action “Find a Ticket” and hit continue. After selecting the Zendesk account you’ll need to fill in something for the query field. From the drop down, select “ID” under the section “1) New Ticket” as shown below. This way, we have identified the original ticket from Step 1 that we want to focus on, and in the next step, we can add the tag with the result of the analysis from MonkeyLearn.

Final Step → Zendesk: Add Tags to Ticket

Now that we have searched for and found the ticket in Step 3, we need to tag it with the result from Step 2.

Add another step to the Zap and choose Zendesk. Search for “Add Tag(s) to Ticket” which may be under less common options. You’ll be asked for the Zendesk account and then can proceed to set up the template for the tag (shown below).

The first part of the form may ask you to “Add a Search Step”. You already did that in Step 3 so we can ignore that button and go to the right. Here we will need to call for the ticket we identified in Step 3 by selecting the ID from the third step.

Once the ID is selected, proceed to the final field “Tags”. Here we will define what the content of the actual tag will be, and we want it to be the result of the urgency detection analysis from step 2. Open up the dropdown and Select “Level 1 Label” from Step 2 “Classify Text”. Once that is in place, the tags will be created as “Urgent” or “Not Urgent”.

After that, click Finish, and turn on your Zap. Your tickets will now be detected for urgency, and automatically tagged as such.

Final Words

Detecting urgent tickets is another beneficial tool for the customer support team. Yet, it only hints at the ways to augment a team’s super powers using text analysis and machine learning.

Furthermore, it does it in a way that provides more data to agents while not imposing on a team’s existing culture and practices for customer support. Our model will perform the analysis and predict a result, the team decides what happens next based on the result.

The Urgency Detection Model is just beginning. In future blog posts we will be sharing even more use cases that help make customer support agents more efficient, and as a result, help make happier customers.