Introduction Ticket Routing with AI

Customer service is key to business success. Good customer experiences build brand loyalty, drive more sales, and generate positive word-of-mouth. However, 66% of customers switch brands because of bad customer service, and the main reasons for customer frustration are lack of efficiency and lack of speed.

In this era of technological advancement, it’s no surprise that clients value personalized, timely, and effective customer service interactions. However, businesses are falling short in this area because they don’t have efficient workflows in place to handle all their customer queries.

Ticket routing ― the process of going through incoming tickets and assigning them to the agents best prepared to handle them ― is essential for any customer service team. But, manually triaging high volumes of tickets can be time-consuming and highly inefficient, causing bottlenecks, delayed response times, and incorrect allocation of customer support agents.

Fortunately, technology can help you automate ticket routing and turn it into a fast and effective process. Using artificial intelligence (AI), you can analyze incoming tickets based on categories like topic, sentiment, or urgency, and automatically route them to the most suitable pool of agents.

In this guide, we’ll learn how automated ticket routing can make your customer service team more efficient, explain how it works, and walk you through the different steps you need to follow to set up your own ticket routing process.

Read along or jump to the section of your interest:

Let’s get to it!

What Is Ticket Routing?

When a customer query arrives at the help desk, customer service reps need to read it, categorize it, and route it to the person or team in charge of handling it. This process is called ticket routing.

For example, a customer service agent at a SaaS company might tag incoming tickets based on their topic (Bug Issues, Registration Issues, Payment Issues, etc), and then route them to the IT, accounts, or product team.

Even though most companies use different help desk solutions to manage their daily workloads, tagging and routing tickets is still done manually in most cases. But manual ticket triaging is time-consuming, can lead to errors and unnecessary hold-ups, and it doesn’t scale.

Which brings us to automated ticket routing with machine learning. It’s a smart business solution that allows you to tag tickets in real-time, saving your customer service reps valuable working hours that they can use to focus on actually solving customer issues.

Why Is Ticket Routing Important?

Ticket routing is a key process to manage customer support queries. However, there’s no one-size-fits-all solution. Each company defines its own support workflow to manage, prioritize, and triage incoming tickets.

Customer inquiries usually come from various sources: email, chat, in-app messages, social media, so it’s important to centralize all these incoming tickets. The next step is tagging each ticket based on the type of request or business area it’s related to. For example, a ticket could be categorized as Bugs, Technical Issue, Billing Issue, Feature Request, Sales Question, Configuration Issue, etc.

Once you’ve tagged customer support tickets, they’re routed to the appropriate person or team member. A ticket that falls into the right hands at the right time has a direct impact on resolution times, which in turn has a huge impact on customer satisfaction. Here’s something to consider: 83% of people expect companies to respond to social media comments within a day or less.

For customer service reps, a help desk with zero tickets at the end of the day is pretty much unheard of, so they need to prioritize issues accordingly. While some SaaS companies prioritize support tickets from top tier customers, others may decide to focus their efforts on assisting new users, in order to increase product adoption.

As we mentioned earlier, for a company that receives hundreds (or thousands) of incoming tickets on a daily basis, manually routing tickets is just not viable. Metrics like first response times and average time of resolution are key to evaluate the performance of a customer service team. Delays, bottlenecks, and potential errors, resulting from manual ticket routing, can have a negative impact on those metrics, affecting the overall quality of your service.

How Can Automated Ticket Routing Help Your Customer Service Team?

AI-equipped tools can help you improve your customer service workflows, by automating routine tasks like ticket routing. Some of the greatest advantages of automated ticket routing are:

  • Increased efficiency and productivity. Support tickets are instantly routed to the most appropriate person or team, significantly shortening response and resolution times. Also, using machine learning to triage tickets is more objective and accurate than manual triaging since these tools apply the same criteria to all your tickets without hesitation, avoiding errors and inconsistencies.
  • It saves time and reduces costs. Manually tagging and routing tickets is time-consuming and, therefore, expensive, especially when you have to deal with large volumes of tickets every day. Automated ticket routing, on the other hand, is able to handle tickets at scale. You’ll just need to implement your machine learning tools once, and you’ll be able to analyze tons of tickets in real-time and in no time at all.

