# Real-Time Adherence

# Genesys WFM Real-Time Adherence Documentation

## Study Notes
| Topic | Description |
|---|---|
| Real-Time Adherence | Compares actual agent state vs scheduled state |
| Adherence States | On-queue, breaks, meetings, training, time-off, etc. |
| Schedule State Groups | Maps Genesys states to scheduled activities |
| Compliance Tracking | 15, 30, or 60-minute interval checking |
| Reason Codes | Aux codes for secondary classifications |
| Thresholds | Start Before/After flexibility (minutes) |
| Multi-Channel | Track adherence per media type separately |
| Ignore Codes | Activities excluded from adherence calculation |

---

## Navigation
Menu → Workforce Management → Adherence
OR
Supervisor → Adherence → Adherence Monitoring

---

## Real-Time Adherence Overview

Real-Time Adherence measures how well agents follow their assigned schedules. It compares each agent's actual real-time state with their scheduled state during each monitoring interval, tracking compliance in real-time throughout the day.

Adherence monitoring enables supervisors to:
- Track agent schedule compliance continuously
- Identify agents not following schedules
- Investigate reasons for non-compliance
- Manage exceptions and unplanned activities
- Generate adherence reports for performance management
- Calculate adherence metrics for coaching and evaluation

### Adherence Objectives
- **Schedule Compliance** - Ensure agents work as scheduled
- **Service Level Support** - Proper staffing for demand
- **Performance Accountability** - Track and measure adherence
- **Issue Identification** - Find patterns and problems
- **Coaching Opportunity** - Address non-compliance with agents
- **Compliance Reporting** - Document adherence for audits

### Key Adherence Concepts

```
Scheduled State vs Actual State:

Scheduled (from Master Schedule):
├─ 09:00-12:00: On-Queue Support
├─ 12:00-13:00: Lunch (Meal)
├─ 13:00-16:00: On-Queue Support
├─ 16:00-16:15: Break
└─ 16:15-16:30: After Call Work

Actual (Real-Time State):
├─ 09:00-09:45: On-Queue ✓ Adherent
├─ 09:45-10:15: Training ✗ Non-adherent (unscheduled)
├─ 10:15-12:30: On-Queue ⚠ Late from training (+45 min)
├─ 12:30-12:50: Lunch ✓ Adherent (within threshold)
├─ 13:00-15:45: On-Queue ✓ Adherent
├─ 15:45-16:10: Meeting ✗ Non-adherent (missing break)
└─ 16:10-16:30: After Call Work ✓ Adherent

Overall Adherence for Day:
├─ Compliant Time: 6 hours 15 min
├─ Non-Compliant Time: 1 hour 15 min
├─ Total Shift Time: 7.5 hours
├─ Adherence %: (6:15 / 7:30) = 83.3% ⚠ Below goal (90%)
```

---

## Adherence States

### On-Queue States

Agents are available to handle customer interactions:

```
On-Queue Activities:

Available/Ready (WaitingForNextCall):
├─ Status: Available for interactions
├─ Duration: Variable (until call arrives)
├─ Adherence: Compliant if scheduled on-queue
└─ Example: Agent in queue waiting for next call

Connected (Connected):
├─ Status: Currently handling interaction
├─ Duration: Call/chat/email duration
├─ Adherence: Compliant if on-queue scheduled
└─ Example: Agent on call with customer

On-Hold (Held):
├─ Status: Customer on hold (agent still active)
├─ Duration: Hold time while processing
├─ Adherence: Compliant if on-queue scheduled
└─ Example: Agent researching issue, customer on hold

Occupied (various):
├─ Status: Agent occupied with interaction
├─ Duration: From connection to end
├─ Adherence: Compliant if on-queue scheduled
└─ Example: Agent handling multiple interactions
```

### Off-Queue States

Agents not available for customer interactions:

