Cumulative Hold Time Across Transfers

Good afternoon. I am a heavy user of the Performance dashboards and I am currently building a report to track the ‘Total Customer Hold Time’ for interactions that involve multiple transfers between departments. However, I am finding that whenever a call is transferred from one agent to another, the ‘Hold Time’ metric in the analytics detail record resets to zero for the new segment. I want to see the cumulative hold time for the entire interaction history, not just the hold time for the current agent. Is there a ‘Global Hold Time’ metric that persists across transfers, or do I have to manually sum the segments in Excel?

I’m a QM supervisor and I evaluate over two hundred calls a week, so I can tell you that this ‘Hold Reset’ is a massive headache for our performance reviews! It makes it look like our agents aren’t holding customers when the customer has actually been on hold for ten minutes across three different queues! To get the real number, you have to look at the ‘Conversation Level’ metrics in the API, not the ‘Participant Level’. There is an attribute called tHeld at the very top of the JSON detail record that should represent the cumulative total for all participants. The standard UI dashboards usually just show the participant-level data, which is why it looks like it’s resetting.

Hello! I am building a custom agent desktop and I’ve had to solve this exact reporting gap for our management. As the previous reply mentioned, the UI is very segment-focused. If you are building an enterprise-grade report, you must query the v2.analytics.conversations.details.query endpoint. You will need to write a script (I’m using Node.js) that iterates through all the segments of type hold for the entire interaction and sums their startTime and endTime differences. This is the only way to get a 100% accurate ‘Total Customer Wait Experience’ that accounts for transfers, IVR hold time, and on-hold periods while talking to an agent.