# Telephony Metrics

> The numbers that you monitor in voice deployments.

This page gives industry-standard metric definitions, formulas, healthy
ranges, and what each metric indicates when it deviates. The gateway
also emits every metric below — see [Telemetry](/platform/telemetry).

## Capacity & traffic

| Metric | What it means | Healthy range | Why it matters |
| ------ | ------------- | ------------- | -------------- |
| **CPS** (Calls Per Second) | The origination rate. | The trunk's contracted CPS, with ~30% headroom. | Carriers throttle above the contracted CPS. Sustained overshoot causes `503` rejections. |
| **Concurrent channels** | In-flight calls at any instant. | < 80% of the trunk channel cap. | At 100%, new call attempts drop. Steady state = `CPS × ACD`. |
| **Erlangs** | Channel-hours of traffic. 1 Erlang = one channel busy continuously for one hour. | It is a capacity-planning unit. | Carriers and PBX vendors size hardware in Erlangs, not CPS. |
| **Trunk utilisation** | Concurrent / channel cap. | 60–80%. | Utilisation < 40% means over-provisioned capacity (cost). Utilisation > 90% means blocking risk. |

## Connection & answer rates

| Metric | Formula | Healthy | Why it matters |
| ------ | ------- | ------- | -------------- |
| **ASR** (Answer-Seizure Ratio) | answered / attempted | 30%–70% (campaigns), > 90% (transactional) | A low ASR indicates bad numbers, blocked caller-ID, or trunk health issues. |
| **ACD** (Average Call Duration) | `Σ duration / answered` | depends on use case | A sudden ACD drop indicates audio failure. A sudden spike indicates stuck calls that do not hang up. |
| **ABR / NER** (Answer/Network Effectiveness Ratio) | (answered + busy + no-answer) / attempted | > 95% | It excludes "user-busy" from your fault attribution and isolates network failures. |
| **CCR** (Call Completion Ratio) | answered / not-blocked-attempts | > 50% on outbound campaigns | The carrier-facing version of ASR. |
| **PDD** (Post-Dial Delay) | dial → ringback start | < 3 s | With high PDD, the caller hangs up before ringback. Carrier routing often drives it. |

## Audio quality

| Metric | What it means | Healthy | Why it matters |
| ------ | ------------- | ------- | -------------- |
| **MOS** (Mean Opinion Score) | A subjective 1.0–5.0 quality estimate. | ≥ 4.0 toll, ≥ 3.6 acceptable | A single-number summary of perceived audio quality. |
| **R-factor** | ITU E-Model 0–100. It converts to MOS. | ≥ 80 = MOS 4+ | It catches problems that MOS alone smooths over (delay, codec, jitter). |
| **Jitter (ms)** | The StdDev of inter-packet arrival times. | < 30 ms | Jitter above 30 ms triggers de-jitter buffering, which raises latency. |
| **Packet loss (%)** | RTP packets dropped. | < 1% | Loss of 1–3% is audible. Loss > 3% is degraded. |
| **One-way latency (ms)** | Mouth → ear. | < 150 ms ideal, < 300 ms acceptable | See ITU G.114. Above 400 ms, conversation falls apart. |
| **Round-trip time (ms)** | The symmetric round trip. | < 300 ms | It is diagnostic. One-way latency is the number that users perceive. |
| **Echo Return Loss (ERL, dB)** | An echo suppression measure. | > 20 dB | Below 10 dB, the caller hears their own voice. |

## WebRTC-specific metrics

When the leg is WebRTC (browser, LiveKit, Daily, Chime, Twilio Media
Streams, Vapi), a second tier of standard numbers applies:

| Metric | What it means | Healthy | Why it matters |
| ------ | ------------- | ------- | -------------- |
| **ICE gathering time (ms)** | The time to enumerate candidate paths and pick one. | < 1 s | High values mean STUN/TURN issues. The user hears a long "connecting" pause. |
| **DTLS handshake time (ms)** | The SRTP key negotiation duration. | < 200 ms | It adds to PDD on WebRTC legs. |
| **Selected candidate type** | `host` / `srflx` / `relay`. | Mostly `host` or `srflx`. | A high `relay` % means much TURN traffic. TURN is expensive and adds 30–80 ms one-way. |
| **REMB / TWCC bandwidth estimate** | A live link estimate from the WebRTC bandwidth controller. | matches connection speed | Drops in the estimate predict upcoming loss/jitter. |
| **NACK / FIR rate** | Retransmit and full-frame requests. | low and stable | Spikes mean the receiver detects loss. Sustained spikes need action. |
| **Audio level** | Per-direction loudness. | speech-shaped, with silences | Flat or zero levels indicate a mic or route issue. |
| **PLI/PLC events** | Packet-loss-concealment fires. | sparse | Frequent PLC means concealment masks the loss, but quality is degraded. |

