For BPO WFM analysts & scheduling leads

FrontLine for Workforce — multi-client scheduling that scales with you, not against you.

One workforce. Multiple clients. Multiple LOBs. The scheduling layer was the part you were hand-rolling in spreadsheets — because every generic WFM tool assumed one employer, one funnel. FrontLine treats multi-client as the data model, not a configuration toggle.

app.frontlinehq.io/workforce

Workforce dashboard

Acme BPO · 247 agents · 4 clients · 94% coverage

Active agents

247

Coverage rate

94%

Adherence

93%

OT cost (today)

$2.4K

Live agent mix

Right now

RetailCo EN

68

RetailCo FR

22

FinCo

54

TelcoPro

38

Training

12

Break

18

Recent WFM activity

Coverage gap detected · RetailCo FR · 14:00–15:00 · 2 agents short

5m ago

OT offer accepted · Maya P. · 18:00–22:00 · FinCo

12m ago

Schedule republished · TelcoPro · 3 swap-driven changes

1h ago

Compliance gate blocked publish · ESA daily-max for 2 agents · resolved

Yesterday

LOB coverage · 14:00 ET

Live

Card Services

47/50

-3

Customer Care

82/82

Bilingual FR

12/16

-4

Tech Support

34/30

+4
WFM Analysts · Scheduling Leads · Workforce Managers

What's hard about WFM at a multi-client BPO

Generic WFM tools (NICE WFM, Verint, Calabrio) were built for a single employer running a single workforce against a single demand curve. Multi-client BPO breaks every one of those assumptions.

Risk: under/overstaffed

Multi-client volume forecasting that shares no pattern

RetailCo peaks Fridays. FinCo peaks Mondays. TelcoPro peaks Tuesday afternoons. Forecasting one workforce against four uncorrelated curves isn't harder than single-client — it's a different problem. Generic WFM tools choke when the curves combine.

Hidden cost: agent waste

Cross-LOB agent assignment is multidimensional

Mike works RetailCo EN 8–12, FinCo FR 12–4 — same agent. Generic WFM forces you to model him as two FTEs (over-counting) or one single-skilled FTE (under-utilizing). Either way: inflated headcount the CFO can't justify, or an SLA miss.

Risk: blind to client mix

Real-time adherence needs multi-state context

Single-state adherence tells you "on call" but not "on FinCo's call." Your client-facing SLA reports become guesses dressed up as data — and renewals get hard when the numbers don't match the client's experience.

Window: 30 days of chaos

New client launches break your existing forecast

A 50-agent client launch breaks the existing forecast model. Most WFM systems need a fresh model and lose 30 days of history. The team forecasts blind through launch — and SLA misses concentrate in week 2.

Time: 3 days vs. 6 hours

Schedule publishing is a multi-stakeholder negotiation

WFM wants coverage, supervisor wants Mike off Friday, Mike wants Sunday morning, finance wants no OT. Negotiating all four takes 3 days; you have 6 hours. The schedule everyone signs off on still has compliance violations nobody caught.

Risk: wrong-skilled assignment

Skills-based routing is a 2-D matrix, not a flat tag list

Mike is certified on FinCo banking but not RetailCo refunds. Generic WFM treats skills as a flat tag list; you need a 2-D matrix — skills × client. Miss either dimension and the wrong-skilled assignment breaks an SLA.

What FrontLine does

What FrontLine does for your WFM team

Seven WFM-specific surfaces designed for multi-client operations from the ground up. Schedule, forecast, adherence, self-service — every shift carries its client and line of business end-to-end.

Feature 01

Multi-client schedules where every shift knows its client and LOB

