> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cxp.crescendo.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Conversation Handle Time Reporting

> Understand how CXP counts conversation handling time, excludes Pending time, and reports recorded and elapsed agent responsibility in conversations, Search, Views, Drilldown, and Dashboard.

Use conversation handling reports to understand how long responsibility stays
with AI, a team, or an individual agent. Compare completed agent handling,
find active conversations above a threshold, and inspect the changes behind
an individual conversation's total.

CXP measures **handling responsibility**. Time can accumulate while an agent
is responsible for an Open conversation even when they are not typing or
viewing it. These measures do not represent attendance, availability, or
focused working time. For availability, use [Agent Statuses Reporting](https://docs.cxp.crescendo.ai/capabilities/agent-statuses.md).

## Before you start

* You need access to the relevant conversation or reporting page. Your role
  determines which conversations, reports, and configuration actions you can use.
* Handling is tracked automatically as conversation status and responsibility
  change. There is no separate stopwatch to start.
* **Handle Time** and **Elapsed HT** are built in. You do not need to configure
  a Custom Dimension to display or filter them, or to group by Elapsed HT.
* Creating personal Views requires personal-view management permission;
  configuring shared Views requires the corresponding administrator permission.
  See [Roles and permissions](https://docs.cxp.crescendo.ai/reference/roles-and-permissions.md).

## Understand the measures

| Measure | Answers | Includes work still underway? |
| - | - | - |
| **Handle Time** | How much individual-agent handling has been recorded when this conversation was resolved or otherwise ended? | No. It retains the previously completed total while the conversation is active. |
| **Elapsed HT** | How much eligible individual-agent handling has accumulated up to this calculation's cutoff? | Yes, including current Open responsibility assigned to an individual agent. |
| **Average Handle Time (AHT)** | What is the average recorded Handle Time of the conversations selected for this report? | No. It averages Handle Time, not Elapsed HT. |

### Handle Time

Handle Time adds the time a conversation was **Open and assigned to an
individual human agent**, across its completed periods of work. AI handling,
team assignment, and Pending time are excluded.

The value is recorded when the conversation is resolved or otherwise ended.
If the conversation is reopened, its existing Handle Time stays unchanged
until the new work ends. An active conversation can therefore show an earlier
completed total, or a dash if no usable completed total is available.

### Elapsed HT

Elapsed HT includes eligible agent responsibility already completed, including
work since the latest reopening, plus the current interval when the conversation
is Open and assigned to an individual agent. It does not need to wait for the
conversation to be resolved.

In **Search**, **Views**, and **Drilldown**, each result uses one fixed calculation
cutoff. Paging and sorting retain that cutoff; values do not tick while you
watch the table. Select **Refresh** for a new calculation. Opening a saved View
or report evaluates it again; saving the configuration does not freeze its
elapsed values permanently.

The cutoff fixes the time used for active handling; it does not preserve a
permanent copy of the conversation. Later updates or corrections can change
the information returned for that same cutoff.

In the conversation workspace, the header and **Conversation Handling** panel
use the current time for Open or Pending conversations. Eligible active agent
time can advance every second there. This is why a workspace value can be larger
than an earlier Search result.

### Average Handle Time (AHT)

AHT adds the recorded Handle Time values in the selected population and divides
by the number of conversations with a usable value. A recorded zero is included;
missing values are excluded from both the sum and the denominator.

Each conversation contributes once to the average for its report row. A parent
or overall average is calculated from its conversations, not by averaging the
averages of smaller groups. An Open or Pending conversation can contribute its
earlier completed Handle Time.

## What counts as handling time

The **Conversation Handling** panel separates responsibility into four totals:

| Conversation state and responsibility | AI | Team | Agent | Overall |
| - | - | - | - | - |
| Open, handled by AI | Counts | Does not count | Does not count | Counts |
| Open, assigned to a team | Does not count | Counts | Does not count | Counts |
| Open, assigned to an individual human agent | Does not count | Does not count | Counts | Counts |
| Pending, regardless of who is responsible | Does not count | Does not count | Does not count | Does not count |
| Resolved or Closed | No additional time | No additional time | No additional time | No additional time |

Overall is **AI + Team + Agent** handling. Agent is the measure used by Handle
Time, Elapsed HT, and AHT. Team-assigned time does not become individual-agent
time merely because that agent belongs to the team. Changing the responsible
agent ends one person's interval and starts the next; both eligible intervals
contribute to the conversation's total.

An unassigned conversation contributes no individual-agent handling. Changes
to an agent's Ready, Not Ready, or Off Duty status do not by themselves pause a
conversation's handling time; the conversation's own status and responsibility
determine what counts.

Durations use elapsed clock time, including time outside business hours. CXP
counts whole-second boundaries by dropping fractional seconds from each start
and end time before calculating the difference. Values are not limited to a
single day.

### Pending time

Pending pauses all four handling totals. This applies whether the conversation
is waiting on a customer, a third party, or another recorded waiting party.
The waiting reason explains the interval but does not change the calculation.

The Pending interval still appears in **Handling history**, with its duration
and waiting party when available. Its duration can increase while the
conversation remains Pending, even though agent handling stays unchanged.
Returning the conversation to Open resumes the appropriate responsibility
counter.

As a result, the time from the beginning to the end of a conversation can exceed
Overall handling. Time spent Pending, Resolved, or Closed does not add handling.

### Resolving, closing, and reopening

1. While work is active, Elapsed HT includes eligible work so far. Handle Time
   retains the last completed value.
2. Resolving the conversation records the completed agent total.
3. Closing an already Resolved conversation adds no handling time.
4. Reopening retains that recorded total. New eligible work increases Elapsed
   HT immediately, while Handle Time waits until the new work ends.
5. When the reopened work is resolved or otherwise ended, Handle Time includes
   the earlier and newly completed agent time.

Closing directly from Open or Pending also records the eligible agent time
accumulated so far. Any time spent Pending remains excluded.

For example, a conversation with **5m 0s** recorded Handle Time is reopened.
After another 90 seconds of Open agent responsibility, Handle Time remains
**5m 0s** and Elapsed HT is **6m 30s**. Moving it to Pending freezes agent time at
that amount. Resolving it without further Open agent work records **6m 30s**.

### Recorded zero and missing information

| Display | How to interpret it |
| - | - |
| Handle Time **0m 0s** | A usable completed record contains zero individual-agent seconds. For example, the work may have been handled entirely by AI. |
| Handle Time **—** | No usable recorded total is available. Do not treat this as zero. |
| Elapsed HT **0m 0s** | Either no eligible agent time has accumulated, or the information needed for the calculation is unavailable or incomplete. |
| Conversation Handling breakdown **—** | The relevant breakdown cannot be calculated from the available information. |

Older conversations or incomplete history may lack a reliable total. Refreshing
does not recreate missing past work. Elapsed HT's zero fallback is useful for
display and filtering, but does not prove that no agent worked on the conversation.
It also applies when the available history cannot support the requested cutoff.
In particular, an Elapsed HT filter or group at zero can include both measured
zeroes and unavailable calculations.

## Example: one conversation, different totals

This synthetic conversation is handled in the following order:

| Responsibility or state | Duration | Contribution |
| - | - | - |
| AI | 45 seconds | AI and Overall |
| Team | 75 seconds | Team and Overall |
| Individual agent | 120 seconds | Agent and Overall |
| Pending on the customer | 60 seconds | History only |
| Individual agent | 180 seconds | Agent and Overall |

The completed **Handle Time is 300 seconds**, or **5m 0s**. Overall handling is
**420 seconds**, or **7m 0s**. The full sequence lasts **480 seconds**, or eight
minutes, because its one-minute Pending interval does not count as handling.

## Inspect Conversation Handling

1. Open a conversation and select the **clock and duration** immediately before
   **History** in its header.
2. Read the headline. Open/Pending conversations show **Elapsed Handle Time**;
   Resolved/Closed conversations show recorded **Handle Time**.
3. Compare the **AI**, **Team**, **Agent**, and **Overall** breakdown.
4. Scroll through **Handling history**. The headline remains visible above the
   scrolling breakdown and history.
5. Use **Newest first** on the right to switch to oldest-first order when you
   want to follow events from the beginning.
6. Select a row's **details button** to inspect the responsible party, duration,
   exact times, and other recorded facts. Close the popup to return to history.

History rows show the responsible party, status, start time, a readable cause
such as **Reassigned** or **Status changed**, and duration. A Pending row also
shows the waiting party when available, such as **Pending · customer**.

![Conversation Handling panel with AI, Team, Agent and Overall totals, sortable history, and a Pending interval](https://mintcdn.com/cxp/sTvyAxtCMQDKa5Vp/assets/screenshots/conversation-handling.png?fit=max\&auto=format\&n=sTvyAxtCMQDKa5Vp\&q=85\&s=dc6ec9a7146bd56fdd1f7584cfa775e7)

The completed example has five minutes of agent handling and seven minutes overall. Its Pending minute remains visible in Handling history.

## Use handling time in Search

### Show and compare the columns

Search shows **Handle Time** after **CSat** by default. **Elapsed HT** is optional
and starts hidden.

1. Open **Search** and choose the conversations you want to review.
2. Select **Columns & sort**. Enable **Handle Time** if it is hidden, and enable
   **Elapsed HT**, which is hidden by default.
3. Compare completed and elapsed agent handling side by side. Select either
   column heading to sort numerically; select it again to reverse the order.
4. Hover over or focus a duration to see its exact value in seconds.

Durations retain days, hours, minutes, and seconds, such as **1d 1h 1m 1s**.
Zero day/hour units are omitted; minutes and seconds remain, including **0m 0s**.

![Search comparing recorded Handle Time and Elapsed HT for active, Pending, closed, and unavailable-history examples](https://mintcdn.com/cxp/sTvyAxtCMQDKa5Vp/assets/screenshots/elapsed-handling-search.png?fit=max\&auto=format\&n=sTvyAxtCMQDKa5Vp\&q=85\&s=facb17a35735ad8bc10302154ede9e22)

At this Search cutoff, active agent work has 3m 30s elapsed, Pending work has 5m 0s, and closed work has 2m 0s. Each retains a completed Handle Time of 2m 0s. The fourth conversation has no recorded Handle Time and an elapsed fallback of zero.

### Filter with seconds

Add **Handle Time** or **Elapsed HT** using the filter controls, choose a
comparison, enter **seconds**, and select **Apply**. The same numeric controls
work in Search, Views, and Drilldown.

| Comparison | Example | Matches |
| - | - | - |
| Is equal to | `120` | Exactly two minutes |
| Is at least | `300` | Five minutes or more |
| Is at most | `60` | One minute or less |
| Is between | `60` and `300` | From one through five minutes, including both boundaries |

Combine handling filters with Status, Assignment, Team, Category, Tags, and date
criteria. For example, **Status = Open** with **Elapsed HT at least 300** finds
Open conversations with at least five minutes of eligible agent responsibility
at the calculation cutoff. Without the Status filter, completed or Pending
conversations can also match.

![Handle Time numeric filter with equality, minimum, maximum, and between comparison choices](https://mintcdn.com/cxp/sTvyAxtCMQDKa5Vp/assets/screenshots/handling-time-numeric-filter.png?fit=max\&auto=format\&n=sTvyAxtCMQDKa5Vp\&q=85\&s=7b0e2b741737d895f5bc49d568c345a5)

Handling-time comparisons use seconds, with inclusive minimum, maximum, and range boundaries.

Use these numeric filters for duration comparisons. A numeric keyword can also
match an elapsed value, but searches across other conversation content as well.

### Export a search

Select **Export** to download up to **500** matching conversations as CSV. Its
standard columns include Handle Time and Elapsed HT in numeric seconds,
regardless of which columns are visible. Elapsed values use the result's cutoff;
refresh first when you need a new calculation.

For the rest of the Search controls, see [Searching conversations](https://docs.cxp.crescendo.ai/capabilities/searching-conversations.md).

## Save a handling-time View

1. In Search, configure the handling-time threshold and any Status, Assignment,
   or date filters needed for your queue.
2. Show Handle Time and Elapsed HT if you want both in the saved table.
3. Select **Save as View**, enter a name, and save the personal View.
4. Open it from **Conversations**. Its saved criteria and presentation are reused;
   its results use the current calculation cutoff.

Authorized administrators can configure the same criteria in a shared View.
Saved filters and columns make a repeatable review queue; they do not turn the
list into a continuously ticking timer. See [Using Views](https://docs.cxp.crescendo.ai/capabilities/using-views.md) for
editing, sharing, and permission details.

![Saved View with an elapsed handling threshold and Handle Time and Elapsed HT columns](https://mintcdn.com/cxp/sTvyAxtCMQDKa5Vp/assets/screenshots/elapsed-handling-view.png?fit=max\&auto=format\&n=sTvyAxtCMQDKa5Vp\&q=85\&s=797fe44981e146dc862aa783fad389c9)

A saved handling-time View keeps its threshold and optional duration columns while recalculating results when opened.

## Compare handling in Drilldown reports

### Compare recorded AHT

Open **Reporting > Drilldown Reports**, set your conversation filters, and
choose **Group By** and **Split By** properties. **AHT** appears after **Avg TTA**
and describes recorded agent Handle Time for each row's conversations.

For example, one category has recorded values of `0`, `60`, and `120` seconds:
its AHT is **60 seconds**. Another has one value of `90,061` seconds and two
missing values: its AHT is **90,061 seconds**. Across all six conversations,
the four usable values average **22,560.25 seconds**. Averaging the two category
averages would produce the wrong answer.

![Category Drilldown report showing AHT beside other metrics and conversation counts split by status](https://mintcdn.com/cxp/sTvyAxtCMQDKa5Vp/assets/screenshots/drilldown-category-status-demo.png?fit=max\&auto=format\&n=sTvyAxtCMQDKa5Vp\&q=85\&s=b99a41f9e5a481f187e0c8324dce2137)

AHT reflects the conversations in each category. Missing Handle Time values remain outside the average, while recorded zeroes count.

### Group by Elapsed HT

Choose **Elapsed HT** in **Group By** or **Split By** to compare current elapsed
values at the report's fixed cutoff. It groups exact whole-second values;
it does not automatically create minute bands. Apply numeric filters when you
want to focus on a duration range. The zero group can include unavailable
calculations as well as measured zeroes.

Selecting a count opens Search with that row or cell's conditions and the same
calculation cutoff. This lets you inspect the conversations behind a result.

![Drilldown report grouped by exact Elapsed HT seconds and split by conversation status](https://mintcdn.com/cxp/sTvyAxtCMQDKa5Vp/assets/screenshots/elapsed-handling-drilldown.png?fit=max\&auto=format\&n=sTvyAxtCMQDKa5Vp\&q=85\&s=687be08bb33d2c6ee741f1a905122f14)

Elapsed HT can be used directly for numeric grouping, without Custom Dimension setup.

### Export and investigate

**Export > Excel** includes all returned rows, hierarchy levels, metrics, and
split counts. AHT remains numeric seconds; rounding is only for its duration
display. Collapsed rows and the local row-label filter do not remove data from
the workbook.

**Ask Analyst** is unavailable when a report uses Elapsed HT in an enabled
filter, grouping, or split. Numeric keywords can also make the action unavailable.
Recorded AHT alone does not prevent using Analyst, and report exports remain
available. See [Drilldown reports](https://docs.cxp.crescendo.ai/capabilities/drilldown-reports.md) for the complete workflow.

## Read Dashboard handling metrics

Open **Reporting > Dashboard** and choose your conversation population. The
**Agent Handle Time** card shows AHT, **Minimum HT**, and **Maximum HT** for that
population. Minimum and maximum refer to the shortest and longest individual
conversation values, not to daily or weekly averages.

The **AHT over time** chart follows **CSat over time**. Its **Overall AHT** badge
summarizes the selected population. Each **AHT** point averages recorded Handle
Time for conversations created in that time bucket. A bucket
without usable values has no measured AHT; recorded zeroes are included.

![Dashboard metric cards including Agent Handle Time average, minimum, and maximum](https://mintcdn.com/cxp/x_BqtB9PIAExyS1x/assets/screenshots/dashboard-handling-time.png?fit=max\&auto=format\&n=x_BqtB9PIAExyS1x\&q=85\&s=a25ee42ac928f6074451983df080387b)

Dashboard shows recorded AHT and the shortest and longest conversation values for the selected population.

## Choose dates and interpret results

Date filters select **which conversations** enter a result. They do not limit
each conversation's handling total to work performed during those dates.

Search, Views, and Drilldown use their configured Created or Updated criteria.
Dashboard selects and groups conversations by **creation date**. For example,
a conversation created on Monday and handled again on Tuesday still belongs
to Monday's Dashboard bucket, with its cumulative recorded Handle Time.

Review the date range and timezone before comparing reports. A saved View made
from a Drilldown count retains that cell's resolved date range; change it to a
relative range when you want a rolling review queue. Search updates can lag
recent conversation changes, and separately refreshed pages can use different
cutoffs. Refresh before comparing active work.

## Guidance for administrators

* Agree when your team uses **Pending** and which waiting party and reason to
  record. Those choices explain pauses in the history; Pending time is excluded
  regardless of the selected reason.
* Set shared View thresholds in seconds and include the relevant conversation
  status. For example, an elapsed threshold without Open status also finds
  Pending or completed conversations.
* Compare AHT for similar conversation populations, with the same date rules
  and filters. Inspect the underlying conversations when a category changes.
* Keep missing values distinct from measured zero. Older or incomplete history
  can affect the number of conversations contributing to an average.
* Use [Agent Statuses Reporting](https://docs.cxp.crescendo.ai/capabilities/agent-statuses.md) for availability and
  [Agent Workload](https://docs.cxp.crescendo.ai/agent/search-and-analytics.md#agent-workload) for current work.
  Conversation handling measures answer a different question: how long
  responsibility remained with AI, a team, or an individual agent.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.