```
Off-Queue Activities:

After Call Work (ACW/AfterCallWork):
├─ Status: Processing after interaction ends
├─ Duration: Wrap-up work time
├─ Adherence: Depends on scheduling
├─ Scheduled: Yes (included in shift)
├─ Example: Agent logging notes after call

Break (Break):
├─ Status: Scheduled break time
├─ Duration: 15-30 minutes typically
├─ Adherence: Compliant if scheduled break
├─ When: Scheduled time window (10-12am)
└─ Example: Agent on 15-minute break

Meal/Lunch (Meal):
├─ Status: Lunch or meal period
├─ Duration: 30-60 minutes typically
├─ Adherence: Compliant if scheduled lunch
├─ When: Scheduled lunch window (12-1pm)
└─ Example: Agent on lunch break

Meeting (Meeting):
├─ Status: Team, coaching, or training meeting
├─ Duration: 30-120 minutes
├─ Adherence: Depends on scheduling (can be exception)
├─ Planned: Usually scheduled in advance
└─ Example: 1-on-1 coaching session

Training (Training):
├─ Status: Formal training or development
├─ Duration: Hours or days
├─ Adherence: Depends on scheduling
├─ Planned: Scheduled in advance
└─ Example: Product training course

Time Off (TimeOff):
├─ Status: Approved absence
├─ Duration: Full shift or partial
├─ Adherence: Compliant if approved time-off
├─ Types: Vacation, sick, personal, unpaid
└─ Example: Approved vacation day

Administrative (Administrative):
├─ Status: Admin work, documentation, reports
├─ Duration: 30-60 minutes typically
├─ Adherence: Depends on scheduling
├─ When: Off-peak hours or scheduled
└─ Example: Agent doing filing, reports
```

### Exception States

Unplanned or special situations:

```
Exception Activities:

Unavailable (Unavailable):
├─ Status: Temporarily unavailable
├─ Reason: Unplanned absence, technical issue, etc.
├─ Duration: Minutes to hours
├─ Adherence: Non-adherent (unplanned)
└─ Example: Agent system down, logged out

Coaching/Monitoring (Coaching):
├─ Status: Under supervision or QA review
├─ Duration: Call duration + review
├─ Adherence: Can be scheduled or exception
├─ Purpose: Quality assessment
└─ Example: Supervisor listening to call

Idle/Not Ready (Idle):
├─ Status: Logged in but not accepting work
├─ Duration: Variable
├─ Adherence: Non-adherent if not scheduled
└─ Example: Agent between calls, extended idle

Marked Time (Marked):
├─ Status: Special marked period
├─ Duration: 15 minutes to hours
├─ Adherence: Depends on configuration
└─ Example: Quality review, special activity
```

---

## Schedule State Groups

Schedule State Groups map Genesys real-time states to WFM scheduled states, defining which states are considered compliant with each scheduled activity.

**Schedule State Group Configuration:**

```
Example: Support On-Queue Voice

SSG Name: Support_OnQueue_Voice
├─ Media Channel: Voice (or Unspecified)
├─ Associated Real-Time States:
│  ├─ WaitingForNextCall
│  ├─ Connected
│  ├─ Held
│  └─ Occupied
├─ Reason Codes (if applicable):
│  ├─ No code required
│  └─ Maps all calls regardless of type
├─ Adherence Rules:
│  ├─ Start Before Threshold: 5 minutes
│  ├─ Start After Threshold: 5 minutes
│  ├─ End Before Threshold: 5 minutes
│  └─ End After Threshold: 5 minutes
└─ Result: Agent compliant if on any of these states within thresholds
```

### Threshold Configuration

Thresholds define flexibility in start/end times:

```
Threshold Scenario 1: Strict (0 minutes)
├─ Scheduled: On-Queue 09:00-13:00
├─ Start Before: 0 min (must start exactly at 09:00)
├─ Start After: 0 min (cannot be late)
├─ Actual: 09:03 (3 minutes late)
└─ Result: ✗ Non-adherent (outside 0-min threshold)

Threshold Scenario 2: Flexible (5 minutes)
├─ Scheduled: On-Queue 09:00-13:00
├─ Start Before: 5 min (can start 08:55)
├─ Start After: 5 min (can start up to 09:05)
├─ Actual: 09:03 (3 minutes late)
└─ Result: ✓ Adherent (within 5-min threshold)

Threshold Scenario 3: Very Flexible (15 minutes)
├─ Scheduled: On-Queue 09:00-13:00
├─ Start Before: 15 min (can start 08:45)
├─ Start After: 15 min (can start up to 09:15)
├─ Actual: 09:12 (12 minutes late)
└─ Result: ✓ Adherent (within 15-min threshold)

Best Practice:
├─ On-Queue activities: 5-10 minutes (reasonable)
├─ Break/Meal: 10-15 minutes (more lenient)
├─ Training: 0-5 minutes (strict)
```

---

## Reason Codes (Auxiliary Codes)

Reason codes provide secondary classification for states, tracking why agents are in particular states.

**Common Reason Codes:**