One agent can work multiple clients on the same day, on a single roster. Each shift carries its client, line of business, and activity, so per-client coverage, adherence, and SLA reports roll up exactly.

  • Scoped shifts. Each shift carries its client, line of business, and activity. Routing eligibility is enforced when you build the schedule — agents only appear on shifts for clients they're certified for.
  • One agent, every client. The same employee can work RetailCo, FinCo, and TelcoPro shifts on the same day, on one roster. No duplicate agent records and no parallel schedules to reconcile.
  • Per-client coverage. Coverage per line of business is compared against the live per-client forecast. Under- and over-staffed intervals surface before publish, with exact rollups.
  • Compliance at publish. Schedules that violate LNT rest periods, ESA daily-max hours, weekly OT caps, or predictive-scheduling notice rules are blocked at publish, with a rule citation.
  • Auditable changes. Swap and exception workflows handle mid-cycle changes. Every edit is logged with reason, requester, and approver. Patterns and holiday templates apply across the roster.
app.frontlinehq.io/workforce/schedule

Schedule grid · May 19 · Acme BPO

Schedule

scoped shifts

8a
9a
10a
11a
12p
1p
2p
3p
4p
5p
Mike Y.
RC EN
FC FR
Aisha O.
RC EN
TR
RC EN
Tyler B.
FC FR
FC FR
CO
Maya P.
TC EN
TC EN
Liam S.
LV
Noor F.
PR
RC EN
RC EN

Activity legend

RC ENRetailCo ENFC FRFinCo FRTC ENTelcoPro ENBRBreakTRTrainingCOCoachingLVLeavePRProbation review

Compliance check passed · 0 LNT / ESA violations · published at 14:22

Feature 02

Multi-client forecasting engine — separate models, combined coverage

Each client's demand pattern modelled independently. Combined into a unified coverage requirement that respects skills, LOB eligibility, and jurisdictional constraints. Add a new client and the engine adapts; the existing models stay accurate.

  • Per-client demand models. Each client gets its own seasonality, trend, and exogenous-event handling (promo launches, billing cycles, regulatory deadlines). The models are isolated so a RetailCo spike doesn't contaminate the FinCo forecast.
  • Combined coverage. Requirements aggregate respecting skills × LOB eligibility, not just headcount. Erlang C is the math; the engine layers BPO-specific shrinkage and the multi-client occupancy mix on top.
  • What-if scenarios. Model "new client at 50 agents launching June 1" before signing the contract. See hiring lead times, capacity gaps, and shrinkage impact in advance.
  • Forecast accuracy tracking. Actuals vs. forecasts per client. The system identifies which models are drifting before they affect publishing.
  • Standard WFM math. Erlang C, shrinkage, occupancy, ASA targets — tunable per client requirement. No black box; the math is visible and editable.

Forecast · Week of May 19

Multi-client volume forecast

Per-client demand modelled independently; combined coverage requirement below

Mon
Tue
Wed
Thu
Fri
Sat
Sun
RetailCo1000/wk
FinCo660/wk
TelcoPro805/wk

Combined coverage requirement (Erlang C · BPO shrinkage layered) · 247 agents at peak

What-if · upcoming

New client launch · 50 agents · Jun 15

+45 hires needed · start May 10

RetailCo summer promo · 30% volume lift

+12 hires · OT 60 h/wk for 4 wks

FinCo Q4 billing cycle peak

Pre-staffed · no action needed

Feature 03

Real-time adherence — agent state by client, not just on/off

Live view of every agent's state across every client they serve. On a call? Which client. On a break? Counted against today's allowance. Adherence broken down by client for SLA reporting that holds up under scrutiny.

  • Multi-state model. Agent state = (logged-in × client × activity). Generic WFM treats agent state as a flat enum ("on call"); we treat it as a structured tuple so per-client reporting is exact.
  • Client-disaggregated adherence. SLA reports per client roll up to the right contract. Your RetailCo monthly report has the right numbers because adherence was tracked per client all along, not approximated after the fact.
  • Real-time triggers. When adherence drops below threshold for a specific client, the right supervisor gets paged — not a generic ops escalation.
  • Auto-reconciliation. Late returns from break auto-flag for review rather than blind discipline. Agents who consistently come back on time but had one exception get a chance to explain.
  • Live floor view. See who's where in real time, by client. Not "X agents logged in" but "X on RetailCo, Y on FinCo, Z on training, W on break."
app.frontlinehq.io/workforce/adherence

