With skills-based routing, you can set up "skills" and associate each one with individual agents. For each skill, you also define a set of ticket conditions. Then you configure a view that identifies which tickets match the skills of whomever's looking at it.
Before getting started, you may want to check out Best practices: Setting up skills-based routing for suggestions about how to best approach this process.
This article includes these sections:
Related articles:
Understanding skills-based routing
This section includes these topics:
About skills and skill types
There are two elements that skills-based routing is built on: Skill types and skills.
- Skill types are simply categories for skills. For example, "Languages" is a skill type, and "French" is an individual skill. "Country" is a skill type, and "Belgium" is a skill.
-
Skills are any attributes of an agent that determine their suitability to work a ticket that requires them. A skill can be something the agent is able to do, like speak French. But a skill can be any other fact about the agent, like being located in the Brussels office.
While a skill can technically exist with just a name, a skill is fully defined by:
- A name
- A set of conditions that determine when a ticket requires the skill (called routing rules)
- A set of agents who have that skill
The skills-based routing workflow
Currently, skills-based routing uses the existing paradigm where agents pull tickets from views. You can configure a view that filters tickets by skill to organize tickets so agents possessing certain skills can quickly find those tickets they are qualified to address.
The following is an overview of the steps you'll take to route tickets into useful views.
- Create skill types, to organize your skills into categories.
- Add skills to the skill types, based on your customers' needs and the skills or qualities your agents have (language, time zones, and the like).
- Identify agents' skills, and assign them to as many skills as you like.
- Build routing rules for each skill, so skills can be applied to the right tickets.
- Create a view to filter tickets based on skills, so the agent can focus on the ones they are best qualified to answer.
Skill metrics in Insights
For Insights users, there’s a pre-configured Skills dashboard that shows how skills are being used, and how they impact the tickets they’re applied to. You can build your own, custom reports using skill metrics as well.
For more information, see Analyzing skills-based reporting activity.
Skill metrics in Explore
While Explore doesn't currently have a pre-configured Skills dashboard, Explore Professional does include metrics and attributes that you can use to build your own reports.
For more information, see Metrics and attributes for Zendesk Support.
Creating skill types
You'll need to create at least one skill type before you can set up specific skills. You can create up to 10 skill types.
To create a skill type
- In Zendesk Support, click the Admin icon (
) in the sidebar, then select Business Rules > Routing.
- On the Routing admin page, click the New skill type button.
- Enter a unique name for the skill type. Names cannot exceed 96 characters.
- Hit Enter. The skill type is created and added to the Routing page:
Repeat these steps for each skill type you want to create.
Adding skills to skill types
After you've created one or more skill types, you can add your specific skills. Once you've added a skill to a skill type, a new Skills ticket field appears on tickets viewed by administrators. Visibility options can be modified by Configuring the skills field viewing options.
Skills can be viewed, edited, or deleted after they've been created, and skills can be manually added or changed by an administrator on a ticket-by-ticket basis. For information on this, see Working with skills.
Each skill type can include up to 30 skills.
To add a skill to a skill type
- On the Routing admin page, locate the skill type you want to update, and click the New skill button.
- Enter a name for the new skill. Names cannot exceed 96 characters.
Note: Each skill within a skill type must have a unique name. However, skills in separate skill types can use the same name.
- Hit Enter. The skill is added to the skill type.
- Repeat until you've added all your skills to the skill type:
Assigning agents to skills
For each skill, you need to designate agents who have that skill.
There are two ways you can connect agents to skills:
-
Adding agents to specific skills, via the Routing admin page. This is particularly useful when assigning multiple agents to a skill at once.
-
Adding skills to specific agents, via the agent’s profile page. This option is good when onboarding new agents who need multiple skills assigned to them.
To assign an agent to a skills via the Routing admin page
- On the Routing admin page, click the skill type you want to open, then click the skill you want to update.
- In the Agents section, click the Manage button to display a list of all agents, and the groups they belong to:
- Locate the agents you want to assign to the skill. You can find agents in a number of ways:
- Scroll through the list of agents
- Enter an agent's name in the search box
- Filter the list of agents by group, by clicking the options icon (
) and selecting the group name.
- Select agents by clicking the check box to the left of their name. Once selected, agents appear in the Agents with skill list.
Note: You can add or remove up to 50 agents at a time. If you have more that 50 agents to add or remove, you'll need to make multiple updates
- When done, click the Save button.
To remove an agent from a skill via the Routing admin page
- Open the skill.
- In the Agents with skill list, locate the agent you want to remove, then click the x next to their name.
- Click the Save button.
To assign a skill to an agent via the agent's profile
- In Support, open the agent’s profile. You can do this by clicking their profile picture and selecting View profile, or clicking their name on the Manage > People admin page.
- Scroll down the profile to the Skills field in the left sidebar.
- Click in the box to open the skills picker.
- Click the skill type, then the skill, you want to assign to the agent, and repeat as needed. The skill appears in the agent’s skills list, and the agent appears as an assignee on the Skills admin page.
To remove a skill from an agent via the agent’s profile
- On the agent’s profile page, scroll down to the Skills field in the left sidebar.
- Click the x on the skill you want to remove. The skill is removed from the agent’s skills list, and the agent is removed as an assignee on the Skills admin page.
Assigning skills to tickets (building routing rules)
Each skill needs conditions defined to determine which tickets they're applied to. These sets of conditions are called routing rules. When a ticket is created that meets the conditions defined in a skill's routing rule, that skill is attached to the ticket. You can create views based on those skills to direct agents to tickets they are qualified to address.
Routing rules are applied upon ticket creation, which means:
- If a ticket is created before a routing rule is set up, it won't have that skill attached to it.
- If a ticket is updated so that it no longer meets a skill's conditions, the ticket will still require that skill until you manually remove it from the ticket.
- If a ticket is updated so that it meets the conditions for a new skill, the ticket will not start to require that new skill until you manually add it to the ticket.
To create a routing rule
- On the Routing admin page, click the skill type you want to open, then click the skill you want to create a routing rule for.
- In the Tickets section, click the Add condition button under Meet All of the following conditions and/or Meet Any of the following conditions.
- If you add conditions under Meet All of the following conditions, all of the conditions must be true for the skill to be applied.
- If you add conditions under Meet Any of the following conditions, one or more of the conditions must be true for the skill to be applied.
- Select a condition, a field operator, and a value for each entry.
- When all conditions are added, click the Save button.
When a skill is applied to a ticket, it appears in that ticket's sidebar.
For information on modifying these skills, see Working with skills.
Understanding how skills are applied to follow-up tickets
When a follow-up ticket is created for a closed ticket, you may notice that skills on the follow-up ticket don't always match the skills on the original ticket. Generally, when a follow-up ticket is created, it inherits data from the original ticket (see Creating a follow-up for a closed ticket). Skills are an exception to this rule.
Follow-up tickets don't inherit skills. Instead, skills are applied to the follow-up ticket based on your routing rules when the follow-up ticket is created.
Creating skills-based views
This section explains what skills-based views are, what types exist in Support, and how to create and use them.
This section includes these topics:
About the types of skills-based views
A skills-based view is a view that displays only tickets with skill requirements that match the skills of the agent using the view. There are currently two types of skills-based views in Support:
- Views with a skills-based condition
- Skills-match views
Views with a skills-based condition (recommended)
You can create a skills-based view by adding a skills-based condition to a view. You can do this to as many views as you want. Tickets without skills are excluded from these views. For more information, see Creating views with skills-based conditions.
We recommend using this type of skills-based view because it offers several advantages compared to skills-match views. For example:
- You can filter all views by skills instead of just one.
- There’s no limit on the number of tickets assessed.
- There’s no limit on the number of tickets displayed in the view.
- The results of the view are paginated.
Skills-match views
You can create a skills-match view by applying a skills filter to a view. However, you can only have one skills-match view in Support, not multiple. Tickets without skills are included in this view. For more information, see Creating a skills-match view.
Understanding the limitations of skills-based views
This section explains the limitations of different types of skills-based views. The limitations are different depending on the type of skills-based view you are using (see About the types of skills-based views).
Limitations for both types of skills-based views
These limitations apply to both types of skills-based views (views with a skills-based condition and skills match).
-
Skills application: Skills are applied only when tickets are created. This impacts skills-based views in two ways:
- If a ticket is updated so it no longer meets a skill’s conditions, that ticket will continue to appear in the view for the former skill match. To remove a ticket from a view when it no longer meets the skill’s conditions, you need to manually delete the skill from the ticket.
- If a skill is added to an existing ticket, it will not be added to views based on that new skill. To include that ticket in the skill-based view, you would need to re-create the ticket.
- Language skill application: Language skills are applied to a ticket based on the requester’s language, rather than the ticket language.
Limitations for only views with skills-based conditions
- Closed tickets: Closed tickets are not included in views with skills-based conditions.
- Tickets with no skills: Tickets with no skills are excluded from the view.
Limitations for only skills-match views
These limitations apply only to skills-match views. They do not apply to views with a skills-based condition.
- Number of tickets assessed: If the ticket count in a skills-match view includes more than 3,000 tickets, or a processing timeout occurs, all tickets will have the skills correctly applied, but some tickets may not appear in the view.
- Ticket display: Only the first 30 tickets in a skills-match view are displayed, based on how your tickets are sorted. You can change the displayed tickets by changing the view’s sorting criteria.
- Tickets with no skills: Tickets with no skills are included in the view.
Creating views with skills-based conditions
A view with a skills-based condition is one of the types of skills-based views that are available in Support. When an agent uses this type of view, they see only tickets with skills requirements that match their skills.
You can create this type of view by adding this skills-based condition to the view:
Skills + Is + Current user skills
You can add the condition to as many different views as you want. Tickets without skills will be excluded from views with a skills-based condition. For information about how views with skills conditions differ from other views, see Understanding the limitations of skills-based views.
To create a skills-based view using conditions
- Click the Admin icon (
) in the sidebar, then select Manage > Views.
- Open one of your views for editing.
Find the view. Click the options icon (
), and then click Edit.
- In the Conditions section, under Tickets must meet all of these conditions to appear in the view, click Add Condition.
Add this condition: Skills + Is + Current user skills.
- Click Save.
You can now start using the view.
Keep in mind that the view looks the same as any other view when it’s in-use. There’s nothing in the user interface (UI) that indicates to the agent that the view is a skills-based view, and that only tickets that match their skills are appearing in the results.
If you are an admin and you are looking at the Views admin page, there is also nothing on this page that indicates that the view is a skills-based view (such as a filter icon).
- If you are an admin and the view is a shared view, let the appropriate agents know that the view is a skills-based view.
You can make shared views visible to all agents or to a group of agents.
Creating a skills-match view
You can create a skills-match view by adding a skills filter to a view. However, you can only have one skills-match view in Support, not multiple. Tickets without skills are included in this view. For information about how skills-match views differ from other views, see Understanding the limitations of skills-based views.
A skills-match view is one of the types of skills-based views that are available in Support. When an agent uses a skills-based view, they see only tickets with skills requirements that match their skills.
To create a skills-match view
- Open the Views admin page by clicking the Admin icon (
), then going to Manage > Views.
- Create a view, or clone an existing view, that covers common support requests (see Using views to manage ticket workflow).
- Optional: On the view's edit page, scroll to the Table columns section, and drag Skill match into the Columns included in table list. All tickets in the view should have a checkmark in this column; if they don’t, go back and check your view conditions. You can also use the column on its own, on any view, in lieu of the filter. This will tell the agent which tickets match their skills without actually hiding the ones that don’t.
- Update the rest of the view as needed, and click Submit.
After you’ve created the view, you can then apply the filter, so agents looking at the view will only see tickets that match their skills.
To apply a skills filter to a view
- Go to the Routing admin page.
- In the Skills match view section, use the drop-down menu to select the view you want to filter by skill.
Note: Only certain views are compatible with filtering. Incompatible views appear in the drop-down menu, but are grayed out and cannot be selected.
- Click Apply skills filter.
When a skills filter is applied to a view:
-
On the Views admin page, the view appears with a filter icon:
- When an agent opens the view, they’ll only see those tickets for which they match all required skills.
- When an agent uses Play mode with the view, only skills-matched tickets are displayed.
Converting an existing skills-match view
If you have an existing skills-match view, you can convert it into a view with a skills-based condition by cloning it and then adding a skills-based condition.
To convert a skills-match view into a view with a skills-based condition
- (Optional) Deactivate your skills-match view.
Click the Admin icon (
) in the sidebar, then select Manage > Views. Find the view you want to deactivate, click the options icon (
), and then choose Deactivate.
-
Clone your skills-match view.
Find the skills-match view, click the options icon (
), and then choose Clone.
- Follow the steps in To create a skills-based view using conditions to add this skills-based condition:
Skills + Is + Current user skills
Note: When you clone a view, it becomes an active view as soon as you click Save, regardless of whether the parent view was active or inactive.
Working with skills on tickets
This section discusses the following topics related to skills that have been applied to tickets:
Configuring the skills field viewing options
As soon as you add a skill to a skill type, the Skills field appears on the left side of a ticket, along with other system and custom ticket fields:
By default, only administrators can see and update the skills field. You can configure the visibility and permissions for the skills field, so agents can view or update it as well.
To configure the skills field visibility options
- On the Routing admin page, click the Configuration icon next to the New skill type button.
- On the Manage skills on tickets modal, use the drop-down menu to select the visibility configuration you want to apply to the skills field:
- Administrators only (view and update): Administrators can view and update skills in the ticket UI. Agents cannot view or update skills.
- Administrators (view and update) and agents (view only): Administrators can view and update skills in the ticket UI. Agents can view skills in the ticket UI, but not update them.
- Administrators (view and update) and agents (view and update): Administrators and agents can view and update skills in the ticket UI.
- No one (disabled): The Skills field does not appear in the ticket UI.
- Click Save.
Viewing skills in the ticket UI
If skills are configured to appear on your ticket UI, they are displayed in the Skills field, in the ticket sidebar.
To view the skills applied to a ticket
- Locate the ticket in your ticket views.
- Click the ticket subject to open it in the main window.
- In the ticket's sidebar, locate the Skills field. The skills applied to that ticket appear here.
Adding and removing skills on a ticket
If skills are configured to be editable through your ticket UI, admins (and agents, if allowed) can update the skills applied to a specific ticket from within the ticket UI.
To add a skill to a ticket
- In the ticket's sidebar, locate the Skills field.
- Click the skills drop-down icon (
) to display the available skill types:
- Click the skill type containing the skill, then click the skill you want to add to the ticket.
- Repeat as needed, then submit the ticket.
To remove a skill from a ticket
- In the ticket's sidebar, locate the Skills field.
- Click the x on the skill you want to delete from the ticket.
- Submit the ticket. The skill is removed from the ticket.
Note: If you remove all skills from a ticket, it can be viewed by agents regardless of their assigned skills.
68 Comments
Hi @davide -- I have some good news, that manual skill updating by agents is in development and should be available this quarter. Automatically updating skills is a lot harder and is currently under investigation as our next priority,
Is there any update on when we might be able to use skills as conditions in triggers?
Will we be able to apply a Skills filter to multiple views at some stage? This feature could work really well for us, as we have agents within teams covering different products, but I really need to filter 3 different views on skills match.
We have different departments and we use ticket groups to reassign a ticket to a different department: a group for each department (Support, Billing, Tech). I thought that Skills Routing would be a great way to get rid of the several groups and using the simpler set of skills to assign a ticket to a different department (support , billing, tech support etc). After playing a bit with the tool I think that skills routing cannot be used for escalating tickets.
I understand that skill routing only works on ticket creation, so if a new ticket comes in and agent need to assign manually to a different department using skills routing, this is just not possible because:
1. Agents cannot manually edit the skills, only admin can change the skills on the ticket, what is the point of this?
2. Skills do not work when the ticket is simply updated, so even if we were to create a field called "escalate to billing" to be manually selected by the agent who wants to assign the ticket to a different supporting group it would not work because skills to do not work on tickets updates.
Am I missing anything?
Hi Antonio,
You are correct and currently agents are unable to manually edit these skills on the ticket. However, as mentioned above by Kristen, this feature is currently in development and will hopefully be released this quarter.
Correct, skills based routing only works once a ticket is created. As and admin, you would need to manually update the skills field. However, the agent should still be able to assign over to a different group if necessary unless they have group restrictions set up.
Let me know if you have any other questions!
Has there been any development on Zendesk pushing tickets to the agents instead of the agents pulling tickets to themselves?
Thank you for all your questions -- it's great to see so much interest in the feature! Obviously we can't do everything at once, and some of your asks are complex or have a lot of interdepedencies. But we do take them into account on balance against the many other product requests we receive.
As of today,
@Pauli -- using skills in triggers is not currently planned. Having one rule kick off another gets pretty complicated. We hope that routing rules can replace many triggers, however. We are also looking at ways that routing rules can be re-run after ticket creation so the rule may be applied later in the ticket lifecycle as triggers are.
@Ola -- we hear you and it's on the backlog, but it's highly cross-dependent with work on the Views feature that would be needed in order to accommodate it. I don't have a timeline for you right now.
@Melysa -- we are moving in that direction and it also involves a lot of cross-product coordination and prioritization. I don't have a timeline for you either, but it is part of the ultimate vision as of now.
In the meantime, I hope the newly launched ability to have agents update skills on a ticket is helpful to your desired workflows! https://support.zendesk.com/hc/en-us/articles/360025120514
This setup means I need to turn off the triggers set to route tickets in order for skills-based routing to route the tickets?
We are in the process of implementing skills-based routing. Just out of curiosity: what is the thinking behind having tickets without a skill to be considered a skill match for all agents?
This appears to the case for both the skills match view and the /api/v2/routing/requirements/fulfilled.json endpoint. Seems counter-intuitive, especially since the views now only filter for skill matches and there is no way to create a "catch-all" skill that is not assigned to any agents.
Hello!
Are tickets checked against skill conditions in the order they are listed in? Both the order of skills and order of conditions inside?
Say I have
Spanish
Any
Device language = ES
App language = ES
French
Any
Device language = FR
App language = FR
English
No conditions
Would each ticket be checked against
1. Device being ES
2. App being ES
3. Device being FR
4. App being FR
5. If nothing matched - set to EN?
I briefly tried SBR in our Sandbox but decided not to roll it out just yet. There are no skills etc configured in our system. However, the Skills field now appears on tickets when I view/create them in both the Sandbox and the Live environment. Has the facility to turn this off been implemented yet?
UPDATE : I noticed that although not configured and in use, the SBR field was set to visible by Admins. Once I set to Disabled, this resolved the issue.
Hi! We set up a language skills based trigger based on website URL, but are not seeing that it is being applied in Zendesk for offline and maybe online chats too. Is someone able to assist us to ensure we set this up correctly?
Thank you!
Dear Zendesk, as mentioned above from others I would love to learn about your concepted use cases.
Many of the processes which we though Skill Based Routing could be good for are not doable for us, because no skills could be set by triggers, macros or automations (even not by bulk edit), and no-skill tickets are always shown.
This means we have to use groups instead, which produces a mess of rules + unwanted visuals.
Examples:
I could go on with various use cases, but I need to understand the general concept of "Skill based routing" before I could point out the problems we'd like to solve with it. Please help up. I don't seem to be the only one.
Btw we have 177 Macros, 95 triggers, 8 automations, ~20 views and 30 groups. We process ~1.500-2.000 tickets a day.
Regards
Oliver
Masha Patrakova as far as I learned "no conditions" is not possible for SBR. You have to set at least one condition to assign that skill to the ticket.
Skill rules are, as far as I know, ALL processed, because multiple skills could be set. But not sure on that. Contact your Zendesk Customer Success Manager to know for sure and roll out the rules you need ;)
Oliver
Oliver Tietze great points!
We had the same problem with that last bullet point. There is a check mark for all tickets that don’t have a skill. This is by design, but I still don’t quite understand the rationale.
Great to know about the other use cases you just listed out.
I'd like to echo the points a couple of people have made above:
1. We need the ability to apply SBR to more than one view.
2. The ability to toggle the filter of a view by skill (or frankly even just a field value in general) would be very welcome.
3. Skills need to be editable by macros and triggers.
4. Skills should be available as a value to filter on in standard views.
Has partial matching (as mentioned in this post https://support.zendesk.com/hc/en-us/articles/360000789788/comments/360000389728) been assessed as viable? (or not?)
As a follow-up question, I would love to be able to have skills that override other skills. For example, if I have a ticket that has two skills, one of them being a language based skill, I would love for that skill to remove/override all other skills. Our language based skill is our most important and we need it to trump all other "skills".
Oliver Tietze, thank you!
-----
No agent with matching skills: If there is no agent with the skills needed to address a ticket, that ticket will not be added to a skills-based view.
-----
What are some ways to keep track of those tickets to manually fix the skills?
Say we get a French-speaking customer who used our services in Spain: their ticket will get skills French and Spain, and we don't have agents with that skillset.
Is there a way to make a No skill match view to accompany the Skills match one?
Hi Masha,
The best practice is to use the skill match column to track tickets that do not match the skill set of your agents.
First, create an unfiltered view (or clone your skills match view). Then, set up your own skills to reflect the skills of all your agents.
You can spot tickets that are not assigned based on their lack of a checkmark!
See the article: https://support.zendesk.com/hc/en-us/articles/360000860028-Best-practices-Setting-up-skills-based-routing-Enterprise-
Hi, there!
Regarding "Note: Only certain views are compatible with filtering. Incompatible views appear in the drop-down menu, but are grayed out and cannot be selected.", could you please explain the criteria Support defines a view as incompatible with filtering to be selected in the drop-down menu?
Regards,
Renato
Melysa Cheatham Oliver Tietze @... Masha Patrakova Helen Foot
Automatically pushing tickets to agents via skills-based routing is coming soon to Playlist Ticket Assignment. It will be available by the end of August. If you prefer a pull strategy, skills-based routing will also work with our Playlist button feature using any view. You won't have to use a skills-match view, which I personally have not had any success in using.
Sara Gardinier we just learned about partial matching use cases and will consider adding that as well!
EDIT: moving to end of August
Thank you Au Finh!
I think this question was raised earlier, but can you you automatically route a ticket to an agent based on the skills based routing criteria? I have an agent Z with skills X, ticket comes in that requires skills X, can that ticket be automatically assigned to agent Z?
fellownarrator, it's currently not possible in Zendesk natively. However, we'll be adding this feature to Playlist soon, so stay tuned!
While we have allowed agents to see the skills on a ticket, it does not appear that agents can see the skills on their profile page.
In addition, we would like to be able to run a report to show all skills for all agents to evaluate our skills coverage. I know there is an API to pull the list of skills for a particular agent (/api/v2/routing/agents/{agent_id}/instance_values.json), but we need a report showing all, and I am not even seeing an API like this on the SBR developer page.
"Note: Only certain views are compatible with filtering. Incompatible views appear in the drop-down menu, but are grayed out and cannot be selected."
Renalto asked this question earlier https://support.zendesk.com/hc/en-us/articles/360000789788/comments/360004856693 but I never saw the answer. I need details as to what makes a view compatible and what does not. I had made a view for our non-English languages which is a perfect fit for filtering by skills (language). But It's not showing as a view I can apply the skills to. What details can I look for to understand why it would be incompatible?
Hi Reneé and Renalto
I checked in with the product team, and the answer is that there isn't really clear-cut criteria for what makes a view compatible or not. Apparently it has to do with how things are cached on our backend, and certain views are cached in such a way that they are incompatible. One example they gave was views that have a time based condition like "all closed tickets in the last hour," but there are a number of other things that can cause a view to be incompatible.
I'm sorry that we don't have a more comprehensive and detailed set of criteria we can share, but I hope that helps shed a little light.
Hi Nicole,
Thanks for that update. What do you recommend we do to get help with getting this set up on our work views. Several are not eligible to use and we can't figure out why. These are group-based, less than solved views keying off a custom category field, there is nothing time-based on them.
With Playlist, you can now automatically push tickets to agents using skills-based routing. See how it works to learn more. Took us a while, but we finally have a working solution!
Please sign in to leave a comment.