These metrics come from the WebRTC `getStats()` standard. Observability
tooling that consumes WebRTC stats recognises them by name.

## Outbound campaign metrics

| Metric | What it means | Healthy | Why it matters |
| ------ | ------------- | ------- | -------------- |
| **Connect rate** | answered / dialed | 30–60% (cold), > 80% (warm) | It drives bottom-of-funnel conversion. |
| **Pickup rate** | "human answered" / dialed | varies | AMD (answering-machine detection) classifies calls as human vs voicemail. |
| **Abandon rate** | answered → agent unavailable / answered | ≤ 3% (TCPA) | TCPA caps US predictive-dialer abandon at 3%. This is a legal requirement, not a target. |
| **Drop rate** | dropped mid-call / answered | < 0.5% | A high drop rate indicates trunk instability or a codec mismatch. |
| **DNC hit rate** | suppressed / dialed | ideally 0% | Anything > 0 means your DNC hygiene is broken. |

## Inbound / contact-centre metrics

| Metric | What it means | Healthy | Why it matters |
| ------ | ------------- | ------- | -------------- |
| **AHT** (Average Handle Time) | talk + hold + wrap-up | varies by industry | It measures operations efficiency. |
| **ASA** (Average Speed of Answer) | queue time before an agent picks up | < 30 s most industries | SLAs usually target ASA. |
| **Service Level** | "% answered within X seconds". e.g. 80/20 = 80% within 20 s. | varies | The dominant SLA shape in contact-centre RFPs. |
| **Abandonment Rate** | callers who hung up before an agent answered | < 5% | Above 5% indicates under-staffing or routing issues. |
| **First Call Resolution (FCR)** | resolved / answered | > 70% | It predicts CSAT better than AHT. |
| **Occupancy** | (talk + hold + wrap) / scheduled | 80–85% | > 90% burns out agents. |

## Cost metrics

| Metric | What it means | Why it matters |
| ------ | ------------- | -------------- |
| **CPM** (Cost Per Minute) | The carrier rate per minute. It varies by destination prefix. | It is the foundation of LCR. |
| **CPC** (Cost Per Call) | The all-in cost per attempt: minutes + AI + recording storage. | The standard unit-economics figure for voice workloads. |
| **Margin per minute** | Revenue – (carrier + AI + infra) per billed minute. | It determines whether per-minute pricing is sustainable. |
| **Bill increment** | Carriers bill in 1/1, 6/6, or 30/30-second increments. | The first number is the setup minimum. The second number is the increment after. With 6/6 billing, a 7-second call bills as 12 seconds. With 1/1 billing, it bills as 7 seconds. |

## Reliability

| Metric | What it means | Healthy | Why it matters |
| ------ | ------------- | ------- | -------------- |
| **Uptime / availability** | The % of time the service answered new calls. | ≥ 99.95% (3-nines plus). | Voice SLAs hover here. Availability below 99.9% triggers credits. |
| **MTTR** (Mean Time To Repair) | The average outage length. | < 15 min for carrier-grade voice. | It is more operationally meaningful than MTBF for voice. |
| **Cutover RTO/RPO** | Time-to-recover / data-loss window for failover. | RTO < 1 min, RPO ~0 for voice. | It drives the active-active vs cold-standby decision. |

## Which metrics matter for which workload

| Workload | Primary metrics |
| -------- | --------------- |
| **Outbound predictive dialer** | ASR, abandon rate, CPS sustained. |
| **Contact-centre / ACD** | ASA, service level, MOS. |
| **Carrier interconnect** | CPS, NER, MOS, CPM. |
| **AI voicebot** | One-way latency, transcoding overhead, concurrent channels. |
| **Browser / WebRTC** | DTLS handshake time, ICE gathering time, % `relay` candidates, MOS. |
| **Regulated (health / finance)** | DTMF masking, recording encryption, retention controls. |
| **Cost / unit-economics** | CPC, margin per minute, billing increment. |
