On Target

A quarterly publication of Society of Workforce Planning Professionals

Automating Intraday Adjustments

By Maggie Klenke

In a perfect world the forecast is accurate and staff are all following their schedules as planned.  Unfortunately, we don’t live in a perfect world in contact centers and adjustments to the processes during the day are critical to maintaining a relatively consistent level of service to customers.  For many centers, this process is highly manual and requires that an analyst recognize that a mismatch exists between the workload and the staffing, figure out a plan to address the problem, communicate with operations and/or IT to implement the plan, and continue to monitor to ensure the change has the desired effect. Once things have returned to normal, the analyst needs to recognize that and adjust the routing back to the standard plan. However, there is an automated option to make many of the desired adjustments even without the wonders of modern artificial intelligence capabilities.

Two Basic Examples

Let’s start by setting up two basic examples of a typical contact center layout.  We will start with calls in the example, but many of the same principles can be applied to other work types such as chats.  In the first example, there are three types of calls to be handled.  They might be sales, customer service, and technical support.  The volume of calls into each type is as follows:

  • Customer service = 100 calls per half-hour
  • Sales = 30 calls per half-hour
  • Technical support = 5 calls per half-hour

In the second example, multiple languages might need to be handled with agents who speak only English, some who are bilingual English/Spanish, and others who are bilingual English/French.  The volume of calls into each type is as follows:

  • English only = 100 calls per half-hour
  • Spanish = 30 calls per half-hour
  • French = 5 calls per half-hour

At its simplest, the telephone system (ACD) routing plan will identify the type of call by the phone number the caller dialed or the choice selected in the voice response menu (IVR).  It then routes the call to the queue associated with that choice and if no agents are available, places the callers in queue to be handled in the order in which they arrived.  

Overflow Routing

If one team in overwhelmed with work while others are sitting idle, a simple overflow arrangement can route calls that have waited longer than a set threshold to a backup team.  While this may provide some relief to the callers and agents in the busy queue, it can have some undesirable effects.  The receiving team may be one of the smaller groups and can easily become overwhelmed with overflow work from the larger team, and there is no way to pass it back once it has been rerouted.  For example, customer service calls from the overflow may be so heavy that the receiving team in sales may not be able to provide acceptable service to sales caller that are mixed into a common queue, possibly impacting revenue.  In the other example, if English calls are overflowed to the English/French team, a French speaking customer may need to wait much longer while the small bilingual team handles this extra workload.

Another challenge comes with special arrangements for some callers.  For example, an outsourcer might have a contract to handle a special call type with a maximum wait where a financial penalty is assessed if the service goal is not met.  

The Power of If/Then Routing

Most ACDS (even those several years old) have the capability to have call routing logic that is driven by a programming process based on the If/Then logic.  When a call arrives and is about to be routed to the specified queue, the system can check for defined conditions (the IF statement).  If the condition is met, THEN the next step in the routing logic is taken.  If the condition is not met, THEN the call is routed to the first target queue.

For example, the expected wait in the target queue can be checked and IF it is longer than X, THEN do the next step such as routing to a backup group.  There can be multiple steps as well.  After finding that the wait is longer than X in the primary target group, the next step might be to check the secondary target and see what the condition is there before sending the call on.  For example, if the secondary queue is a very small team, it might be good to add IF there are 2 or more agents idle, route the call to the secondary, IF not, then check a third option. This will protect the small team from being overwhelmed and ensure their callers maintain priority.


Another option that can be utilized is setting priorities.  There are two types.  One is the priority of one caller over another caller and the other is the priority of one agent over another agent.

In the example above, as the call is being routed into a small team’s queue, the call could be assigned a secondary priority in that queue behind those callers who are primary for that team.  However, there is a risk that there will be enough primary calls on an ongoing basis that the lower priority overflow calls would wait a long time to be handled.  For example, the English calls flowing into the English/Spanish queue would not be answered until all Spanish calls are handled even if they arrived after the English call was placed into the queue.

Instead of prioritizing the callers, the agents can be assigned higher and lower priorities to handle specific call types.  In our example, the agents in the secondary target queue could be assigned priority to handle the primary call type over anything else in that queue with all the callers being equal to one another.  This will still have the risk that overflow callers will wait longer than acceptable.  Checking both the expected wait in the primary queue and then also checking the secondary queue before determining if the wait is better one place than the other might also be an option.


The possibilities are huge.  Think about how you would want to handle calls and what you would do in a manual situation.  Then set up the system to do it automatically.  Not only will this reduce the workload for the real-time team, but the service to callers will likely be faster and more consistent.  The system makes the decisions one call at a time, so it recognizes a problem a lot faster than the analyst and fixes that call immediately.  When the next call comes in, the IF statement is checked again and if the situation has been resolved, it goes back to the normal routing.  Faster, easier and lower cost – what’s wrong with that?

Check with your IT/Telecom team to find someone with the knowledge of the system’s capabilities to help you set this up.  If needed, bring in the vendor team for needed expertise.  And if all else fails, find the manual for the system and assign a clever person on your team the role of figuring out how to make this all work to your advantage.  It is well worth the effort.

A word of caution – implement in stages.  It is best to do one change at a time and make sure it has the desired effect before doing another change.  If you implement multiple changes in a grand scheme all at once and anything doesn’t work as expected, it will be difficult or impossible to know which step is the cause.

Maggie Klenke has written numerous books and articles related to call center and WFM. A semi-retired industry consultant, Maggie serves as an Educational Advisor for SWPP.  She may be reached at Maggie.klenke@mindspring.com.