Using AI for Automated Ticket Routing

With automated ticket routing, customer support tickets can be automatically categorized and assigned to the most suitable pool of agents. This process relies on machine learning, an application of artificial intelligence (AI) that creates algorithms capable of learning from examples and making their own predictions.

Machine learning models can sort tickets by topic, language, sentiment, urgency, and more, and classify them into pre-established categories (tags) – in real-time and 24/7.

If you are using software such as Zendesk, Freshdesk or Front to manage your customer service interactions, you can set up triggers that automatically route tickets to specific team members or departments depending on their tags.

Triggers are basically rules that activate certain actions when a series of conditions are met. For ticket routing, you will need to designate specific agents or teams to handle tickets with certain tags. Let’s take a look at the basic steps that activate a trigger:

  1. An incoming ticket gets a tag = Trigger Event
  2. Tags are applied rules = Condition
  3. Tags are routed to the correct department or agent = Action

Let’s say you’ve classified support tickets based on topics. Then, you could create a rule to route all the tickets with the tag Feature Requests to the product department, or another one to assign all the tickets tagged as Refunds to a specific agent in charge of that topic.

In the following section, we’ll focus on the different ticket routing strategies, explain how machine learning for ticket routing works and explore some use cases of companies that are already implementing advanced processes. Finally, we’ll provide you with a step-by-step tutorial so you can set up your own automated ticket routing system with machine learning.

Defining Tagging Rules for Ticket Routing

If you want to automate your ticket routing process, you first need to establish a categorization structure. This means, defining a strategy and rules for handling your tickets.

For example, you might triage tickets based on certain attributes like topic, language or channel (Facebook, Twitter, Gmail, etc); you could also consider your agent’s skill set or certain keywords present in tickets, to decide to whom they should be assigned. Finally, you can consider factors like sentiment, urgency, or customer size/revenue to decide which tickets need to be prioritized.

Let’s take a look at the different strategies you can use to categorize your tickets:


You can use machine learning to automatically tag incoming support tickets based on their topics, a process known as topic analysis. Then, you can create triggers to indicate that tickets with certain tags get routed to specific teams or departments.

For example, support tickets labeled as Cancellations _or _Discounts will be assigned to the sales department, while tickets tagged as UX/UI or Feature Requests will be directed to the product team.

This approach requires previously defined tags based on the most frequent queries received by your customer service team. Take a look at this example below, in which team collaboration software Slack received a feature request from a customer. By classifying information like this – in this case the ticket would be categorized as Feature Request – businesses are able to send issues to the appropriate teams and reply immediately.

Screen Shot 2019 10 16 at 1 05 17 PM


Agents often receive tickets that they’re not equipped to deal with, which results in re-routing these tickets to correct team members. Not only does this affect productivity, but it also has a negative impact on first-response times.

Skills-based routing enables businesses to route tickets to the most qualified pool of agents (or maybe a single specialized agent) based on their skill set.

To establish a skills-based strategy, your company needs to define what skills are relevant to them. You can define skill categories according to your agents’ seniority level, specialization, and even specific accounts they’re in charge of, etc.


Sentiment analysis is the process of automatically extracting opinions and feelings from text, and it’s a great way of detecting disgruntled or angry customers.

By running sentiment analysis on your incoming support tickets you can easily identify dissatisfied customers and prioritize those tickets. At the same time, you can route those queries to the team members best suited to respond.

Routing tickets based on sentiment allows you to take immediate action on issues that are frustrating customers, avoiding customer churn, or even a potential PR crisis. Here’s an example of a tweet from an angry customer which can be quickly detected by a sentiment analysis algorithm:



Classifying support tickets by urgency allows you to prioritize the most severe and critical issues first, and leave minor issues for later.

However, urgency is subjective, so it’s up to each business and team to define what classifies as urgent and what is considered low priority. Generally, support tickets that affect a business operation (such as outages, bugs, or technical issues) should be considered a top priority, and receive immediate attention. The same criteria applies to tickets from high-level clients.