```
Break Reasons:
├─ BRK: Regular break
├─ BRKAT: Break at-will
├─ UNPAID: Unpaid break
└─ PAID: Paid break

Absence Reasons:
├─ SICK: Sick leave
├─ VACATION: Vacation
├─ PERSONAL: Personal time
├─ UNPAID: Unpaid time off
├─ JURY: Jury duty
└─ BEREAVEMENT: Bereavement

Activity Reasons:
├─ TRAIN: Training
├─ MEET: Meeting
├─ COACH: Coaching
├─ ADMIN: Administrative work
├─ QA: Quality assurance
└─ MGT: Management activity

Connection Reasons (Calls):
├─ IN: Inbound call
├─ OUT: Outbound call
├─ TRANSFER: Call transfer
├─ CONFERENCE: Conference call
└─ CALLBACK: Scheduled callback

Usage:
├─ Mapped to schedule state groups
├─ Provide detail in adherence reports
├─ Track reasons for non-compliance
└─ Improve accuracy of adherence calculations
```

---

## Single vs Multi-Channel Adherence

### Single-Channel Adherence

Tracking adherence for agents handling one media type:

```
Single-Channel Configuration:

Agent: Support_Agent_001
├─ Media Type: Voice only
├─ Scheduled: On-Queue Voice 09:00-17:00
├─ At 10:30:
│  ├─ Real-time State: Connected (handling call)
│  ├─ Scheduled State: On-Queue Voice
│  ├─ Mapping: Connected maps to On-Queue ✓
│  └─ Result: Adherent
│
├─ At 14:00:
│  ├─ Real-time State: ACW (after call work)
│  ├─ Scheduled State: On-Queue Voice
│  ├─ Mapping: ACW maps to On-Queue ✓
│  └─ Result: Adherent
│
└─ At 14:45:
   ├─ Real-time State: Meeting (unscheduled)
   ├─ Scheduled State: On-Queue Voice
   ├─ Mapping: Meeting does NOT map to On-Queue ✗
   └─ Result: Non-adherent

Daily Adherence: 92% (good)
```

### Multi-Channel Adherence

Tracking adherence when agents handle multiple media types:

```
Multi-Channel Configuration:

Agent: Support_Agent_002
├─ Media Types: Voice + Email (blended)
├─ Schedule:
│  ├─ 09:00-13:00: On-Queue (Voice or Email)
│  ├─ 13:00-14:00: Lunch
│  ├─ 14:00-17:00: On-Queue (Voice or Email)
│  └─ 17:00-17:30: After Call Work
│
├─ At 10:30 (Voice call):
│  ├─ Voice Channel State: Connected
│  ├─ Email Channel State: Idle
│  ├─ Voice SSG Check: Connected maps to On-Queue ✓
│  ├─ Email SSG Check: Idle maps to On-Queue? (No)
│  └─ Overall: Adherent (on Voice, allowed)
│
├─ At 11:00 (Email work):
│  ├─ Voice Channel State: Available
│  ├─ Email Channel State: Occupied
│  ├─ Voice SSG Check: Available maps to On-Queue ✓
│  ├─ Email SSG Check: Occupied maps to On-Queue ✓
│  └─ Overall: Adherent (both channels compliant)
│
└─ At 14:45 (Unscheduled training):
   ├─ Voice Channel State: Training
   ├─ Email Channel State: Training
   ├─ Voice SSG Check: Training ✗ (no mapping)
   ├─ Email SSG Check: Training ✗ (no mapping)
   └─ Overall: Non-adherent (both channels fail)

Adherence Details:
├─ Voice Adherence: 95%
├─ Email Adherence: 94%
└─ Overall Adherence: 92% (both channels must be compliant)
```

**Key Difference:**
- Single-Channel: One adherence percentage (simple)
- Multi-Channel: Separate adherence per channel + overall (complex)

---

## Adherence Calculation

WFM calculates adherence through a multi-step process:

```
Adherence Calculation Steps:

Step 1: Map Agent State + Reason Code
├─ Get agent's real-time state
├─ Get reason code (if any)
├─ Example: WaitingForNextCall + no code
└─ Create state mapping for comparison

Step 2: Find Compliant Schedule State Groups
├─ Look up all SSGs configured for site
├─ Check which SSGs map to agent's state
├─ Consider media channel if configured
├─ Example: "Support_OnQueue" maps to WaitingForNextCall
└─ Create list of matching SSGs

Step 3: Get Scheduled States for Agent
├─ Retrieve agent's current schedule for time interval
├─ Example: Scheduled for "On-Queue Voice" 10:00-12:00
├─ If multiple activities: Pick primary
└─ Compare to matched SSGs from Step 2

Step 4: Check Thresholds
├─ Did agent start on time? (Start Before/After)
├─ Did agent end on time? (End Before/After)
├─ Are they within configured thresholds?
├─ Example: Within 5-min threshold = compliant
└─ Result: Adherent or Non-adherent

Step 5: Calculate Result
├─ If intersection not empty: ✓ Adherent
├─ If intersection empty: ✗ Non-adherent
├─ If multiple channels: All must pass
└─ Track non-adherence time in minutes

Example Execution:

Time: 10:15
├─ Agent: AGENT_001
├─ Real-time State: Connected
├─ Reason Code: None
├─ Scheduled: On-Queue Voice (10:00-12:00)
├─ SSG Lookup: Connected maps to "On-Queue" ✓
├─ Threshold Check: 10:15 is within start threshold ✓
├─ Result: ✓ ADHERENT
├─ Non-adherence Time: 0 minutes
└─ Added to adherence report as compliant minute
```

