Using skills-based routing (Enterprise)

Return to top
Have more questions? Submit a request


  • Wouter van Gessel

    I'm missing some explanation in the articles, what will happen if a ticket matches a Skill. The article doesn't say if the ticket is then assigned to an agent, a group of agents, or what business rules can be attached. 

    What if we create a business rule that all French tickets should go to our two French colleagues: How will this show up in their Zendesk views? What happens if both colleagues are on leave, can other agents still see tickets? I'm missing an example of a business rule in the explanation. Hope you can help! :)

  • Matt Savage

    Piggybacking on Wouter's comment ^ as it seems we're going in a similar direction.  I also don't understand the specifics of where/how the routing occurs here and how it meshes with existing triggers/automations.  

    I'd also like to see (either manually or via machine learning) some way of estimating capacity in the routing, via some method similar to agile story points.  In the above scenario, if there are 2 French agents, it'd be incredibly helpful if the system could attempt to route a ticket to whichever one is a) available, b) has the most free capacity, and/or c) failover to some other location (i.e. a group) if neither agent can presently handle it.

    Can you provide more info on why skills aren't reevaluated on update like trigger conditions?  The scenario I foresee is: customer fills out a contact form, selecting the wrong product/value --> Skill A is set.  Agent w/ Skill A updates the ticket w/ correct product/value, which would then match Skill B instead (which they may not have).  What's the utility of keeping Skill A set when the ticket has now been identified as needing Skill B?  I understand this may be a limitation set for the early version of this feature to keep it simple but it seems like it'll be problematic in more complex routing scenarios, especially for internal transfers between teams (e.g. Support <--> Billing).

  • Melysa Cheatham

    Has there been any development on Zendesk pushing tickets to the agents instead of the agents pulling tickets to themselves?

  • Tom

    If we're more and more going to use Views for agents to see what they need to be working on, rather than the home 'Tickets requiring your attention', it would be useful if we could replace 'Tickets requiring your attention' with a (custom) View, that is shown to the Agent in place of the default 'Tickets requiring your attention'.

  • Au Finh Saechao

    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

  • Oliver Tietze

    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.


    • Escalated tickets that get processed by Level 2 agents. Our work is a lot based on macros. Assigning a ticket to a higher level currently means "assigning it to another group". To set the needed skill the agent would have to manually fill the "Skills" field, because the macro could not do it.
    • Tickets covering a specific problem so we generate a temporary workgroup. We search for all related tickets and could bulk edit them. But: assigning the needed skill is not possible, so we would have to get back to group (or workarounds based on tags). Clicking ticket by ticket to set the needed skill is a no-go.
    • Tickets that turn out to be in a specific language. Same as above.
    • Tickets SHOWN in the skill-based list view: Even if we had "English" tickets marked and "English" agents present, the english tickets cannot be identified, because ALL tickets have a "Skill match" checkmark. This way our extra-skilled agents have to process everything - and eventually the "English needed" tickets are just showing up after their shift has ended and no one else could process them. Sorting the matches is essential.

    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.




  • fellownarrator

    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?  

  • Kristen Mirenda

    Hi @justin -- a ticket can absolutely have multiple skills assigned to it! That's what makes skills-based routing especially powerful. An agent will be considered a match for a ticket if they have all the skills that ticket requires. So in the example you gave, an agent that only has "Mandarin" and not "Refund" would not be considered a match (in the future we will be looking at partial match logic). 

  • Sean Starwind

    It seems as though, at the moment, we can only set 1 view for skills match on the routing settings page?

    Are there any plans to allow this to be set on more than one view?

  • Davide Spiezio

    @kristen, is there any news about the feature to let also Agents can modify Skills on the ticket? 

    It would be really useful for us in our organization. It is also either good to have the Skills to be dynamic. 
    Example we have 2 fields that will be implemented in Skills route (Product Area and Category). In my tests in Sandbox, once a skill is assigned at ticket opening (Based on Product and Category), skill will not change if an Agent manually modify Product Area and/or Category. 

    So our needs as of now are:

    1. Agents can modify manually Skills on opened tickets.


    2. Skills are modified dynamically if the Fields set in the Skills route are changed. 

    Option 1 would be good as well, if you can have also option 2 is even better (And still having view-only permission for Agents).

    Do you think we can also set Custom triggers for option 2?

  • Andrew Checkley

    Looks good, but needs automatic intelligent routing. i.e. assigning to the appropriate person at point of raise. if multiple matches then assign to the agent with the least amount requests taking into account current state of assigned tickets and SLA 

  • Renato Milan dos Santos

    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?



  • Alex Aguilar

    Can agent skills be updated/changed via api?

  • Reneé Lasswell

    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.

  • Brett Bowser
    Zendesk Community Team

    Hey Rudolph,

    The Product team is actively working on improving this feature but I don't have any sort of roadmap to provide unfortunately. I recommend following our Announcements page as we actively post updates there when available :)


  • Jamie Noell

    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.

  • Au Finh Saechao

    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!

  • Kristen Mirenda

    Hi @andrew and @will -- I could not agree more! Both direct routing (assigning) to agents and partial skill match are part of the vision for the future. We're building this out one layer at a time. We know this version isn't optimal for all use cases, but we wanted to release it as soon as we had an end-to-end solution, rather than hold back completely until the feature is "done" (there's no such thing anyway). This approach allows us to provide something useful and lets us gather real usage data to inform our next iteration.

  • Kristen Mirenda

    It's all good @will -- this is part of the learning.

    We conceived of a "skill match" as answering the question, "does the agent have all the skills needed to take this ticket?" -- that's why a ticket with no skills will match everyone.

    If you want to disqualify tickets from skills matching, could you work with the conditions on the view where you put the column? Would you also mind talking a little about the use case for disqualifying tickets to help us understand what you’re trying to do?


    @tom -- That's similar to the direction we're heading. We found that not a lot of customers made use of 'Tickets requiring your attention' however -- how are you using it?


    @paul -- We envision this as a replacement for some (actually, a lot of) triggers. We also envision it as a replacement for some groups that exist solely to segregate the tickets a particular agent can work on. We are working towards direct agent assignment as part of automated routing, but you will always be able to use triggers in concert with routing rules if you so choose.

  • Kristen Mirenda

    Hi @Wes! Good spot -- I think perhaps you saw a premature update that was briefly/mistakenly live. So I might as well tell you what's coming!

    As mentioned in the announcement a few weeks ago, we're working on a setting to configure whether the skills box does or doesn't show up on the ticket form for admins. The use case here is when the admin has tried out SBR but decided not to roll it out. This will provide a way to make that box go away if you're not using it.

    In the course of implementing that, we realized that we could probably use this setting to cover view/update options for both admins and agents. So we went for it, even though it's solving a different problem. We will test it out in beta first.

    However, we've decided to hold back just for now on the update option for agents. Because we're also working on the ability to re-run routing rules on a ticket, and we want to think about automatic and manual updates together. 

    So when we do release this configurable setting in the coming month(ish), initially the options will be:

    1. Admins see an editable skills box, agents see a view-only version. 
    2. Admins see an editable skills box, agents see nothing.
    3. Nobody sees anything.

    We didn't want to pile too many use cases on this one enhancement. But soon we'll take the next step and test a solution to the additional need that you described.

    At this stage in our evolution, Zendesk workflow has reached a level of complexity where we want to be careful introducing changes, especially to agents. Doing it incrementally gives us room to test use cases separately and more easily unwind if we need to.

    TL;DR: we well are on our way to allowing agents to update skills on tickets, via incremental steps to allow us to get it right.

  • Jamie Noell

    Thank you for adding skills as a criterion for all views!  It would be so helpful if the presence of a skill could be a trigger condition.

    Example: If ticket has the xyz skill, route to this group, set this category custom field, etc.

  • Kristen Mirenda

    Thank you so much for the feedback! We're working on augmenting this documentation with some additional info. In the meantime, hopefully this will help.

    This is the first iteration of this feature, and it doesn't yet cover all the use cases we plan to support over the coming months.

    For now, we retain the "pull" paradigm of agents taking tickets from views. To show agents which tickets match their skills, add a "Skill match" column to the view. If the agent looking at the view has all the skills required by a ticket, that ticket will have a checkmark next to it.

    The next release will offer a filtered experience that will work with Play mode. Therefore, for many customers, this version of Skills-based routing is best suited to the time-consuming task of setting up and testing new routing flows. We've published some best practices to guide you.

    In addition to seeing how tickets are matched to an agent, you can see which skills were applied to a specific ticket, and update them if needed. Only admins can do this right now. This will help you QA and troubleshoot your new routing rules.

    Routing rules run before triggers, and for now on ticket creation only. Manually updating skills on the ticket is the only way to change them. We do not currently re-run routing rules on ticket update to ensure ticket update performance isn't compromised, but that use case (essentially, "re-routing") is one of the things we're working on for a future release.

    Additionally, we're working on a "push" paradigm of routing tickets directly to agents, which would likely entail a way to ensure that they're going to agents who are available and not overloaded. 

    There's some more information about our plans for Routing in the launch announcement. This is just the first step in a long journey!

  • Kristen Mirenda

    Just a note that @Massimo's question has been answered in the comments of the release announcement, where we're currently funneling the discussion.

  • Hannah Voice

    Since skills are only applied at ticket creation, what would ever be the point of adding a skill manually to a ticket? I think I must be missing something. The guide says:

    If a skill is added to an existing ticket, it will not be added to views based on that new skill.

    So, if the ticket still isn't going to show up in the skills views, what would be the point of adding the skill to the ticket? Does it do anything at all? 🤔

  • Will Ginsberg

    @kristen mirenda -- there needs to be an ability to show the skill match column as checked if the agent has ANY of the skills on the ticket (not ALL) of the skills. It's also really frustrating that if a given ticket doesn't have any skills applied that the ticket is shown as checked in the skill match column. 

    As of right now I don't see a clear way to:

    a) Assign a specific skill to an agent for a specific ticket topic

    b) Without assigning skills to all tickets (so that all tickets don't appear as checked, because ticket MUST have a skill in order to appear unchecked in "Skill match" otherwise they're shown as checked)

    Because of (b) I need to assign a skill to all tickets we receive that has no agents assigned, BUT because agents must have ALL skills assigned and I can't assign agents to the "mass skill" that I applied that means that the "Skill match" column never appears checked. 

    Just to simplify in case it helps...

    Let's assume you have two skills. Skill one applies to every ticket received (so that they don't all appear as skill matched because they lack a skill), skill two applies to tickets with specific criteria. Skill one has no agents assigned and skill two has one agent assigned. 

    Because of the fact that agents must have ALL of the skills and the agent assigned skill two but isn't assigned skill one, they never see skill match. 

    Super frustrating! If every ticket without a skill wasn't checked as skill matched you'd solve a lot of headache and this product would work. 

  • Paull Charman

    Is there any update on when we might be able to use skills as conditions in triggers?

  • Antonio Naddeo

    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?

  • Reneé Lasswell

    "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 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?


  • Justin

    I have a use case that may not have been considered. 

    Can a ticket have multiple skills assigned to it?

    For example lets say that I have the "Mandarin" language skill, and the "Refund" skill. Both are different skill types but may be present on a ticket.

  • Ola Timpson

    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.


Please sign in to leave a comment.

Powered by Zendesk