An urgency detection model can sift through your incoming tickets and recognize expressions that denote urgency. If a ticket includes expressions such as, ‘as soon as possible’ or ‘right away’, the urgency model’s algorithm will be able to classify it as Urgent. Take a look at the tweet below, which Zendesk replied to immediately after detecting that this was an urgent matter.

Screen Shot 2019 10 16 at 1 09 50 PM


If you work for an international company, chances are that you’ll receive support tickets in different languages.

To avoid teams receiving and re-routing tickets in languages that they don’t understand, you can use a machine learning model to detect the language of the ticket and route them to the appropriate localized teams.

Customer Size / Revenue

Another way in which you might prioritize support tickets is by customer importance – maybe you’ll want to divide issues from subscribers and non-subscribers, or prioritize tickets from CEOs and big companies that have more impact on the business or generate more revenue.


Most companies provide multichannel customer service. This means support queries can arrive via email, live chat, phone, social media, and any other communication channels that you use.

While having all your incoming tickets centralized is very useful, you may want to classify and route tickets based on the channel the customer used. That way, you’ll have agents focused on replying to messages on Twitter, others dedicated to emails, and those who specialize in live chats, etc.

Other strategies you can use to automatically route support tickets are:

  • Service Level Agreements (SLA): tickets from premium customers receive priority.
  • Product: companies with different products can tag tickets by product mentioned.
  • Conversation history: tickets from repeat customers can be routed to the agent who dealt with their last interaction.

Examples and Use Cases

Automated ticket routing is helping customer service teams across different industries improve their productivity and efficiency.

Archer, an investment management solution, is using AI to automatically tag a daily average of 6,000 tickets. By using MonkeyLearn’s integration with Zendesk, they were able to cut their first response times in half: it used to take around 15-20 minutes, while now it takes it less than seven minutes. Automated ticket routing has saved their customer service agents valuable hours, allowing them to use their expertise to find the best solutions for their customers.

In 2018, Uber developed their own ticket routing system. They needed a more flexible and easy-to-use platform that reflected the company’s new products and modalities. They re-designed their ticket routing process by categorizing incoming tickets using a series of attributes, like Language, Country, Type (for example, Driver-partner, Questions about Payments, or Lost Items), and routing them to agents who have a set of skills. In other words, their system matches tickets to agents best prepared to answer requests, and also follows several prioritization rules (tickets from New Driver-Partners are prioritized, for example).

How Automated Ticket Routing Works

Machine learning algorithms can be trained to sort large volumes of data, recognize patterns in text, and make predictions based on the examples they have seen.

Depending on which categorization strategy you choose, which we introduced earlier, you can start tagging and routing your tickets using some of MonkeyLearn’s pre-built machine learning models:

Once your familiar with how these models work, we recommend creating a customized machine learning model with MonkeyLearn. For automated ticket routing, it’s actually very simple. Once you’ve decided which type of model you want to create, you need to train the model by manually tagging a representative set of data. This will be used as examples; the model will learn that for a particular text, you expect a specific tag. When you finish training your model with enough examples, it will be ready to start making its own predictions. At this point, you can use one of our integrations, such as the Zendesk integration, to automatically tag all your incoming tickets as soon as they appear in your helpdesk.

Once your customized model is up and running, you’ll be able to route tickets without manual intervention by setting up triggers in your customer service software.

How to Get Started with Automated Ticket Routing

First, let’s go over how to create your own model with MonkeyLearn. Then, we’ll show you how to connect your customized model with your help desk.

Creating a Machine Learning Model with MonkeyLearn

There are different machine learning models that you can use to automatically tag and route support tickets. In this tutorial, we’ll walk you through the steps to build a topic classifier.

To get started, sign up to MonkeyLearn for free and follow these instructions:

1. Create a new classifier.

Go to the dashboard, click on ‘create a model’ and choose your model type. In this guide, we’re building a ‘classifier’.

chose a model type 4

2. Select a type of classifier.

To categorize support tickets based on different aspects, you’ll need to select ‘topic classifier’.

what kind of classification 1

3. Import your data.

You can upload data from different sources, from a CSV or an Excel file on your computer, or directly from your help desk. For example, we have integrations with platforms such as Zendesk, Front, and Freshdesk, which allows you to connect these tools to MonkeyLearn’s models and import training data with just one click.