Real-time adherence · floor view

Live floor view

247 agents · last refresh 8s ago

MY

Mike Y.

On call

FinCo · Inbound

4 min

AO

Aisha O.

On call

RetailCo · Inbound

2 min

TB

Tyler B.

Wrap-up

FinCo · ACW

45 sec

MP

Maya P.

On call

TelcoPro · Outbound

6 min

NF

Noor F.

Available

RetailCo · Idle

12 sec

DR

Devon R.

Break

· Lunch

23 min

PK

Priya K.

On call

RetailCo · Inbound

1 min

CD

Carlos D.

Late return

FinCo · Flagged

+3 min

Per-client adherence

RetailCo

96%

90 ag.

FinCo

91%

54 ag.

TelcoPro

94%

38 ag.

Real-time trigger: FinCo adherence < 92% for 10 min → supervisor paged · Carlos D. wrap-up flagged

Feature 04

Agent self-scheduling — picks, swaps, trades, bidding

Available shifts go on a pick board; agents claim what works. Mid-cycle adjustments happen through swap and trade workflows. Bidding for the next cycle's preferred shifts. All compliance-gated so agents can only do what the rules allow.

  • Pick board. Open shifts visible to eligible agents only — skill-gated, LOB-gated, jurisdiction-gated. Mike sees the FinCo shifts he can claim, not the RetailCo refund shifts he isn't certified for.
  • Shift swap. Agent A trades a Tuesday shift for agent B's Friday shift. The system validates both: rest periods, skill eligibility, coverage impact. The swap completes only if both sides pass.
  • Trade board. Post a shift you want to give up; eligible agents claim it. Same compliance gating as direct swaps; the trade board is just a wider audience.
  • Bidding for next cycle. Rank-ordered preferences for the next scheduling cycle. Seniority, performance tier, skills coverage all factor in. The bidding logic is configurable per client requirement.
  • Compliance gating. Trades can't violate rest periods, OT caps, jurisdictional notice rules, or skill mismatches. Agents see only the actions that would pass all gates; ineligible options are filtered out, not rejected after the fact.
  • Manager review. HR / ops review the queue of pending trades from one screen. Approve, hold, or reject with reason.
app.frontlinehq.io/workforce/self-schedule

Self-scheduling · pick + trade

Open shifts · eligible agents see this list

Skill-gated · LOB-gated · rest-period gated

Sat May 24 · 12 pm – 8 pm

CSR · RetailCo

18 eligible

Sun May 25 · 8 am – 4 pm

Sr. CSR · FinCo

6 eligible

Mon May 26 · 2 pm – 10 pm

CSR · TelcoPro

24 eligible

Pending trades · ops review

Maya P. · Tue 8-4

Devon R. · Fri 12-8
Compliance OK · awaiting review

Noor F. · Wed 9-5

Priya K. · Wed 9-5
Approved · 14 min ago

Carlos D. · Sat 6-2

Open trade board
Rest-period violation · blocked

Every action passes 4 gates: skill match · LOB eligibility · rest periods · weekly OT cap.

Feature 05

Skills + competency matrix — the 2-D map of who-can-do-what-for-whom

Skills aren't a flat tag list. They're a matrix of capabilities × clients × expiry. Routing, scheduling, hiring, and training all reference the same matrix — no parallel skill databases drifting out of sync.

  • Per-client certification. An agent is "billing-certified for RetailCo" — not just "billing-certified." The same skill can be certified for one client and not another.
  • Expiry tracking. Certifications expire. The system flags renewals 30/60/90 days in advance so retraining slots can be scheduled before the cert lapses.
  • LOB eligibility computation. Roll up skills × certifications into "who can serve this LOB right now" rosters. Hiring asks WFM "who else could we move to this LOB" and gets a real answer.
  • Skill gap analysis. Find the N agents closest to filling a gap — existing skills, plus 1–2 training paths. Training spend gets targeted instead of broadcast.
  • Routing integration. Voice routing sees the same eligibility matrix. No parallel tag lists in your CCaaS that drift out of sync with WFM.
