CallMeter logoCallMeter Docs
MetricsCall timing

Hold Count — SIP Call Hold Testing Metric

Track the number of hold/resume events per call. Essential for testing call center workflows, PBX hold behavior, and re-INVITE handling in SIP infrastructure.

Hold Count

PropertyValue
Keyhold_count
UnitCount
TypeCumulative counter
DirectionBoth
RFCRFC 3264 Section 8.4 (Hold via SDP), RFC 3261 (re-INVITE)

What It Measures

Hold Count tracks the number of times a call was placed on hold during a test. Each hold event is triggered by a re-INVITE with the media direction changed to sendonly or inactive in the SDP. The subsequent resume (re-INVITE back to sendrecv) does not increment the counter — only the hold transition does.

Why It Matters

Call hold is one of the most common mid-call operations in enterprise telephony. Call centers, IVR systems, and PBX environments put calls on hold constantly — for transfers, consultations, queue waiting, and music-on-hold. If hold/resume breaks, the entire call center workflow breaks.

Testing hold behavior at scale reveals issues that never surface in single-call testing: SBC state machine bugs under concurrent holds, music-on-hold resource exhaustion, and re-INVITE race conditions when multiple holds happen simultaneously.

Thresholds

Compare against your test scenario's expected hold count:

ConditionMeaning
Hold count = expected scenario holdsHold/resume cycle working correctly
Hold count < expectedSome hold actions failed — check scenario timing
Hold count > expectedUnexpected holds — may indicate SBC or PBX inserting holds autonomously

How to Fix It

  1. Check scenario definition. Verify hold actions are correctly defined in your test scenario with appropriate timing.
  2. Verify re-INVITE handling. Use CallMeter's SIP ladder diagram to inspect the re-INVITE/200 OK/ACK exchange for hold.
  3. Check concurrent hold limits. Some SBCs limit concurrent held calls. During load tests, this limit may be reached.
  4. Compare with SSRC Switches. Each hold/resume may trigger an SSRC change. If SSRC Switches exceeds hold count, the SBC is resetting streams unnecessarily.

On this page