Skill-based routing allows you to automatically prioritize and assign conversations to the right agent based on their skills. It allows you to 

  • Respond and resolve faster by ensuring conversations are always assigned to the best-skilled agents
  • Prioritize certain types of issues over another for assignment.
  • Ensure agents are not overloaded beyond their capacity.

For example, consider an agent’s first skill is handling issues from VIP customers. Whenever the agent resolves an issue, conversations matching the VIP skill will be routed to this agent over other conversations in the queue.


Understanding skill-based routing

What are skill rules?

Skill rules determine the skill that should be associated with a conversation. For example, you can create conditions to associate the skill “French” with issues from French-speaking customers.

What are agent skills?

You can associate each agent in your team with multiple skills and order them based on their expertise. When a new conversation is received, it is routed to the agent with a matching skill. For example, if a conversation is associated with “French,” it is assigned to the agent with the “French” skill.

What are priority levels?

With priority levels, you can have conversations of a certain skill prioritized for assignment over other conversations in the queue that are waiting to be assigned. Priority level 1 is the highest priority. Say, you want to ensure WhatsApp conversations are prioritized for assignment for an agent. Only when there are no WhatsApp conversations in the queue, you’d like Amy to handle conversations from website. In this case, “WhatsApp” will be Priority 1 skill and “website” will be added as Priority 2 skill.

How to create Skills?

Skill rules determine the skills that should be associated with a conversation. For example, you can create a skill to assign conversations from French-speaking customers to agents who are proficient in French.

To create a skill,

  • Log into your account as an Admin
  • Go to Admin Settings > Configuration and Workflows > Conversation Skills
  • Under Skill Rules tab, click Create new skill

  • Give your skill a name and description to identify it easily
  • Set the conditions of the skills. In the following example, a new Skill is created for French conversations from Instagram.

  • After the conditions are set, click on the Create skill button to create the skill.

How to assign Skills to agents?

After you have created skills, you need to assign those skills to your agents.

To assign a skill to an agent,

  • Log into your account as an Admin
  • Go to Admin Settings > Configuration and Workflows > Conversation Skills
  • Select the Skill you want to assign and click on the User skills management tab
  • Click on the Add Users button

  • Select the agents you want to map this skill to and set the priority level.

  • Click on the Save Changes button to save your changes.
If you don’t want conversations to be prioritized for an agent, make sure you add skills to priority level 1

How to enable skill-based routing?

To enable skill-based routing, 

  • Log into Freshchat as an Admin
  • Go to Admin settings > Configuration and Workflows > Conversation Routing (Intelliassign)
  • Under IntelliAssign logic, select Skill-based

Using Skills to prioritize conversations

How does skill-based prioritisation work?

When you enable skill-based routing, conversations will be assigned to agents  based on their matching skills.

Let's take an example of an ecommerce business. Agents John and May are assigned skills in the following order

John’s skills

Skill priority 1: Damaged product

Skill priority 2: Refund request

May’s skills

Skill priority 1: Order tracking

Skill priority 2: Refund request

Now consider the following conversations queue,

Time created

8:00 AM

8:00 AM

08:05 AM

08:10 AM

Conversation A

Conversation B

Conversation C

Conversation D


Damaged product

Refund request

Refund request

Damaged product

Here's how Skill-based routing will assign these conversations,

  • Conversation A will be assigned to John and conversation B to May.
  • After 15 minutes, John resolves conversation A is now available for assignment.
  • John will be assigned Conversation D before Conversation C because of the assigned skill priority even if Conversation C was created before Conversation D. 

How to prioritize some customers over others?

You can also use skill based routing to prioritize conversations over others in the queue. To do this,

  • Create a custom conversation property for customers you want to prioritize assignment (see how to create a custom conversation property)
  • Create a new skill in Admin Settings > Configuration and Workflows > Conversation Skills to assign a priority skill to customers who have the custom property
  • Assign this skill to all agents and set the priority level as 1
  • Now, all conversations that have this skill will be prioritized over other conversations in queue.

If you have more questions, please talk to your account manager or reach out to us at