Screen Shot 2019 10 09 at 2 11 21 PM

4. Define the tags for your classifier.

Read some of the data (in this case tickets) you’re using to help you define categories. You’ll need these tags to train your classifier manually.

Here’s some advice on defining tags:

  • Start simple. We recommend starting with less than 10 tags to train your first model. You can always add more tags later on.
  • Read some examples of your data, so you can identify frequent topics and define relevant tags.
  • Don’t be too specific. Use broad tags, as opposed to tags that are closely related or ambiguous, to ensure accuracy of your model.
  • Keep in mind that you need to have enough examples for each tag, so make sure to pick representative topics.

5. Train your classifier.

Manually tag your data, and train your classifier so it can identify patterns for each of the predefined categories. After tagging a few support tickets, the topic classifier will start making predictions when faced with similar examples. If you find that the predictions are not entirely accurate, you can correct the answers and tag more examples to keep training the model. The more data you tag, the smarter your model will be.

6. Test your classifier.

Click on ‘run/demo’ to test your topic classifier’s performance. You can paste the text of a support ticket and see how it classifies your data. If the results are not accurate, you can go back to ‘build’ and continue training some more examples.

Also, you can check out the ‘stats’ section to see metrics such as precision, recall, accuracy, and F1 score to quickly understand how well your model is working, as well as a keyword cloud with the most frequent terms within each set of data. If you want to improve your model, you can re-tag the false positives and false negatives.


7. Put the model to work.

Now that your model is trained, it’s time to use it to automatically tag unseen data. There are different ways of integrating your model with your customer service software such as Zendesk, Freshdesk or Front:

integrations 1

  • API: MonkeyLearn’s API allows developers to connect your model with other platforms, such as your help desk software.


Connecting your Machine Learning Model with Zendesk

If you are currently using Zendesk to manage your customer service interactions, you can install MonkeyLearn’s integration for Zendesk to automatically tag incoming support tickets with machine learning, and then set up triggers within Zendesk to route tickets to the most appropriate person.

These are the steps you need to follow to set up the integration:

1. Install the MonkeyLearn integration for Zendesk.

You’ll find it in ‘marketplace’ in Zendesk.

2. Check the menu and select ‘choose a ticket field to classify’.

Here you’ll need to define how you want to categorize each customer ticket. When a ticket arrives, it’s uncategorized: it has a subject, the message and an ‘about’ field which is often unassigned. This ‘about’ field is the custom field you will use to categorize incoming tickets based on their topic.

3. Set the automation level.

In settings, there are three options (high - mid - low) that will determine how confidently you want the machine to tag tickets. ‘High’ means that all tickets will be classified ― even if the machine is uncertain about some of them ―, while ‘low’ means that less-predictable tickets will remain blank so that your team can revise and tag them manually.

Screen Shot 2019 10 16 at 1 14 24 PM

4. Set up your Zendesk trigger.

The last step of the process is to set triggers in Zendesk, which route each ticket to the most appropriate agent or team based on MonkeyLearn’s output (the tags set for each support ticket). Triggers are composed of conditions and actions, and follow an ‘if-then’ logic. For example, ‘if a ticket’ receives the tag Feature Request (condition), ‘then the ticket’ will be sent to the product team.


Wrapping Up

Ticket routing is one of the most crucial tasks for customer service teams. Defining a clear strategy to handle support tickets is key to guarantee that the most urgent issues within your business are addressed first, and that every agent is taking care of the tickets they are best prepared to solve.

When done manually, ticket routing is a time-consuming and cumbersome task. It can also lead to errors and have a negative impact on your customer service metrics. Automated ticket routing is a great alternative, not just to streamline this process, but also to boost your team’s efficiency and customer satisfaction.

By using machine learning algorithms to automatically tag support tickets, and triggers within your help desk software to route these tagged tickets to appropriate agents or teams, your customer service reps will save valuable hours.

As you’ve seen, setting up an automated ticket routing process with MonkeyLearn and your help desk software is simple. Want to give MonkeyLearn a go? Contact us and get a personalized demo from one of our experts!

Federico Pascual

October 16th, 2019