app.frontlinehq.io/workforce/skills

Skills + competency matrix

Skill × client certification

Competencies are per-client, not flat. Expiry tracked.

Billing

ReFiTe

Refunds

ReFiTe

Tech I

ReFiTe

Tech II

ReFiTe

FR support

ReFiTe
Mike Y.
Aisha O.
Tyler B.

Aisha O. · Tech II / RetailCo expires Jun 12 · re-training scheduled May 30

Certified In training Expiring Not certified

Feature 06

Capacity planning — long-horizon staffing across clients

6-month and 12-month workforce planning. New client launches, seasonality, attrition modelling. The numbers Recruiting needs to plan their funnel and Finance needs to plan the budget.

  • Per-client horizon. Model demand for each client 12 months out. The model respects each client's growth curve and contract milestones (e.g., "Client X is contractually adding 30 agents in September").
  • Attrition modelling. Historical attrition by tenure / role / client feeds back into the staffing plan. The 90-day washout curve is baked in; you plan for it instead of being surprised by it.
  • Hiring lead time. WFM tells Recruiting "you need to start hiring 12 agents for client X in May to meet July go-live." The number isn't a guess; it's derived from the forecast + ramp time + expected attrition.
  • What-if scenarios. Model 3 client expansion scenarios — see hiring + training + budget impact of each. Finance leans on these for the annual plan.
  • Monthly reconciliation. Actual vs. plan; identify drift early. When the plan said you needed 12 hires by May 1 and you have 8, the gap surfaces in the same place as the plan itself.
app.frontlinehq.io/workforce/capacity

Capacity planning · 12-month horizon

Headcount plan · per-client · 12 months

Planned vs. actual · attrition modelled per tenure tier

Jun
Jul
Aug
Sep
Oct
Nov
Dec
Jan
Feb
Mar
Apr
May
Planned380 by MayActual

Recruiting lead time: start hiring for new client X by May 10 (5 weeks pre-go-live).

Expansion scenarios — model before signing

RetailCo +30 agents

+30 over 8 wks+$1.2M / yr

FinCo +50 agents

+50 over 10 wks+$2.0M / yr

TelcoPro +25 agents

+25 over 6 wks+$1.0M / yr

Feature 07

Intraday OT / VTO — same-day capacity adjustment

Volume spikes? Push OT offers to eligible agents in seconds. Demand crashes? Push VTO offers. Both compliance-gated, both audit-logged, both bounded by acceptance windows. Same-day capacity adjustment within the rules.

  • OT offers. Push to agents with available capacity, the right skills, and no rest-period violation. Eligibility filtering happens before the offer goes out — agents only see what they could legally accept.
  • VTO offers. Push to agents on shift with the right voluntary-time-off agreement. Some clients prohibit VTO during critical windows; the system respects per-client rules.
  • Eligibility filtering. Skills match, jurisdictional rest rules, weekly OT caps, predictive-scheduling notice rules — all enforced before the offer reaches an agent.
  • Acceptance window. Time-bound (typically 15–30 minutes); auto-expires. Agents who don't respond don't block coverage; the system pushes to the next eligible cohort.
  • Audit chain. Who was offered, who accepted, who declined, why. Labour-relations defence baked into the workflow — when the union asks "why didn't Mike get the OT," the answer is one screen.

Intraday OT offer · OT-2891

Coverage gap detected: RetailCo EN · 14:00–18:00 · 4 agents short. OT offer auto-staged.

OT offer

RetailCo EN · 14:00–18:00 · 4 agents needed · +$32/hr · expires in 22 min

Eligible agents (skill match · no rest violation · OT cap available)

8 eligible · pushing in priority order
MP

Maya P.

TelcoPro · ending 1 pm

Accepted · 14:00–18:00
DR

Devon R.

Off shift

Accepted · 14:00–18:00
AO

Aisha O.

RetailCo · ending 1 pm

Pending · expires in 18 min
PK

Priya K.

Off shift

Pending · expires in 18 min
CD

Carlos D.

FinCo · ending 1 pm