---

## Adherence Visualization

```
Real-Time Adherence View Example:

Agent Name      | Status    | Activity    | Duration | Adherence
────────────────|-----------|-------------|----------|────────────────
AGENT_001       | ✓ Green   | Connected   | 4:32     | ✓ Adherent
AGENT_002       | ✓ Green   | Available   | 0:15     | ✓ Adherent
AGENT_003       | ⚠ Yellow  | Break       | 18:30    | ⚠ Non-adherent
AGENT_004       | ✓ Green   | Connected   | 3:12     | ✓ Adherent
AGENT_005       | 🔴 Red    | Meeting     | 45:00    | 🔴 Severely non-adherent
AGENT_006       | ✓ Green   | ACW         | 2:05     | ✓ Adherent
AGENT_007       | ✓ Green   | On-Queue    | 1:30     | ✓ Adherent
AGENT_008       | ⚠ Yellow  | Idle        | 12:30    | ⚠ Non-adherent

Legend:
✓ Green = Adherent (within schedule)
⚠ Yellow = Non-adherent (off schedule <15 min or 1st alert)
🔴 Red = Severely non-adherent (off schedule >15 min or 2+ alerts)
```

---

## Ignore Codes

Certain activities can be marked "Ignore for Adherence," excluding them from adherence calculations.

**Why Use Ignore Codes:**

```
Scenario: Quality Assurance Monitoring

Standard:
├─ Agent scheduled: On-Queue 09:00-17:00
├─ At 10:00: Supervisor monitors agent call (QA)
├─ Agent state: Quality (being monitored)
├─ Non-adherent: Yes (QA not on schedule)
├─ Problem: Impacts adherence score unfairly

Solution: Mark QA as "Ignore for Adherence"
├─ Agent scheduled: On-Queue 09:00-17:00
├─ At 10:00: Supervisor monitors agent call (QA)
├─ Agent state: Quality (being monitored)
├─ Non-adherent: No (QA ignored)
├─ Result: QA time doesn't count against adherence ✓

Example Activities to Ignore:
├─ Quality assurance monitoring
├─ Coaching/training observations
├─ System maintenance time
├─ Emergency situations
├─ Technical outages affecting all agents
└─ Special projects or initiatives
```

**Configuration:**

```
Ignore Codes Setup:

Activity Code: QUALITY_MONITOR
├─ Name: Quality Assurance Monitoring
├─ Category: QA
├─ Mark as: Ignore for Adherence ✓
├─ Schedule State Group: (optional)
└─ Result: Doesn't impact adherence %

Activity Code: SYSTEM_ISSUE
├─ Name: System Outage
├─ Category: Technical
├─ Mark as: Ignore for Adherence ✓
├─ Schedule State Group: (optional)
└─ Result: Doesn't impact adherence %

Usage:
├─ Only for legitimate non-schedule activities
├─ Must be approved by management
├─ Document in policy
├─ Review quarterly for accuracy
```

---

## Real-World Scenarios

### Scenario 1: Break Threshold

```
Agent: AGENT_033
Schedule: On-Queue 09:00-17:00
Break: Scheduled 10:30-10:45 (15-minute break)
Break Threshold: ±10 minutes

Actual:
├─ 10:40: Agent takes break (10 min late)
├─ 10:55: Agent returns (back on-queue)
├─ Duration: 15 minutes (correct)
├─ Start: 10:40 (scheduled 10:30, 10 min late)

Analysis:
├─ Start Threshold: ±10 minutes
├─ Actual Start: 10:40 (10 min late)
├─ Within Threshold: Yes ✓
└─ Result: Adherent ✓

If Start Threshold was ±5 minutes:
├─ Actual Start: 10:40 (10 min late)
├─ Within Threshold: No ✗
└─ Result: Non-adherent ✗

Lesson: Threshold configuration is critical
```

### Scenario 2: Unscheduled Training

