Outbound Metrics
Our omni-channel outbound solution provides a comprehensive set of metrics, accessible via intuitive dashboards powered by Prometheus and visualized in Grafana (real-time) and Superset (historical). These metrics enable business users to monitor outbound campaign performance in real time, analyze historical trends, and optimize both operational efficiency and SLA adherence.
This document outlines the integrated metrics and reporting capabilities of our platform. The analytics suite combines real-time tracking with historical reporting to support performance monitoring, trend analysis, and data-driven decision-making.
We offer a set of standard dashboards and historical reports for immediate visibility into key KPIs. For advanced analysis, users can leverage a wide range of exposed metrics to create custom dashboards and reporting views aligned to specific business needs.
For example, you can track precisely:
The rate at which contacts are loaded into a campaign.
The number of contacts that pass or fail a condition node (e.g., "is customer balance > $500?").
The success and failure rates of digital messages, segregated by channel type.
This level of detail provides unparalleled power for campaign optimization, allowing you to pinpoint the exact stage in a customer journey that may be causing friction or drop-off.
1. Metrics
This section outlines key metrics, the nodes that expose them, and their relevance.
Each metric has attributes such as a name, description, method of calculation, unit of measure (e.g., seconds, percentage), and context (channel, time period).
defined by standardized formulas and measurement guidelines (e.g., how to calculate AHT or FRT).
Summary Table of a Typical Contact Center Metric Definition Elements
Attribute | Description |
|---|---|
Metric Name | The recognized name, e.g., First Response Time (FRT) |
Metric Purpose | What aspect of performance does it measure |
Measurement Unit | Time (seconds/minutes), count, percentage, score, etc. |
Calculation Method | Formula or approach (e.g., FRT = time from customer contact to first agent response) |
Context/Scope | Which channels, agent groups, or periods does the metric apply to |
Benchmark/Standard | Industry typical target or range values |
1.1. Granularity
Granularity in metrics refers to the level of detail (i.e., how finely or coarsely) at which the data is measured, recorded, or aggregated, especially over time. It answers the question of how detailed or how often a metric is captured or reported. In short, you choose your granularity based on whether you need to see every tiny detail (High) or prioritize efficiency and long-term views (Low). Data collected every minute is more granular than data collected hourly. First Response Time data might be recorded with granularity down to the second level (fine granularity) or aggregated as daily averages (coarser granularity).
High (or Fine): The data is recorded or aggregated over very short time intervals (e.g., every 1 second, 10 seconds, or 1 minute).
Intermediate: The data is recorded or aggregated over medium time intervals. This level provides a balance between detail and storage efficiency, making it ideal for operational monitoring. (e.g., every 5 minutes, 10 minutes, or 30 minutes)
Low (or Coarse): The data is aggregated over longer time intervals (e.g., every 1 hour, 1 day, or 1 week).
1.2. Labels
Key-value pairs that enable a multi-dimensional data model in Prometheus. They allow you to segment and filter the base metric. For example, the metric ob_dial_attempts_total can be filtered by campaign_id to see attempts for a specific campaign, or by dial_result to see only busy signals.
1.3. Metric Types
Metric Type | Description |
|---|---|
Counter | A cumulative metric that represents a single monotonically increasing counter whose value can only be incremented or reset to zero on restart. Use for counts of events (e.g., successful dials, total calls). |
Gauge | A metric that represents a single numerical value that can arbitrarily go up and down. Use for current states (e.g., contacts remaining, number of active agents). |
Histogram | Samples observations (usually durations or sizes) and counts them in configurable buckets. It also provides a sum of all observed values. Use for request latencies or durations (e.g., wait time, wrap time). |
Summary | Similar to a Histogram, but also calculates configurable client-side quantiles over a sliding time window. Use for service-level objective (SLO) monitoring of durations. |
1.4. Terminologies
Term | Definition |
|---|---|
Recently | between the last 5 minutes and the last 30 days |
Interval | The sampling interval can be any time duration between 1s and 15 m. |
2. Functional Metric Classification
To ensure comprehensive monitoring, all platform metrics are grouped into three functional categories based on their purpose within the system and the teams they serve. This classification ensures distinct visibility into business outcomes, system health, and user experience, allowing for targeted dashboarding and alerting.
Category Title | Purpose |
|---|---|
Entity (Object State & Flow) Metrics | Monitors the aggregate state and flow of core business entities (e.g., Contacts, Campaigns, Agents). Metrics track the population count residing in specific states (Inventory/Backlogs via Gauges) and the cumulative volume that has completed transitions (Throughput/Outcomes via Counters).
|
Flow Metrics | Monitors the real-time operational values and dynamic performance ratios generated at key decision and control points within the Outbound Dialing Flow. These metrics are crucial for controlling the system's behavior (e.g., dialing mode/efficiency, agent reservation, cpa logic, error rate, etc. ) and optimizing the flow's moment-to-moment efficiency. They represent instantaneous calculated states or ratios, and do not track the aggregate status or cumulative outcome of contact entities.
|
Performance Metrics | Measures the time taken to complete critical system actions and state transitions (Service Level Indicators).
|
2.1. Entity (Object State & Flow) Metrics
Below are the currently available metrics for each entity type.
2.1.1 Entity: OB Flow (campaign) metrics
Metric Name | Metric Type | Overview | Key Label(s) | Granularity | Source Node |
|---|---|---|---|---|---|
PLANNED | Gauge | The number of contacts pending (from CX Filters) to be ingested into this campaign. Allows you to monitor:
|
|
| Campaign Init |
AVAILABLE | Counter | The cumulative number of unique (unless a restart occurs) contacts successfully ingested and made available for dialing/contacting in this campaign flow. Allows you to monitor:
|
|
| Campaign Init |
PLANNED | Counter | The cumulative count of contacts scrubbed/removed from the list before any dialing attempt. Allows you to monitor:
|
|
| Dialer Nodes
|
PLANNED | Counter | The cumulative count of contacts that have been evaluated against a specific condition set up within the campaign flow. Allows you to monitor:
|
|
| Condition |
PLANNED | Counter | This metric counts the number of contacts that have passed a specific condition within a campaign's decision node. Allows you to monitor:
|
|
| Decision |
Dialer Metrics | |||||
AVAILABLE | Counter | This metric counts the total number of contacts pushed to the Dialer Nodes for execution. It can be broken down for more granular insights: I would like to monitor:
|
| 5 min | UCCE/UCCX Dialer, EFCX Dialer |
AVAILABLE | Counter | This metric counts the total number of recent call results generated by the dialer. It can be broken down for more granular insights: I would like to monitor:
|
| 5 min | UCCE/UCCX Dialer, EFCX Dialer |
AVAILABLE | Gauge | This metric offers a live snapshot of your dialer's workload by counting the number of in-progress contacts currently being dialed. I would like to monitor:
|
| 5 min | UCCE/UCCX Dialer, EFCX Dialer |
Digital Messaging Metrics | |||||
AVAILABLE | Counter | This metric counts the number of outbound messages sent per campaign and per channel type, allowing you to track the total message volume across all digital channels, like SMS and email. Key uses include:
|
| 5 min | Digital Channel Message |
AVAILABLE | Counter | This metric counts the number of outbound messages that came back with a message result per campaign and channel type, allowing you to track the delivery performance of digital messaging campaigns, investigate failures by channel or campaign, and refine strategy by identifying high-performing channels. Key uses include:
|
| 5 min | Digital Channel Message |
ROADMAP | Counter | Counts the total number of digital outbound messages (SMS, WhatsApp, Email, etc.) that were successfully delivered to recipients, as confirmed by the provider.
I would like to monitor:
|
| 5 min | Digital Channel Message (via provider delivery APIs) |
ROADMAP 2026 | Counter | Counts the number of outbound digital messages (SMS, WhatsApp, Email, etc.) that failed to deliver due to issues like invalid numbers, content rejections, or provider/network errors.
I would like to monitor:
|
| 5 min | Digital Channel Message (via provider delivery APIs) |
ROADMAP May be available for limited channels. | Counter | Counts the number of outbound digital messages (e.g., WhatsApp, Messenger) that were successfully read or seen by the recipient, based on read receipts supported by the messaging platform.
I would like to monitor:
|
| 5 min | Digital Channel Message (via provider delivery APIs) |
ROADMAP May be available for limited channels. | Gauge (Calculated) | Measures the percentage of delivered messages that were actually read/opened (where supported by the channel).
I would like to monitor:
Formula
|
| 5 min | Digital Channel Message (via provider delivery APIs) |
2.1.2 Entity: Agent
Metric Name | Metric Type | Overview | Key Label(s) | Granularity | Source Node |
|---|---|---|---|---|---|
AVAILABLE DEV-PLANNED for the addition of the queueName label. | Gauge | The current number of agents actively reserved ("seized") by the system for the campaign's current dialing requirements. This is a real-time count. This metric directly reflects the success of the pacing algorithm in reserving the necessary human resources calculated by the Seize Node. Allows you to monitor:
|
| 10 Seconds (or less) | SIEZE |
ROADMAP 2026 | Gauge | The total number of agents currently logged in, ready, and potentially available for seizing by any outbound campaign in the Contact Center (CC) that utilizes the specified Queue. This represents the total capacity pool. Allows you to monitor:
|
| 1 min | SIEZE |
ROADMAP 2026 | Gauge | The current number of agents who are logged in, available, and are currently in an idle/waiting state (i.e., not seized and not on a call) and available to be seized for outbound work. Allows you to monitor:
|
| 1 min | SIEZE |
ROADMAP 2026 | Gauge | The current number of agents actively performing After Contact Work (ACW), which is post-call wrap-up, data entry, etc. These agents are temporarily unavailable for new calls. Allows you to monitor:
|
| 1 min | SIEZE |
ROADMAP 2026 | Counter | The cumulative sum of time (in seconds) spent by agents talking to connected contacts within the campaign flow. Used with the Allows you to monitor:
|
| 5 min | Dialer Nodes |
2.2. Flow Metrics
Below are the currently available flow/operational metrics.
Metric Name | Metric Type | Overview | Key Label(s) | Granularity | Source Node |
|---|---|---|---|---|---|
DEV-PLANNED | Gauge | The current contact ratio (contact per agent siezed) is currently configured or dynamically calculated for this campaign. Allows you to monitor:
|
| 5 Seconds (or less) | INIT |
DEV-PLANNED | Counter |
| Dailer Node | ||
DEV-PLANNED | Gauge (Calculated) | The instantaneous ratio of calls currently classified as Machine vs. Human by the Call Progress Analysis (CPA) node within the outbound flow. A real-time performance indicator of the flow's effectiveness. The value ranges from 0.0 to 1.0. Allows you to monitor:
Formula
|
| 10 Seconds (or less) | CPA |
ROADMAP | Gauge |
| |||
ROADMAP | Gauge | The real-time number of agents that the Pacing/INIT Node has determined are immediately required to prevent connected contacts from being abandoned. This value represents the current human resource demand of the flow. Allows you to monitor:
|
| 5 secs | INIT |
2.3. Performance Metrics
Below are the currently available Performance metrics.
Metric Name | Metric Type | Overview | Key Label(s) | Granularity | Source Node |
|---|---|---|---|---|---|
DEV-PLANNED | Counter | Counts outbound calls that were abandoned before reaching an agent or IVR — whether the contact hung up during ringing or the dialer failed to connect an agent on time. I would like to monitor:
|
| UCCE/UCCX Dialer or EF Voice Dialer, derived from
| |
ROADMAP 2026 | Counter | The cumulative number of successful outbound calls that were answered by a human and connected to an agent in the campaign flow. Allows you to monitor:
|
| 5 min | Dialer/CPA Node |
ROADMAP 2026 | Histogram / Summary | The duration (latency) from the moment the dialer initiates the call to the moment a live person answers (i.e., CPA is confirmed human). Allows you to monitor:
|
| Per Call Event | Dialer/CPA Node |
ROADMAP 2026 | Gauge / Summary | The average time a successfully answered contact spends on the line waiting for a seized agent to become available. (Also known as "Agent Wait Time" for the customer). This is the most critical compliance and customer experience SLI for predictive dialing. It is regulated by law (ACR, which is directly impacted by high hold time). Allows you to monitor:
|
| 10 secs | SIEZE/ INIT |
ROADMAP 2026 | Counter | The cumulative number of calls where the Call Progress Analysis (CPA/AMD) node incorrectly classified the answer (e.g., mistook a human for a machine, or vice versa). Allows you to monitor:
|
| 5 mins | CPA Node |
ROADMAP 2026 Core Campaign Effectiveness (Highest Importance): This is the ultimate metric for list quality and dialer performance combined. A low rate means the dialer is wasting resources (time, lines) on non-productive dials (busy, no answer, disconnected). It must be constantly monitored to ensure the list is viable and the campaign is economically efficient. | Gauge (Calculated) | The instantaneous ratio of calls resulting in a live human answer (Right Party Contact or any live person) compared to the total number of dials made. Allows you to monitor:
Formula
|
| 10 secs | Calculated from Dialer/ CPA Nodes |
ROADMAP 2026 This high frequency is mandatory for maintaining regulatory compliance, as the abandoned call rate must be continuously tracked and controlled to stay below a legally mandated threshold (typically 3% or 5%). | Gauge (Calculated) | The instantaneous ratio of calls that were answered by a contact but dropped (abandoned) before being connected to an available human agent or in IVR. Allows you to monitor:
Formula
|
| 10 secs | Calculated (from Dialer/INIT) |
This metric tracks the completeness of the dialing effort. It helps managers understand how close the campaign is to being finished and whether the dialer is stuck, cycling on a small subset of records, or ignoring parts of the list. It is crucial for deciding when to stop the campaign or transition to a different dialing mode (e.g., from predictive to power). | Gauge (Calculated) | The ratio of the number of unique contacts that have been dialed (attempted) at least once, compared to the total number of contacts loaded into the campaign. Allows you to monitor:
Formula:
|
| 1 hour This metric is best aggregated over a campaign batch or hour, as it represents progress toward list exhaustion rather than real-time flow control. | INIT |