Dynamics CRM – Prediction based routing

Imagine a day at work of a front desk staff who is handling the support mailbox or reception of any mid-size organisation. It is not uncommon for them to receive hundreds, if not thousands of email and phone enquires everyday.

If this organisation happens to be using Dynamics CRM, then every enquiry is usually handled as below

  1. Read the description of the enquiry
  2. Understand
  3. Determine what team/department the query belongs to
  4. If there are multiple members in that team, then find who is best suited to answer it
  5. Assign it to that person

Move to the next enquiry. Repeat 1 to 5 above…. hundreds of times.

Now imagine the time spent on every enquiry to perform steps 1 to 5. A fair guess – it can easily take 10 minutes to grasp, digest and route the query.

Realistically, for most queries there is often a support rep matching ritual, back and forth, something like

Hey, who do you think this should go to?

Oh sorry! so it was meant for Helen, no worries I can assign to her

Have you worked on this kind of stuff earlier?

When will you get free to look at it, customer needs an answer today



Courtesy: http://www.glasbergen.com

We have already spent 20 minutes and the ticket has not even landed on the support rep’s desk yet !!

Well – time is money. If we can find a solution to save this time, its a great return on investment.

Supercharge your Tier 1 Support

Through this blog series, I will try to explore a solution to this problem using Machine Learning. We will automate steps 1 to 5, full automation.

A machine algorithm will predict

  • Which team does this query belongs to?
  • Which agent will get free first and which agent is best-skilled to answer this query

And machine would not take 20 minutes to decide, it will take 20 seconds



Let us layout a scenario

A big advisory firm that uses Dynamics CRM  offers many kinds of services to its clients. They have professional advisors on their team who can answer queries across of the range, no matter if they are tax enquires, investment or even medical.

Each team – tax, investment and medical has a range of support reps available to handle enquires.

Traditionally, Tier 1 staff created support cases upon receiving customer enquires and assigned them to the relevant support rep by following steps 1 to 5 described at the start.

Upon assignment, Support Rep gives an ETA before working on the query and system tracks how time support rep actually spent.

We will also track some other parameters which we can be leveraged by the ML engine.



Machine Learning Algorithm

The Machine Learning approach will tackle this situation as shown below

1. ML engine will train itself by synthesising content and correlating parameters that belong to a category

2. ML engine will be deployed as a web service (compiled model) to be consumed by Dynamics CRM

3. It will start predicting what category the enquiry is after reading, tokenising and tagging the content

4. Once it has known the category, it will then find who is best suited to answer the query using parameters like

  • Which customer support rep will be the earliest to get free to look at this
  • Which customer support rep is generally good at these kinds of queries



We will see and the use the following machine learning techniques to build the smarts

  • Tokenisation & Semantic Analytics using Natural Language Processing
  • Support Vector Machines
  • Inverse Document Frequency (TF-IDF)


See you in the next post


4 thoughts on “Dynamics CRM – Prediction based routing

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s