Declined

Acceptance window: 30 min · auto-expires · then pushes to next eligible cohort

All offers / responses logged · labour-relations defence audit chain

Cross-team feature · shared with HR

Schedule that knows about HR events — leave, probation, coaching, training

Schedules don't live in WFM alone. Leave approved in HR, probation review days, coaching blocks from QA, training enrollments — all surface on the schedule grid as activities. WFM doesn't reconcile across systems; the activities arrive as data. Same data model HR sees on the employee record — different role-tuned views.

  • Leave blocks. HR-approved leave shows up on the agent's row as a non-productive block. The coverage shortage flags immediately so WFM can plan replacement before the leave starts, not after.
  • Probation milestones. 30 / 60 / 90 review days highlight on the affected agent's row with a popover linking directly to the review. The manager doesn't forget; WFM doesn't double-book over the review window.
  • Coaching blocks. When QA assigns a coaching session, WFM auto-protects the block from being scheduled over. The coaching team's calendar and the WFM grid stay in sync.
  • Training enrollment. Training time blocks appear on the grid with the course attached. Capacity planning knows training reduces productive headcount this week; the forecast accounts for it.
  • Mid-leave check-ins. Scheduled HR check-ins surface as tiny event markers on the agent's row, even while the agent is on leave. The HR person doesn't have to consult a separate calendar.
  • Return-from-leave handoff. The day an agent returns, the grid shows the re-onboarding checklist for the manager. Schedule sync, training updates, role changes during the absence — all surface on the same row.
See it from the HR team's view
app.frontlinehq.io/workforce/schedule

Schedule grid · May 19 · Acme BPO

Schedule

scoped shifts

8a
9a
10a
11a
12p
1p
2p
3p
4p
5p
Mike Y.
RC EN
FC FR
Aisha O.
RC EN
TR
RC EN
Tyler B.
FC FR
FC FR
CO
Maya P.
TC EN
TC EN
Liam S.
LV
Noor F.
PR
RC EN
RC EN

Activity legend

RC ENRetailCo ENFC FRFinCo FRTC ENTelcoPro ENBRBreakTRTrainingCOCoachingLVLeavePRProbation review

Compliance check passed · 0 LNT / ESA violations · published at 14:22

For the decision maker

Business outcomes for the people running the BPO

What this looks like in margin terms for the COO or owner.

Margin

Schedule cycle time compresses dramatically

The compression comes from drag-to-assign + automated compliance checks + multi-stakeholder negotiation in one tool. WFM team size doesn't have to grow with client count; the cycle scales linearly with seats added, not exponentially.

Quality

Adherence visibility per client improves SLA delivery

When you can see which client an agent is currently serving, your SLA reports become accurate. Clients trust them. QBR meetings stop being defensive; renewal conversations get easier.

Compliance

Schedule violations caught at publish, not after

LNT, ESA, OT cap rules — all flag before publish, not after a complaint. Configurable rule packs handle predictive-scheduling jurisdictions (Oregon, Washington, NYC, San Francisco) per client requirement. Labour-relations defence baked into the workflow with full audit chain.

Scale

New client launch absorbed without breaking forecast

Bringing on a 50-agent client used to mean 30 days of chaos. The forecasting engine handles the transition; the schedule grid scales linearly; existing client SLAs stay intact during the ramp.

What WFM actually gets back

Directional outcomes — real magnitude depends on your prior schedule cadence, client mix, and forecast maturity.

Schedule publish

Hours, not days

Per cycle. The compression comes from drag-to-assign + integrated compliance checks + multi-stakeholder negotiation in one tool.

Client-aware adherence

Per-client SLA visibility

Multi-state adherence with the client context attached — your SLA reports finally reflect which client the agent was actually serving.

Pre-publish guardrails

Zero LNT / ESA / OT violations slipping through

Compliance checks block publish; nothing slips. Jurisdiction-specific predictive-scheduling rule packs are configurable per client requirement.

New client launches

Days, not weeks to absorb

Into the forecast model. The transition layer handles workforce mix changes automatically; existing client SLAs stay intact.