```
Agent: AGENT_115
Schedule: On-Queue Support 09:00-13:00
Actual:
├─ 10:00-10:45: On-Queue (compliant)
├─ 10:45-11:30: Training (emergency product training)
├─ 11:30-13:00: On-Queue (compliant)

Adherence Impact:
├─ Compliant Time: 2:15 (09:00-10:45 + 11:30-13:00)
├─ Non-Compliant Time: 0:45 (training)
├─ Total Time: 4:00
├─ Adherence: (2:15 / 4:00) = 56% Non-adherent ✗

Solution Option 1: Schedule Exception
├─ Update master schedule for 10:45-11:30
├─ Mark as "Training - Exception"
├─ Configure SSG to include Training
├─ Result: Would be adherent ✓

Solution Option 2: Ignore Code
├─ Mark "Emergency Training" as Ignore
├─ When agent in training: Doesn't count
├─ Result: Adherence = 100% (training ignored) ✓

Solution Option 3: Coaching
├─ Supervisor counsels agent on schedule
├─ Reinforce adherence importance
├─ Coach on better timing for breaks
└─ Plan to avoid future non-adherence

Best Practice: Combination
├─ Use Solution 1 (schedule exception) immediately
├─ Use Solution 3 (coaching) to prevent future
└─ Use Solution 2 (ignore) only for legitimate reasons
```

---

## Best Practices

### Adherence Configuration
- **Clear Rules** - Unambiguous state mappings
- **Realistic Thresholds** - Balance flexibility with accountability
- **Simple Codes** - Easy for agents to understand
- **Documentation** - Maintain mapping diagrams
- **Testing** - Validate configuration in test environment
- **Training** - Teach agents adherence expectations

### Monitoring
- **Regular Review** - Check adherence daily
- **Trend Analysis** - Look for patterns
- **Investigation** - Ask "why?" for outliers
- **Communication** - Share results with team
- **Positive Coaching** - Praise improvements
- **Accountability** - Address chronic issues

### Coaching
- **Empathy** - Understand barriers to adherence
- **Clarity** - Explain why adherence matters
- **Support** - Help with scheduling challenges
- **Consequences** - Clear performance expectations
- **Recognition** - Celebrate good adherence
- **Follow-up** - Track improvements over time

---

## Interview Cheat Sheet

| Question | Answer |
|---|---|
| What's real-time adherence? | Compares actual agent state to scheduled state |
| How often monitored? | 15, 30, or 60-minute intervals (configurable) |
| Yellow status meaning? | Non-adherent or approaching non-adherence |
| Red status meaning? | Severely non-adherent (significantly off schedule) |
| What's threshold? | Flexibility in start/end time (e.g., ±5 min) |
| Adherence calculation? | Map real-time state to schedule state, check threshold |
| Reason codes? | Aux codes for secondary classification |
| Schedule state group? | Maps Genesys states to scheduled activities |
| Multi-channel adherence? | Track adherence per media type separately |
| What's ignore code? | Activity excluded from adherence calculation |
| Common non-adherence? | Unscheduled breaks, late returns, unplanned training |
| How improve adherence? | Clear rules, thresholds, coaching, support |
| Impacts of poor adherence? | Service level failure, staffing gaps, customer impact |
| Exception handling? | Can be scheduled or handled with ignore codes |
| Reporting adherence? | Daily/weekly reports by agent/team/site |

---

## Key Takeaways

- **Continuous Tracking** - Real-time monitoring throughout day
- **State Mapping** - Clear mapping of actual to scheduled states
- **Threshold Flexibility** - Balance accountability with realism
- **Multi-Channel** - Support for blended agent work
- **Reason Codes** - Detailed tracking of why agents are off-schedule
- **Ignore Codes** - Exclude legitimate exceptions
- **Visualization** - Color-coding for quick status assessment
- **Coaching Opportunity** - Address issues with support and empathy
- **Service Impact** - Poor adherence damages service levels
- **Policy Enforcement** - Consistent application of rules

---

## Additional Resources

### Official Documentation
- Adherence: all.docs.genesys.com/PEC-WFM/Current/Supervisor/AdherenceMdl
- Schedule State Groups: all.docs.genesys.com/PEC-WFM/Current/Administrator/CfgAdhRls
- Adherence Calculation: docs.genesys.com/Documentation/WM/latest/SHelp/AdhrCalcs

### Support & Training
- Genesys University: genesys.com/training
- Community Forums: https://community.genesys.com
- Technical Support: https://support.genesys.com

---

## Document Version Info
**Last Updated:** March 2026  
**Source:** Genesys WFM Official Documentation  
**Validated:** Current with January-March 2026 releases  
**Version:** 1.0