header
No Status

Assign CTAs to a CSM Pool or Queue

  • 30 August 2020
  • 8 replies
  • 75 views

Userlevel 6
Badge

Many companies are mixing digital touch and low touch as a way to more effectively manage the long tail of their customers. Through low touch, they need a way to easily manage a large amount of customers with very few CSMs. In this world, it’s not uncommon to see 1000 customers being managed by one CSM. This can often be quite challenging to manage for a CSM and it can often lead to an unbalanced workload across the team. 

The solve this, companies want to use Pooled CSM teams that work across the entire customer segment and aren’t assigned to a specific portfolio. Each CSM is dedicated to all accounts in the segment and would be assigned CTAs on a round-robin sequence based on their availability. This idea is similar to how support queues work in ticketing systems. There is no dedicated rep so the system identifies which person the ticket should next be assigned to. 

 

Current Workaround

I have previously implemented workarounds to solve for this use case but they aren’t very scalable. Here’s what we did:

  • We created a new user called CS Pool. We set up the email as a distribution list so that it would notify everyone in the pool whenever Gainsight sent a notification. 
  • We assigned all low touch accounts to this CSM Pool user.
  • All CTAs are automatically assigned to the CSM Pool user and we used reports, dashboards, and the Cockpit for CSMs to see when a new CTA was created. 
  • Once the CTA is created, it was up to the CSMs to pick it up and assign it to themselves. Managers were also able to triage the queue and assign CTAs to CSMs if needed.

For this solution, CSMs were self-assigned. If a CTA was still assigned to the CSM Pool user, it meant a CSM wasn’t working on it yet. We used this CSM assignment as the first step for the team to know if something was being worked on or not which helped us to better manage the queue. 

 

Improved Solution

The workaround above has many gaps. It is completely dependent on CSMs self-assigning themselves to tickets. This works ok for small teams but quickly becomes ineffective for teams of 5 or more CSMs. It also enables CSMs who want to grab all the CTAs and those who want to just sit on the side lines. 

 

An improved solution would be to have a similar concept of Salesforce’s Support Queues. Ideally, it would be great if we could create queues in Gainsight and assign CSMs to the queue. And then, ideally, we could use the rules engine to create assignment rules or order similar to how Salesforce uses assignment rules. 

In Salesforce’s assignment rule, you can define the following. I know it will likely be quite a bit of work to build this in GS but it would be helpful if we could at the very least be able to define the Order, Criteria, and User.

 

FIELD DESCRIPTION
Order

Sets the order in which the entry is processed in the rule, for example, 1, 2, 3.

Salesforce evaluates each entry in order and tries to match the criteria for the entry. When a match is found, Salesforce assigns the item and stops evaluating the rule entries for that item. If no match is found, the item is reassigned to either the default Web-to-Lead owner, the administrator doing a lead import, or the default case owner.

Criteria

Specifies conditions that the lead or case must match for it to be assigned.

Enter your rule criteria.

  • Choose criteria are met and select the filter criteria that a record must meet to trigger the rule.For example, set a case filter to Priority equals High if you want case records with the Priority field marked High to trigger the rule.

    If your organization uses multiple languages, enter filter values in your organization’s default language. You can add up to 25 filter criteria of up to 255 characters each.

    When you use picklists to specify filter criteria, the selected values are stored in the organization's default language. If you edit or clone existing filter criteria, first set the Default Language on the Company Information page to the same language that was used to set the original filter criteria. Otherwise, the filter criteria may not be evaluated as expected.

  • Choose formula evaluates to true and enter a formula that returns a value of “True” or “False.” Salesforce triggers the rule if the formula returns “True.” For example, the formula AND(ISCHANGED( Priority ), ISPICKVAL (Priority, "High") ) triggers a rule that changes the owner of a case when the Priority field is changed to High.

If your condition uses a custom field, the rule entry is deleted automatically if the custom field is deleted.

User

Specifies the user or queue that the lead or case is assigned to. Users specified here cannot be marked “inactive”, and they must have “Read” permission on leads or cases.

Note

NOTE You can't revoke the “Read” permission on leads or cases for users assigned to a rule.

If your organization uses divisions, leads are assigned to the default division of the user or queue specified in this field. Cases inherit the division of the contact to which they are related. If no contact is specified, cases are assigned to the default global division.

Do Not Reassign Owner Specifies that the current owner on a lead or case will not be reassigned to the lead or case when it is updated.
Email Template Specifies the email template to use for the notification email that is automatically sent to the new owner. If you don’t specify an email template, then Salesforce doesn’t send a notification email. When a lead or case is assigned to a queue, the notification email is sent to the Queue Email address specified for the queue and all queue members.
Predefined Case Teams

Specifies the predefined case teams to add to a case. A case team is a group of people that work together to solve cases.

To select a predefined case team to add to the assignment rule, click the Lookup icon (Lookup icon). To add more predefined case teams, click Add Row to add a row in which you can specify a predefined case team.

Replace any existing predefined case teams on the case When a case matches the condition, any existing predefined ca

8 replies

Userlevel 6
Badge

FYI @Jon_Wong @aileen.weiss 

Userlevel 7
Badge +2

@jean.nairon This is a great suggestion.  I too have used the workaround option that you describe above.   The only difference is that we had a leader that would assign out the CTAs ensuring that everyone got an equal number, and they were all assigned daily.  Incidentally, I’ve also used SF queues for the same purpose, and found it to be equally not perfect.  

Definitely worth solving for in some way I would say.  

Userlevel 4

Thank you @jean.nairon - we are just starting to discuss this concept and this may be helpful so we don’t have to reinvent the wheel here! 

 

 