Regulatory posture

LNT (Quebec)ESA (Ontario)BC ESAUS Wage & Hour (FLSA)Predictive-scheduling rule packs (OR · WA · NYC · SF) — configurableRight to Disconnect (Ontario)WSIB · CNESSTLaw 25 (Quebec) — bilingual platform UIUnion contract rule setsSOC 2 Type II (audit Q3 2026)

FrontLine Workforce vs. a generic WFM

Six things BPO WFM teams notice in their first month away from NICE WFM / Verint / Calabrio.

FrontLine WorkforceGeneric WFM

Multi-LOB agent assignment at the data layer (not as a tag)

Generic WFM models multi-client as workforce tags; you need it as a structured (client × LOB × skill) tuple.

Multi-client forecasting that adapts to new client launches

Most WFM systems require a fresh forecast model when adding a client; you lose 30 days of pattern data.

Real-time adherence with per-client state context

Single-state adherence ("on call") doesn't tell you which client the call is for. Multi-state does.

Skills as 2-D matrix (skills × client) — not a flat tag list

Generic WFM treats skills as a flat list; you need cert-per-client to route correctly across LOBs.

Compliance rule checks at publish (LNT · ESA · OT · notice)

Some WFM systems support OT caps; few enforce jurisdictional notice rules or LNT-specific constraints.

Native integration with HR (leave + probation + coaching on grid)

HR events live in a separate system; WFM teams reconcile manually. We surface them on the grid.

In production today

Workforce Management (Module 23) is shipped and running on customer tenants; Skills & Competency (Module 25) is shipped. See the technical status, full feature list, and weekly progress on the Atlas.

FAQ

Questions WFM analysts actually ask before signing

Pulled from real fit calls. Short, direct answers.

How does multi-LOB agent assignment actually work in the data model?+
Mike's row in the schedule shows blocks scoped to (client_id, lob_id, activity_id). The same agent record is referenced across all blocks; the cell carries the scope. Routing sees the cell context; SLA reports roll up per client. No duplicate agent records, no parallel rosters, no reconciliation.
What forecasting engine do you use? Is it just Erlang C?+
Erlang C is the math. The engine layers per-client seasonality, trend, exogenous events (promo launches, billing cycles, regulatory deadlines), and a new-client launch transition layer on top. Forecasting accuracy is tracked per client; the models that drift surface themselves before publishing.
Can we keep our current voice routing (Genesys, NICE CXone) and use FrontLine for scheduling only?+
Yes — most BPOs adopt FrontLine WFM alongside their existing CCaaS. FrontLine ingests adherence data via a standard CTI / adherence ingress contract (spec 23A); schedule publish to the CCaaS happens via your existing integration tooling today. Native turnkey connectors to specific CCaaS vendors (Genesys Cloud, NICE CXone, Amazon Connect, Twilio Flex) are on the Atlas roadmap (spec 44, Telephony / CTI) — for the wiring timing on a specific vendor, ask us on the fit call.
How do you handle predictive-scheduling laws (Oregon, Seattle, NYC, San Francisco) — schedule changes have notice requirements?+
The compliance rule engine is jurisdiction-aware: rule packs for predictive-scheduling laws are configurable per client during onboarding. Once configured, any change made within the notice window triggers a confirmation prompt + audit entry — so when a regulator asks "did you give 14 days' notice for the schedule change made on March 12," the answer is one screen with timestamps. The OR / WA / NYC / SF rule packs are part of the design-partner kickoff for any client operating in those jurisdictions, not pre-shipped one-size-fits-all defaults.
Can agents self-schedule without breaking compliance (rest periods, OT, skill mismatches)?+
Yes. Every self-scheduling action (pick, swap, trade, bid) goes through compliance gates: rest periods, OT caps, skill eligibility, LOB eligibility, jurisdictional notice rules. The agent sees only the actions that would pass all gates; ineligible options are filtered out — not rejected after the fact.

Ready to see it in your environment?

Two ways to take the next step.

FrontLine for Workforce | FrontLine