Planning answers should be explainable.
This reference explains how LoughPoint prepares data, compares forecasts and translates workload into staffing. Customers can inspect assumptions, override policy inputs and challenge the recommendation.
Same maths everywhere
Shared calculation functions support the workspace and automated regression tests.
Applicable by channel
Real-time and asynchronous work use different, documented staffing logic.
Limitations shown
Low history, incomplete metrics and uncalibrated outputs are identified in context.
1. Data preparation
LoughPoint normalises the uploaded source before any forecast or staffing result is produced.
- Time grain
- Detected from the median spacing between unique timestamps and classified as 15-minute, 30-minute, hourly, daily, weekly or monthly.
- Demand
- Negative or non-numeric volumes are excluded. Valid zero-demand periods remain part of the series.
- Gaps
- Missing periods are identified within observed operating days. Overnight closures are not automatically treated as missing demand.
- AHT
- Imported AHT is weighted by handled contacts when every included AHT observation has a handled count and the total is positive. Otherwise all included observations use offered contacts as the weighting basis. Rows without positive AHT are excluded. A manual assumption is used when selected or imported AHT is unavailable.
- Outliers
- Extreme observations are flagged for review but retained unless the customer changes the source data.
2. Forecasting and model selection
Candidate methods are compared using historical holdouts at the detected source grain.
- Candidate methods
- Local-only models: seasonal naïve; three-cycle matching-period and weighted averages; Holt linear and damped trends with seasonal profiles; additive and multiplicative Holt-Winters; linear trend with seasonal profile; WFM seasonal indices; an equal-weight seasonal ensemble; and simple/recency-weighted rolling flat-level plans. Legacy smoothed-level settings remain readable.
- Optional interval allocation
- For monthly, weekly or daily uploads only, customers can allocate coarse forecasts to assumed hourly, 30-minute or 15-minute arrivals. Weekday, interval and date-exception weights preserve each parent forecast total. Local clock changes use unique UTC instants. Generated intervals feed staffing and scheduling but are not observed history and cannot establish interval forecast accuracy.
- Rolling validation
- Up to four historical windows are held out. Every eligible method forecasts each window using only information available before it.
- Primary accuracy measure
- WAPE = total absolute forecast error ÷ total actual demand. Lower is better.
- Supporting measures
- Bias identifies systematic over- or under-forecasting. MAE shows typical absolute error; RMSE places more weight on large misses.
- Stability rules
- Seasonal naïve is preferred when seasonality is established and its error is within 10% of the lowest result. Linear trend must show at least 15% fitted change across history.
- Uncertainty
- Low/high planning sensitivities use queue WAPE with a 10% minimum, or a 20% fallback. Buffer × √(1 + forecast index / seasonal cycle) widens the range independently of total horizon length. These are scenarios, not calibrated prediction intervals.
3. Workload and staffing
The staffing method changes with the queue type; one formula is not applied to every channel.
- Workload
- Workload hours = contacts × average handle time in seconds ÷ 3,600. Chat workload is divided by supported concurrency where applicable.
- Voice and live chat
- Erlang C sizes the minimum whole-agent requirement that satisfies both the service-level target and occupancy ceiling at the source interval.
- Email and tickets
- Asynchronous work is sized against the available SLA or productive window. These queues use workload-clearance and backlog logic, not Erlang C.
- Net requirement
- The productive requirement before shrinkage. It represents agents available to handle customer work.
- Roster requirement
- Gross roster = net requirement ÷ (1 − shrinkage). Shrinkage is applied after the productive requirement is calculated.
- Rounding
- Interval requirements are rounded to whole agents where simultaneous coverage is required. Summary FTE retains decimals until presentation.
4. Service and scenario impacts
Scenario outputs are recalculations from changed assumptions, not guaranteed operating results.
- Service level
- For synchronous queues, Erlang C estimates the proportion answered within the configured threshold.
- ASA
- Expected average speed of answer is calculated from probability of waiting, AHT, offered load and staffed agents.
- Abandonment
- Where uploaded abandonment or ASA exists, LoughPoint calibrates the indication to observed results. Otherwise it is an uncalibrated planning estimate.
- Backlog
- For asynchronous queues, backlog is workload that exceeds productive capacity inside the assessed planning window.
- Scenarios
- Volume, AHT, shrinkage, occupancy, service targets, operating hours, cost and coverage strategy remain explicit inputs.
- Scheduling recommendations
- The recommendation engine searches permitted shift patterns within the configured limits. It is a constrained heuristic, not a guarantee of the global optimum or full coverage. Review shortages, unused staffing, operating hours and any infeasible constraints before applying a plan.
- Work rules
- Breaks, rest periods and shift limits reflect the settings you supply. A generated schedule is not a certification of compliance with employment law, contracts or local agreements.