Userlevel 6
Badge

You’re welcome @cnichols! Hope the workaround works for you. Please reach out if you have any questions about it.

Thanks for the additional insights @heather_hansen. I have seen manager assign things manually as well but there has to be a better way than having managers do it. 

Userlevel 1

@jean.nairon Thanks for posting this suggestion! Would be extremely beneficial to have something like a “support queue” implemented. 

Userlevel 7
Badge

Many companies are mixing digital touch and low touch as a way to more effectively manage the long tail of their customers. Through low touch, they need a way to easily manage a large amount of customers with very few CSMs. In this world, it’s not uncommon to see 1000 customers being managed by one CSM. This can often be quite challenging to manage for a CSM and it can often lead to an unbalanced workload across the team. 

The solve this, companies want to use Pooled CSM teams that work across the entire customer segment and aren’t assigned to a specific portfolio. Each CSM is dedicated to all accounts in the segment and would be assigned CTAs on a round-robin sequence based on their availability. This idea is similar to how support queues work in ticketing systems. There is no dedicated rep so the system identifies which person the ticket should next be assigned to. 

 

Current Workaround

I have previously implemented workarounds to solve for this use case but they aren’t very scalable. Here’s what we did:

  • We created a new user called CS Pool. We set up the email as a distribution list so that it would notify everyone in the pool whenever Gainsight sent a notification. 
  • We assigned all low touch accounts to this CSM Pool user.
  • All CTAs are automatically assigned to the CSM Pool user and we used reports, dashboards, and the Cockpit for CSMs to see when a new CTA was created. 
  • Once the CTA is created, it was up to the CSMs to pick it up and assign it to themselves. Managers were also able to triage the queue and assign CTAs to CSMs if needed.

For this solution, CSMs were self-assigned. If a CTA was still assigned to the CSM Pool user, it meant a CSM wasn’t working on it yet. We used this CSM assignment as the first step for the team to know if something was being worked on or not which helped us to better manage the queue. 

 

Improved Solution

The workaround above has many gaps. It is completely dependent on CSMs self-assigning themselves to tickets. This works ok for small teams but quickly becomes ineffective for teams of 5 or more CSMs. It also enables CSMs who want to grab all the CTAs and those who want to just sit on the side lines. 

 

An improved solution would be to have a similar concept of Salesforce’s Support Queues. Ideally, it would be great if we could create queues in Gainsight and assign CSMs to the queue. And then, ideally, we could use the rules engine to create assignment rules or order similar to how Salesforce uses assignment rules. 

In Salesforce’s assignment rule, you can define the following. I know it will likely be quite a bit of work to build this in GS but it would be helpful if we could at the very least be able to define the Order, Criteria, and User.

 

FIELD DESCRIPTION
Order

Sets the order in which the entry is processed in the rule, for example, 1, 2, 3.

Salesforce evaluates each entry in order and tries to match the criteria for the entry. When a match is found, Salesforce assigns the item and stops evaluating the rule entries for that item. If no match is found, the item is reassigned to either the default Web-to-Lead owner, the administrator doing a lead import, or the default case owner.

Criteria

Specifies conditions that the lead or case must match for it to be assigned.

Enter your rule criteria.

  • Choose criteria are met and select the filter criteria that a record must meet to trigger the rule.For example, set a case filter to Priority equals High if you want case records with the Priority field marked High to trigger the rule.

    If your organization uses multiple languages, enter filter values in your organization’s default language. You can add up to 25 filter criteria of up to 255 characters each.

    When you use picklists to specify filter criteria, the selected values are stored in the organization's default language. If you edit or clone existing filter criteria, first set the Default Language on the Company Information page to the same language that was used to set the original filter criteria. Otherwise, the filter criteria may not be evaluated as expected.

  • Choose formula evaluates to true and enter a formula that returns a value of “True” or “False.” Salesforce triggers the rule if the formula returns “True.” For example, the formula AND(ISCHANGED( Priority ), ISPICKVAL (Priority, "High") ) triggers a rule that changes the owner of a case when the Priority field is changed to High.

If your condition uses a custom field, the rule entry is deleted automatically if the custom field is deleted.

User

Specifies the user or queue that the lead or case is assigned to. Users specified here cannot be marked “inactive”, and they must have “Read” permission on leads or cases.

Note

NOTE You can't revoke the “Read” permission on leads or cases for users assigned to a rule.

If your organization uses divisions, leads are assigned to the default division of the user or queue specified in this field. Cases inherit the division of the contact to which they are related. If no contact is specified, cases are assigned to the default global division.

Do Not Reassign Owner Specifies that the current owner on a lead or case will not be reassigned to the lead or case when it is updated.
Email Template Specifies the email template to use for the notification email that is automatically sent to the new owner. If you don’t specify an email template, then Salesforce doesn’t send a notification email. When a lead or case is assigned to a queue, the notification email is sent to the Queue Email address specified for the queue and all queue members.
Predefined Case Teams

Specifies the predefined case teams to add to a case. A case team is a group of people that work together to solve cases.

To select a predefined case team to add to the assignment rule, click the Lookup icon (Lookup icon). To add more predefined case teams, click Add Row to add a row in which you can specify a predefined case team.

Replace any existing predefined case teams on the case When a case matches the condition, any existing predefined ca

@jean.nairon Thanks for your valuable time here. Its a great explanation. 

Userlevel 2

This will be big for us in 2021. We can handle the process via reports and a dashboard but to automate it would ensure scalability.

Userlevel 6
Badge

@jgalvan - feel free to reach out if you run into any challenges or aren’t show about some of the specifics for delivering this solution. 

Reply