Forecast a Staffing Plan
General Forecast
Forecasting is a tool in CXone WFM, you can use to create the optimal staffing plan. With this tool, you don't need to waste time figuring out how many agents you want on-call, or what skills you need at any given time or day to build your schedule.
Depending on your needs, forecasting and staffing plans are generated for both inbound and outbound calls.
First, you review the historical data from your contact center. Based on that, Forecasting predicts the expected volume of interactions and their average handle time (AHT). Then, you define how you want your center to perform. For example, you decide that each call is answered or dialed in less than 10 seconds compared to 30 seconds. Lowering the average speed of answer The average amount of time it took an agent to answer an interaction after they chose the option to speak to an agent or increasing the number of dials needs more agents scheduled. The last step is generating a staffing plan based on the staffing parameters and forecast data.
For accurate forecasting results, you need at least three months of historical data.
You can also create a new forecast job with imported forecast data.
Quick access to the forecasting steps:
You can learn more about Forecasting with these videos:
- Forecasting overview tutorial: Learn how to generate a staffing plan using Forecasting.
- Forecasting models overview: Learn about the models used within CXone WFM to generate a forecast. You'll have a deeper understanding of how CXone WFM generates forecasting data and its algorithms.
- Select a forecast model: Learn how to select a forecasting model when creating a forecasting job (for users with the CXone WFM Advanced license).
- Import forecast data: Learn how to import forecasting data to CXone CXone WFM using a CSV file.
To generate a new staffing forecast:
-
Click the app selector and select CXone WFM.
-
Go to Forecasting > Generate Forecast.
-
Click Generate Forecast.
-
Define the Forecasting Parameters (step 1 of Forecasting). For example, you can create a forecast and staffing plan for the following week or up to a year.
-
Enter a Job name and, optionally, a Description.
These details will appear in the Generate Forecast list.
-
Choose the time zone for viewing the data.
-
Select the Forecast Models that calculate the forecast. This feature is only available for users with the CXone WFM Advanced license.
-
Define the forecast time period.
Learn about defining the forecast time increment and duration-
Duration: Choose the time period you want to create a forecast for. In the drop-down, select forecast duration and define From where to start. The end date is set automatically based on your forecast time selection.
For example, you select 1 year in the Duration drop-down and Jan 1, 2019 as the start date. The end date is automatically Jan 1, 2020.
-
Forecast time increment: The forecast and staffing plan will display data based on the increment you selected.
If you use a forecasting profile with a defined time increment, this setting will be grayed out.
-
-
Define the historical data time period.
Learn about defining historical data and Interval breakdown pattern-
Duration: Choose how many months of historical data the forecast should use, and define the end date. The start date is set automatically based on this.
We recommend at least 13 weeks of historical data to generate an accurate forecast.
-
Interval breakdown pattern: Here you choose the number of recent weeks to put a stronger emphasis on. Those recent weeks make the forecast even more accurate. The default is 8 weeks because the last two months show your operation pattern and are typically long enough.
Let's say you define these values:
-
Duration: Jan 1—Dec 31, 2020
-
Interval breakdown pattern: 8
This means that the forecast takes historical data from all of 2020. But because you defined the breakdown pattern as 8, the data from December and most of November are prioritized.
-
The historical data from CXone ACD is evaluated based on true to interval paradigm to generate an accurate forecast.
See more about True to Interval (TTI) Paradigm.
-
Under staffing parameters, select either:
-
Set global parameters for all forecasted skills (global)
-
Set staffing parameters for skills defined in a profile (defined in a profile
A warning message is shown when you select either the skill set and forecast date range or the profile and forecast date range for which a forecasting job already exists. You can still go ahead and create the forecast job. The message is to help you avoid generating repetitive forecast jobs.
Learn about staffing parametersHere you select the skills An employee's area of expertise. A skill can be fluency in a specific language or business skills, such as sales or technical support. you want to forecast:
-
Global: Select the skills you want to forecast from the drop-down list.
The KPIs An established metric used to measure agent performance that you configure in step 4 of forecasting (Staffing Parameters) will be applied to all of these skills.
-
Defined in a profile: Select a forecasting profile from the drop-down list.
The profiles contain skills and configured KPIs. Selecting this option will save time later in step 4 of forecasting (Staffing Parameters).
-
-
Click Retrieve Historic Data.
The data retrieval process may take a while. You can navigate away while you wait. On the Generate Forecast page, the forecast job status will be listed as a Retrieving requested data. Click on it when you're ready to continue.
-
Review the Historical Data (step 2 of Forecasting). Here you review the volume The total number of interactions, including digital posts and comments, usually within a defined time and average handle time The average amount of time an agent spent handling an interaction (AHT) of your center's historical interactions, and more.
In case of outbound, total is received from the ACD. This includes parameters RPC Handle time, RPC Contacts, WPC Handle Time and WPC contacts. The forecast is generated for all the calls and dials in case of outbound or dialer, irrespective it being RPC or WPC
See all actions and detailsYou can perform the following actions in this step
-
Switch between the Volume and AHT graphs.
-
View the data in different time intervals. To view a specific day, click on the date in the graph.
-
Export the data to a CSV file: click Options and select Export to CSV.
In the Export CSV window, Name the CSV and Select the skills you want to export. You can select up to 50 skills per export.
Select the date range of the data you want the export. The end of the range is automatic.
How the End date is calculatedThe range of the data ends according to one of these conditions:
-
On the last day of data for the selected skills. If the ranges starts on Jan 1 and there's no data after March, the range will end on March 31.
-
Up to six months ahead. If the range starts on Jan 1, 2023, and there's data for two years, the range will end on Dec 31, 2023.
-
When the CSV size reaches 45 MB. Let's say you selected 50 skills and the ranges starts on Jan 1. If the system includes data beyond March 31, the file will exceed 45 MB. In this case, the range ends on March 31.
The End date is displayed automatically once one of these conditions is met.
-
-
Filter the data that's displayed in the graph. Each skill has a consistent color in the graph, but the type of line (such as a thick or dotted line) may change.
In the Show skills in graph drop-down, you can view by:
-
Total volume (when viewing by volume): Combine the interactions of all skills into one line in the graph.
-
All (when viewing by AHT): The average handle time of all skills into one line in the graph.
-
Deferrable and Real time: Select the skills you want displayed in the graph. You can select up to six skills at a time.
-
Real time: Select the real-time skills you want displayed in the graph. You can select up to six skills at a time.
-
Deferrable: Select the deferrable skills you want displayed in the graph. You can select up to six skills at a time.
-
-
Check for any inaccurate data. In this case, the staffing plan might be affected and not be accurate. To handle inaccurate data, see Troubleshoot Forecasting.
-
-
Click Generate Forecast.
Generating the forecast may take a while. You can exit this page and return when the Forecast Job status changes to Forecast ready on the Generate Forecast page.
-
Review the Forecast Data (step 3 of Forecasting). Here you review and edit the forecasted volume and AHT your center will receive, and more. Keep in mind, the forecast data might change after generating the staffing plan.
See all actions and detailsYou can perform the following actions in this step
-
Switch between the Volume and AHT graphs.
-
View the data in different time intervals. To view a specific day, click on the date in the graph.
-
Export the data to a CSV file: click Options and select Export to CSV.
In the Export CSV window, Name the CSV and Select the skills you want to export. You can select up to 50 skills per export.
Select the date range of the data you want the export. The end of the range is automatic.
How the End date is calculatedThe range of the data ends according to one of these conditions:
-
On the last day of data for the selected skills. If the ranges starts on Jan 1 and there's no data after March, the range will end on March 31.
-
Up to six months ahead. If the range starts on Jan 1, 2023, and there's data for two years, the range will end on Dec 31, 2023.
-
When the CSV size reaches 45 MB. Let's say you selected 50 skills and the ranges starts on Jan 1. If the system includes data beyond March 31, the file will exceed 45 MB. In this case, the range ends on March 31.
The End date is displayed automatically once one of these conditions is met.
-
-
Filter the data that's displayed in the graph. Each skill has a consistent color in the graph, but the type of line (such as a thick or dotted line) may change.
In the Show skills in graph drop-down, you can view by:
-
Total volume (when viewing by volume): Combine the interactions of all skills into one line in the graph.
-
All (when viewing by AHT): The average handle time of all skills into one line in the graph.
-
Deferrable and Real time: Select the skills you want displayed in the graph. You can select up to six skills at a time.
-
Real time: Select the real-time skills you want displayed in the graph. You can select up to six skills at a time.
-
Deferrable: Select the deferrable skills you want displayed in the graph. You can select up to six skills at a time.
-
-
Review the forecasted volume and AHT as a graph or grid. To switch the view, select Graph or Grid .
-
Click What If to create alternate forecasts. You can use this feature to compare different forecasting and staffing scenarios.
Learn about editing the forecasted data (including Bulk Edit and Normalize)You can edit any inaccurate data to improve your staffing plan.
Let's say you see that there's data for December 24. You know that the center is closed on that day, because of the holiday. You can edit the forecasted volume to 0.
You can make changes in the Graph or Grid view:
-
In the Graph view, drag the graph up or down.
You can make changes to a day when you're in the weekly and monthly view, or an hour when you're in the daily view.
-
In the Grid view, you see the forecasted volume and AHT for all selected skills.
You can only edit one date or interval (when viewing data by day) at a time. To edit, select the row and click Edit.
In the window, select the Skills you want to edit. After editing the volume and AHT, click Save.
If the forecasted interaction volume is 0 and you cannot edit it, see Troubleshoot Forecasting
To Bulk Edit from the Grid view:
-
Select the Skills you want to edit, as well as the Dates or Time, depending on your view.
-
When viewing a single day (1D): You edit by Hours. The intervals are divided according to the forecast time increments (15, 30, or 60 minutes).
-
When viewing by more than a day: You edit by Dates. You can also bulk edit by a specific Time range.
-
-
Select the Metric you want to adjust: Volume or AHT.
You can edit a range of the metric using Custom.
For example, you can adjust the interaction volume to a range between 100 and 200.
-
Select the adjustment Action. You can Increase, Decrease, or Normalize the selected metric.
When editing AHT, you can edit it by a defined number of seconds or a percentage.
When editing volume, you can edit it by a number of interactions or a percentage.
More about NormalizeUse Normalize to replace the current values with new values.
Let's say you want to adjust the AHT metric. On a specific date, you want the AHT to be between 100 and 200 seconds for a certain skill, regardless of the current AHT data.
When you normalize the volume or AHT, the selected range is randomized for the selected date. So if you selected between 100 and 200 seconds, one interval could be 154, another 129, and so on.
-
Click Apply. The changes are applied to all the selected skills, on the days or hours you defined.
Keep in mind:
-
If you see areas that the AHT or volume is unusually low, see Troubleshoot Forecasting.
-
If you want to undo all of your changes, click Revert to Original.
-
-
Click Generate Staffing.
-
Define the Staffing Parameters (step 4 of Forecasting). Based on these settings, the engine determines how many people you need to handle the forecasted interactions.
Keep in mind, if you are using a forecast profile, this section won't be available. You can only exclude a scheduling unit or add an allocation rule when you aren't using a forecast profile.
See moreLet's say the anticipated volume for a skill is 100. How many people do you need to handle these interactions? It depends on your staffing parameters.
If you selected a forecasting profile in step one of forecasting, some parameters will be grayed out based on the profile. The grayed out parameters means they are already defined in the profile.
Staffing parameters:
-
Skill allocations: Select skills from the forecast that you want to apply manual allocation. Unselected skills will be allocated automatically. You define the allocation for each skill on the CXone WFM Skill Allocations page.
See exampleLet's say a skill called English Chat requires 120 agents. You have four scheduling units that can handle that skill.
The automatic allocation distributes the scheduling units to meet the staffing needs:
-
Scheduling unit 1: 100 agents
-
Scheduling unit 2: 10 agents
-
Scheduling unit 3: 6 agents
-
Scheduling unit 4: 4 agents
In this example, the allocation isn't even. Most of the staffing needs are allocated to Scheduling unit 1 automatically. This is because they have more agents who can handle English Chat in proportion to the other units.
However, let's say you want to allocate the English Chat skill equally between the units. With manual allocations, you can define that each unit is allocated 25% of the skill. In this case, the staffing would be:
-
Scheduling unit 1: 40 agents
-
Scheduling unit 2: 40 agents
-
Scheduling unit 3: 40 agents
-
Scheduling unit 4: 40 agents
-
-
Exclude scheduling units: Select what scheduling units you don't want to include it in the forecast job. You can exclude up to five scheduling units.
-
Shrinkage level: Adjust the staffing plan for the anticipated level of absences in your workforce. You can define one level for All day or different levels By time.
See moreLet's say you're expecting that 10% of your staff will call in sick. You can define the shrinkage as 10%, and you'll compensate for the absences when generating a staffing plan.
You define the shrinkage level for the different days of the week. The shrinkage level will be 0 for the days you don't select.
To apply shrinkage, select the day and define one level for All day or different levels By time:
-
All day: Define the same level for the whole day.
For example, you know that usually there's a high level of staff shrinkage on Monday and Friday. You can define a shrinkage level for only those two days.
-
By time: Define shrinkage levels for different times of the selected day. Click the Add button to define another time. After that, you can define one level for the Rest of the day.
For example, you know that the morning shifts have a high level of staff shrinkage, and a low level for the evening. You can define:
-
15% level between 08:00 AM and 2:00 PM
-
5% between 6:00 PM and 11:00 PM
-
10% for the Rest of the day.
-
-
-
Service Tags: Define the targets that the staffing plan should meet.
Each target has its own section in the Staffing Parameters. The sections will be displayed only if you have skills associated with them.
Let's say the skills your forecasting are all Real Time Interactions. In this case, you won't see sections for Deferrable Work or Dialer.
-
Real Time Interactions: Contacts that must be handled immediately. If they are delayed, the customer may leave. This can cause customer unhappiness and missed chances.
Service level, Wait time, Maximum occupancy, Simultaneous handling-
Service level: Define the percentage of interactions you want answered within a defined number of seconds.
A common SLA is 80% of interactions answered in 30 seconds.
Let's say you want your agents to answer calls within 30 seconds. If your agents answered 60 out of 100 calls within 30 seconds, the SLA is 60.
Keep in mind, the generated SLA gets updated once the forecasting process is complete. Intraday displayed the final SLA and not what's displayed in step 4.
-
Wait time (ASA): Define the average amount of time it takes for an agent to answer a call. The generated ASA gets updated once the forecasting process is complete. Intraday displayed the final ASA and not what's displayed in step 4.
-
Maximum occupancy: Define the percentage of time the agent will be occupied handling interactions out of their shift.
A common value is 80%.
Let's say a shift is ten hours and you set the occupancy for 50%. This means that the agents will handle the interactions for 5 out of their ten hours.
-
Simultaneous handling: Define how many of the same interactions you can schedule an agent to handle simultaneously.
For example, you can schedule an agent to handle five chats at the same time.
The value for voice and face-to-face interactions is always 1 because agents cannot handle more than one at the same time.
-
-
Deferrable Work: Contacts that can be handled later on.
See more, including Simultaneous handlingDefine how many business hours it should take to handle all deferred contacts, and whether or not they must be resolved within the same workday.
Keep in mind that deferrable work has no abandons. This means these interactions generally span over multiple intervals or even multiple days. There is often a backlog of items outstanding.
Under Simultaneous handling, define how many of the same interactions you can schedule an agent to handle simultaneously.
For example, you can schedule an agent to handle nine emails at the same time.
-
Dialer: A service that automatically calls a list of customers. The answered calls are then transferred to agents.
This section is no longer available. With the support for outbound skills, forecasting and staffing can now be generated for any dialer skills.
List source and size, Handle time, Contact period, and Call time- List source: Select the source of the list for the dialer: Requested Call, Existing Relationship, or Cold Call.
Connected: Define what percentage of the calls on the list should connect.
Right party: Define what percentage of the calls on the list should connect to the right party. This number must be lower than the Connected calls.
-
List size: Enter the number of contacts on the list.
-
Handle time for wrong party: Define how many seconds it should take to handle calls that connected to the wrong party.
-
Handle time for right party: Define the amount of time (in seconds or minutes) it should take to handle calls that connected to the right party.
-
Contact period: Define the duration of time in which all of the calls on the list must be contacted.
-
Call time: Define the hours of the day during which these calls can be made.
- List source: Select the source of the list for the dialer: Requested Call, Existing Relationship, or Cold Call.
-
-
-
Click Generate Staffing Plan.
If you are using What If forecastingKeep in mind:
-
This just generates the primary forecast and not the alternatives. To generate a staffing plan for an alternative forecast, select it from the drop-down in the next step (Staffing). Once selected, it will get generated automatically.
-
If you make any changes to the forecasting job, all of the staffing plans from alternative forecasts will be deleted. The original primary plan will still be available.
For an updated staffing plan after you made changes to the job, click Generate Staffing Plan again. For staffing plans for alternative forecasts, select it from the drop-down in the next step.
-
Instead of making changes to an old forecasting job, it is recommended to create a new job with different parameters. This way you can keep the old data available.
-
-
Review the Staffing plan (step 5 of Forecasting): Here you review the number of agents (vertical axis) that the forecasting projects you'll need to schedule by time (horizontal axis).
You cannot make changes in this step.
If you see inaccurate data in the graph, review and edit the data or parameters in the previous steps.
Forecast data for AHT and Volume may vary after generating the staffingWhen you create a forecasting job, the system calculates the forecast data in two stages. First, the data is generated in Forecast Data (step 3 of forecasting), based on the required skills. Second, the system can improve the forecast data by distributing the workload across multiple scheduling units. After defining the Staffing Parameters (step 4), the data is regenerated. This time, the calculation also considers the scheduling units that can handle the interactions. This ensures that the forecast data is as accurate as possible. The forecast data is updated in Staffing (step 5).
When you generate a schedule based on a forecasting job, the forecast data is based on the data in step 5. The final forecast data is also displayed in the Forecast columns in Intraday Manager.
Actions you can perform in staffing (Step 5).
-
Review the data as a graph or grid. To switch the view, select Graph or Grid .
You can view the expected volume and Average Handling Time (AHT) in the grid view. The volume and AHT data are displayed for the selected scheduling unit and skills.
See how to view Expected volume/AHT
To view
-
Select Grid view if not already selected.
-
Select Skill for scheduling unit from the Show graph by drop-down.
-
Choose the scheduling unit for which you want to see the data from the Scheduling unit drop-down.
-
Choose the skills in the Skills drop-down for which you want to see the data.
-
Select the Expected volume/AHT checkbox. The expected volume and AHT data are displayed in addition to the Number of agents data.
You can export the staffing data as a CSV file. The CSV is sent via email. You can also forward the email to other employees to access the download link.
To export
-
Click Options and select Export to CSV.
-
In the Export CSV window, Name the CSV.
-
Select the Scheduling units for which you want to export the data.
-
How the selection of scheduling units and date range works
- If the maximum data capacity is reached, you cannot select additional scheduling units. A validation message appears at this point.
- The end date of the date range continues to update as you keep selecting scheduling units from the Scheduling units dropdown. This is because as you select more scheduling units, the data within the export increases. This results in a narrower date range to keep the performance intact. The lowest possible date range set is one week.
- Click Submit Request. You will get a notification when the CSV file is ready. The download link is shared through an email.
-
Select an alternate forecast from the drop-down in the Alternative or Compare tab. Once selected, it'll get generated and displayed automatically.
In the Compare tab, you can select two forecasts and compare their staffing plans.
-
View specific staffing data in the graph.
You can filter the staffing data that's displayed in the graph. Each skill has a consistent color in the graph, but the type of line (such as a thick or dotted line) may change.
In the Show graph by drop-down, you can view by:
drop-down option
Details
Skills View the graph's staffing data for the skills you select.
Scheduling unit
View the graph's staffing data for the scheduling units you select.
Skills for scheduling unit
View skills within a scheduling unit. First, select the scheduling unit you want to focus on. Then, select the skills that scheduling unit is handling.
Total staffing
View the graph's staffing data for all scheduling units and skills.
-
-
Click Done. The Forecast job's status changes to Completed successfully. You can now use the resulting Forecast Plan in the Schedule Generator.
What If Alternative Forecasting
When you're creating a forecast to generate a staffing plan, you might reach the Forecast Data step and wonder, what would happen if...?
With the What If option, you can create alternate forecasts. Here you can change the forecast data while using the same parameters and historical data. This way, you can run parallel forecasts.
In the Forecast Data step, you can change details and edit data in the alternate and primary forecasts without affecting the rest. Navigate between the forecasts by clicking the Primary or Alternative tabs. You can view the forecasts side-by-side from the Compare tab.
There is no limit to how many alternate forecasts you can create. Keep in mind, creating more than five can slow down the forecasting process.
To use What If forecasting, you need the following permission enabled for your role: CXone WFM > Forecasting > What If Comparison: On.
Create What If Alternate Forecasts
In the Forecast Data step of forecasting, click What If.
This forecast is a duplicate of the primary one. You can make any changes to the alternative without changing the primary forecast. If you want to create more than one alternate forecast, click What If to add another.
After you create the first alternate forecast, three tabs are added to the page:
-
Primary: This tab displays the forecasted volume/AHT for the primary forecast as a graph or grid. You can still make edits to this forecast, even if you create alternate forecasts.
-
Alternative: This tab displays the forecasted volume/AHT for the alternate forecasts as a graph or grid.
If you created more than one alternative forecast, select which one you want to see in the Displayed forecast drop-down.
You can change the name of the displayed alternate forecast by renaming it.
-
Compare: This tab displays the total forecasted volume/AHT for both forecasts in the same graph (as separate lines). In the grid view, you can see a breakdown of the volume and AHT for each skill, with the values for the primary and alternate side-by-side.
In the Alternative tab, you can:
-
Make the alternate forecast your primary: Click Set as Primary. To undo, repeat this step. The original forecast will be listed in the Alternative tab.
-
Export the historical data to a CSV file: Click Options and select Export to CSV.
-
Delete an alternate forecast: You can remove an alternate forecast at any point. Click Options and select Delete This Alternative.
You can also Delete All Alternatives. This will delete of the alternate forecasts. Keep in mind, If you make an alternate forecast the primary, it will not be deleted. The original will remain as an alternate forecast and cannot be deleted.
-
Rename the alternate forecast: By default, the name of the alternative forecast shares the same name as the primary, ending with <forecast name>_Alternate.
Let's say you called your forecast Winter Staffing. The first alternate is called Winter Staffing_Alternative1 until you rename it.
To rename, click Options and select Rename Forecast.
You can rename an alternative forecast you know you'll use for a staffing plan.
For example, you have three alternative forecasts to a primary called Winter Staffing. You can rename the second alternative forecast to Use This. When generated, the staffing plan will be called Winter Staffing_Use This. The remaining staffing plans will be called Winter Staffing, Winter Staffing_Alternative1, and Winter Staffing_Alternative3.
-
When you generate a staffing plan with an alternate forecast, the job status you see on the Generate Forecast page is according to the status of the primary forecast.
For example, the primary forecast is still being generated but the alternate is finished. The status of the job will be—Staffing generation starting.
In this case, you can use only the alternate forecasts in the Schedule Generator because the primary forecast hasn't been generated successfully yet.
-
To generate a staffing plan for an alternative forecast, select it from the drop-down in the Staffing step. Once selected, it will be generated automatically.
-
If you want to make changes to a forecasting job, it is recommended to create a new job and then make the changes. This way you can keep the old data available.
If you make any changes to the forecasting job, all of the staffing plans from alternative forecasts will be deleted. The original primary plan will still be available.
Forecast Models
Models
To calculate the forecast data, CXone WFM runs different math models on the historical data. Each model is a time series algorithm that calculates the forecast differently.
The models are:
The Box-Jenkins ARIMA (Auto Regressive Integrated Moving Average) is a time series based methodology that uses either past values (the autoregressive model), past errors (the moving average model) or combinations of the past values and past errors.
The Box-Jenkins method is well suited to handle complex time series forecasting situations in which the basic pattern is not readily apparent. It uses an iterative approach to identify a useful model from a general class of models.
The methodology does not make assumptions about any particular pattern within the historical data. Instead, it uses iterations to identify the patterns and incorporate them into the model.
The chosen model is then checked against the actual (historical) data to see if it accurately describes the history. If the model does not fit well, the process is automatically repeated until the most accurate model is found.
Since an ARIMA model is a type of time series forecast, you can use an ARIMA model when you are able to assume a reasonable amount of constancy between the past and the future. For example, future patterns will be similar to past patterns.
Exponential Smoothing is a time series based model that provides a means to automatically calculate weights on all past data based on a determined smoothing factor. It is a more sophisticated approach than the Weighted Moving Average model.
Exponential Smoothing uses the average of historical data with exponentially decreasing multipliers. In its seasonal version, the Exponential Smoothing model uses three related equations for level, trend, and seasonality as the basis for a forecast.
Exponential Smoothing that considers additive seasonal changes and trends is represented as an absolute amount.
For example, if you forecast 1000 more contacts every December than in November, the seasonality is additive.
Exponential Smoothing that takes into account multiplicative seasonal changes and trends represented as a constant factor.
For example, suppose you forecast 10% more contacts in the summer months than in the winter months. In that case, the seasonality is multiplicative.
Curve fitting constructs a curve best fitted to a series of data points. Historic data serves as known data points. The curve fitting model attempts to estimate or approximate the new data points, which is the forecast.
Curve fitting is based on a set of statistical processes to produce a line, which does not have to be straight, based on a mathematical criterion. This way, curve fitting is used to infer future values. This non-straight statistical process is commonly known as non-linear regression. It is useful in situations with increased difficulty in predicting future values due to a higher degree of randomness in the historical data.
Autoselect
By default, CXone WFM calculates all models and chooses the most accurate one. This process is called Autoselect. CXone WFM Advanced users can choose a specific model and skip the autoselect process.
Autoselect follows a couple of steps to generate the forecast data as accurately as possible. The automatic process saves you time and energy to create the forecast data.
Before calculating the forecast data, a couple of weeks from the end of the historical data is removed. Those last couple of weeks are called the holdout or validation period. They will not be included when calculating the forecast data. This process is called holdout, backtesting, or out-of-sample testing.
After that, all forecasting models are calculated without the holdout period.
The model with the most accurate MAPE Mean absolute percentage error is a measure of prediction accuracy of a forecasting method is selected. CXone WFM recalculates the forecast data with the selected model, but this time it includes the holdout period.
Keep in mind, autoselect is applied separately to the volume and AHT for each skill.
For example, let's say you generate a forecast with autoselect for two skills: Calls and Chat.
Autoselect may generate the forecast data for each skill and their volume and AHT differently.
The auto-selected model by skills with volume or AHT could be:
skill |
Volume |
AHT |
---|---|---|
Calls | Box-Jenkins ARIMA | Multiplicative Triple ES |
Chat |
Exponential Smoothing | Curve Fitting |
Troubleshoot Forecasting
You can watch a video to learn more about using special days to improve forecasting accuracy.
When you're reviewing the Forecast Data step, you see both the forecasted volume and AHT for all selected skills. The data might seem inaccurate, while you're expecting to see normal values:
-
You see in some areas where the AHT or volume is unusually low or at 0.00.
-
You see volume peaks on Tuesday and Wednesday, but the Historical data shows peaks on Monday and declining trends till Friday.
In these cases, consider making changes to the historical data.
In the Historical Data step, look for days that don't quite follow the standard. For example, the volumes might be too high for a certain day due to a product promotion. This isn't a standard day. Because of this, the forecasting data will show an inaccurate volume or AHT for some skills.
To improve the accuracy of the forecasted volumes and AHT, define those days as Special Days. In the special day settings, choose to Exclude this day from future forecasts. Those days won't be taken into consideration within the Forecasting Data step.
When the forecasted interaction volume for a whole day is 0, you won't be able to edit the volume.a
You can check that the volume for the entire day is 0 by viewing the data by day (1D). In the day view, you see data for each interval during the day.
If the volume for all intervals is 0, this is why you cannot edit the data.
To be able to edit the volume, change at least one interval.
For example, the forecasted interaction volume is 0 on January 25th. You are currently looking at the month view (1M). In this case, you won't be able to edit or bulk edit.
To edit the volume for the 25th:
-
Go to day view (1D).
-
Edit a least one interval. Let's say, Jan 25 8:00 AM. Instead of 0, write 1 or the desired value for that interval.
-
To make changes for the whole day, go back to month view (1M) and edit.
When you create a forecasting job, the system calculates the forecast data in two stages. First, the data is generated in Forecast Data (step 3 of forecasting), based on the required skills. Second, the system can improve the forecast data by distributing the workload across multiple scheduling units. After defining the Staffing Parameters (step 4), the data is regenerated. This time, the calculation also considers the scheduling units that can handle the interactions. This ensures that the forecast data is as accurate as possible. The forecast data is updated in Staffing (step 5).
When you generate a schedule based on a forecasting job, the forecast data is based on the data in step 5. The final forecast data is also displayed in the Forecast columns in Intraday Manager.
Let's say you activated CXone ACD on April 2021. This is when historical data starts to get collected. Then, you activated CXone WFM on November 2022. Because you have been collecting historical data for over a year, you should be able to use it automatically when generating a forecast.
However, the forecast job says that there's no historical data (in step 2). To solve this, you need to contact support. They will import the historical data that you collected into CXone WFM.
Long-Term Forecast
A long-term forecast is a forecast created for a period ranging from 1 year to 5 years. The forecast is broken down at a day-level granularity. Long-term forecast is an important input when making intelligent and accurate long-term planning decisions.
This feature is only available to users with the CXone WFM Advanced license.
Generate Long-Term Forecast
Long-term forecasting parameters work the same as general forecast parameters.
To generate a new staffing forecast:
-
Click the app selector and select CXone WFM.
-
Go to Forecasting > Generate Forecast.
-
Click Long-Term Forecast.
-
Define the Forecasting Parameters.
-
Enter a Job name and, optionally, a Description.
These details will appear in the Long-Term Forecast list.
-
Choose the time zone for viewing the data.
-
Select the Forecast Models that calculate the forecast.
-
Define the forecast period.
Learn about defining the forecast time increment and duration-
Duration: Choose the period you want to create a forecast for. You can generate a forecast for the period ranging from 1 to 5 years.
In the drop-down, select forecast duration and choose the start date. The end date is set automatically based on your forecast time selection.
For example, you select 1 year in the Duration drop-down and Jan 1, 2024 as the start date. The end date is automatically set to Jan 1, 2025.
-
-
Define the historical data period.
Learn about defining historical data and Interval breakdown pattern-
Duration: Choose how many months of historical data the forecast should use and define the end date. The start date is set automatically based on this.
We recommend at least 13 weeks of historical data to generate an accurate forecast.
-
Interval breakdown pattern: Here, you choose the number of recent weeks to put a stronger emphasis on. Those recent weeks make the forecast more accurate. The default is 8 weeks because the last two months show your operation pattern and are typically long enough.
Let's say you define these values:
-
Duration: Jan 1—Dec 31, 2023
-
Interval breakdown pattern: 8
This means that the forecast takes historical data from all of 2023. However, because you defined the breakdown pattern as 8, the data from December and most of November are prioritized.
-
-
-
-
Click Generate & view forecast data. A confirmation message is displayed to acknowledge the action. You will be directed to the view forecast data page.
If a job creation fails, the view forecast data page is displayed with an empty graph.
Learn more about view forecast data page
You can perform the following actions here.
- Switch between the Volume and AHT graphs.
- View the data in 1-month and 1-year time intervals. Click 1M or 1Y to view the graph in the respective time interval. Scroll the graph to navigate through it.
- Download forecast job to a CSV file: click Options and select Download CSV.
The newly created job is added to the job list on the long-term forecast page. The statuses of the created jobs are displayed in the Status column on the page.
You can set how you want to see the list of jobs on the long-term forecasting page. To do this, click on the column headings.
See job statusesStatus
description
Job is successfully created. Could not create a job.
Job creation was not completed after retrieving data. Job creation is under process. Keep in mind all these statuses are read only. You cannot modify a job once it is created.
Duplicate, Download CSV, and Delete Long-Term Forecast
You often need to create multiple forecast jobs with common parameters and a few changes. In this case you can duplicate a forecast job and customize it as per your requirements. This could save a good amount of time and effort.
To duplicate a job:
-
Click the options in the job you want to duplicate. Select Duplicate.
A copy of the selected job is created with a Copy prefix in the Job Name. Edit the Job name to match your requirements.
Modify the job parameters to fit your needs.
-
Click Generate. A new job is created.
To download a long-term forecast job as CSV:
-
Go to the forecast job you want to download.
-
Click the options and select Download CSV.
The forecast job is downloaded as a CSV file.
To delete a long-term forecast job:
-
Click the options in the job you want to delete. Select Delete.
A warning message pops up to confirm the deletion of the job.
-
Click Yes to delete the job and No to cancel the deletion.