Skip to main content
Guides

Average Handle Time: How to Calculate AHT and Reduce It

The average handle time formula, why the same half hour can produce four defensible AHT numbers, what a good AHT looks like in real data, and how to lower it.

Average handle time is the average total time an agent spends on one contact: talk time, plus hold time, plus the after-call work that follows, divided by the contacts handled. In classic ACD reporting it is the total active time of every logged-in agent divided by the calls they answered, and it is another name for average service time (Gans, Koole and Mandelbaum, Telephone Call Centers: Tutorial, Review, and Research Prospects, Manufacturing and Service Operations Management 5, 2003).

AHT = (total talk time + total hold time + total after-call work) / contacts handled

The formula looks settled until you apply it. Which components your platform counts, and what it divides by, change the answer enough to matter. The ten ordinary calls further down this page produce four defensible average handle times between 3:15 and 4:12, and every one of them is arithmetically correct.

What is average handle time?

Average handle time, or AHT, is a measure of how long the work takes, not of how long callers wait. It covers the span an agent is occupied by one contact and nothing before the agent picked up. Queue time, ring time and time spent in the phone menu are all outside it, which is why a center can cut AHT while callers wait longer than ever.

It has one job it does well: capacity planning. Handle time is the service time in the queueing math that tells you how many people to put on the phones. Our Erlang C calculator for call center staffing is that calculation, and handle time is the input it is most sensitive to.

It has one job it does badly, which is judging people. A rep who takes longer to resolve something properly posts a worse AHT and a better outcome.

What is the average handle time formula?

Add every second your agents were occupied by contacts in the period, then divide by the number of contacts. Occupied means talk time, hold time while the agent held the line, and the after-call work the agent did once the caller hung up. The result is seconds per contact, usually reported as mm:ss over a 30 minute interval.

Worked from report totals for one half hour:

InputValue
Total talk time1,947 s
Total hold time265 s
Total after-call work310 s
Contacts handled10
AHT2,522 / 10 = 252.2 s, or 4:12

In a spreadsheet, keep the three component columns separate and sum them per row before you average, rather than averaging each component and adding the averages. The two give the same answer only when every call has a value in every component, which is almost never true: calls with no hold leave the hold column empty, and averaging that column across answered calls instead of across all calls shifts the total.

What counts inside handle time: talk, hold and after-call work

The research literature defines the three components tightly. Talk time is the time the agent spends speaking with the customer. Hold time is the time the agent put the customer on hold after service began, not the wait before anyone answered. Wrap, or after-call work, is the time the agent spends completing the service once the caller has hung up (Gans, Koole and Mandelbaum, 2003).

After-call work is where the disagreements live. A center that lets reps write their notes during the next lull records lower AHT than an identical center that holds reps in a wrap state until the notes are done, and the second center is doing the same amount of work. Neither is wrong. They are measuring different things with the same word.

Two components that people expect to find in there usually are not. Consult or conference time, when an agent pulls in a supervisor, is reported separately by some platforms and folded into talk time by others. Dialing and alerting time on outbound, the seconds between the dial and the connect, sits outside handle time in most reporting, which matters for outbound programs where dialing is a large share of the shift.

The same half hour, four different average handle times

Here are the ten contacts behind that 4:12. Call 10 was transferred, so two agents each logged part of it.

ContactTalkHoldAfter-call workTotal
Password reset95020115
Billing question1423525202
Hours and location6101576
Disputed charge870120951,085
Order status110020130
Appointment change781518111
Coverage question2054030275
Address update88022110
Refund request133025158
Escalation, transferred1655540260
Total1,9472653102,522

Four different definitions apply to that table, and someone will call each of them AHT:

DefinitionArithmeticResult
Average talk time only1,947 / 103:15
Talk and hold, no after-call work2,212 / 103:41
Talk, hold and wrap, per agent handling segment2,522 / 113:49
Talk, hold and wrap, per contact2,522 / 104:12

The spread is 57.5 seconds, about 30 percent, on one unambiguous set of calls. Nobody is reporting anything false. The fourth row counts the transferred escalation once, as one customer's problem. The third counts it twice, as two agents' work. Both are reasonable; they answer different questions, and a center that switches between them mid-quarter will see a trend that does not exist.

This is the thing to settle before you set a target. Pick the row that matches the decision you make with the number, write it down, and keep it.

Why your platform's AHT may not match the formula you were given

Platforms publish their own calculation logic, and it is not always the textbook one. Amazon Connect, for example, documents average handle time as the sum, per contact record, of agent interaction duration, customer hold duration, after contact work duration and agent pause duration, divided by the total number of contact records, excluding records where all four fields are null (Amazon Connect metric definitions, AWS documentation). Agent interaction time, reported on its own, explicitly excludes hold, after contact work and pause.

Set that against the ACD-report definition: total active time across every logged-in agent, divided by calls answered (Gans, Koole and Mandelbaum, 2003). Two differences there will change your number.

  • The denominator. One divides by contact records, the other by calls answered by an agent. In a center with transfers, consults and callbacks, those counts diverge.
  • A fourth component. Agent pause duration is in the first and absent from the second.

Neither one is the real AHT, because there is no real AHT. Before you compare your number to anybody else's, read your own platform's documented calculation and find out which components and which denominator went into it. If it does not publish the logic, export the raw call records for one half hour and rebuild the number by hand. You will either reproduce it, which tells you the definition, or you will not, which tells you rather more.

An average handle time definition spec sheet

Eight decisions determine your number. Settle each one in writing, then stop revisiting them, because every change resets your trend line to zero.

DecisionThe optionsWhy it moves the number
ComponentsTalk only; talk and hold; talk, hold and wrap; add agent pauseWrap alone was 12 percent of total handle time in the example above
DenominatorContacts handled; agent handling segments; contacts offered to an agentTransfers and consults make these diverge by the transfer rate
TransfersCount at the receiving agent only; at every agent; sum the segments into one contactChanged the example by 23 seconds per contact
Consult and conferenceInside talk time; reported separately; excludedA supervisor's time is either in your capacity model or missing from it
Short callsCount all; apply a minimum duration floor; exclude misdials and immediate dropsDead-air and wrong-number calls pull the average down with no work done
Interval and boundaries30 minutes, day, week; a call that crosses a boundary lands where it started or where it endedLong calls near a boundary distort the smaller interval
SegmentationCenter-wide; per call reason; per channel; per queue; per tenure bandCenter-wide AHT is the version that hides the most
ReaderCapacity planning only; also individual performanceDecides whether the number is safe to publish per agent

Fill that in once, store it next to the dashboard, and put the definition in the report header. The most common cause of an argument about AHT is two people reading two different numbers that share a label.

What is a good average handle time?

There is no derived answer, and the cross-industry benchmarks circulating online rarely name a sample, a definition or a year. What does exist is published figures from real centers, which are worth more as a reference point than a round number with no provenance.

Two useful ones come from the same review of operational data:

  • Twelve call centers run by a large United States health insurer: a daily average of 318 second AHT, with a 31 second average speed of answer, 91 percent agent utilization and 2.8 percent abandonment.
  • A large United States catalogue retailer in its 10:00 to 11:00am peak: 765 calls, service time of about 3.75 minutes with 30 seconds of after-call work, so roughly 4:15 of handle time, at about 65 percent utilization and an average speed of answer of about 1 second.

Both come from Gans, Koole and Mandelbaum, 2003. The two figures are 63 seconds apart, and the centers behind them are not comparable in the first place: health insurance coverage questions are harder than catalogue orders, and the two were running at utilizations 26 points apart. Which is the useful conclusion. A good AHT is one that holds steady or falls while your repeat contact rate, transfer rate and abandonment do not rise. Compare your AHT to your own AHT, segmented by call reason, and leave the industry average alone.

Why the average is not the typical call

Service times are not symmetric. In the research, the lognormal distribution fits them remarkably well, and the fit holds when service times are broken out by service type and by individual agent (Gans, Koole and Mandelbaum, 2003). Lognormal means right-skewed: a long tail of hard calls pulls the mean above the middle of the pack.

The ten calls above show it plainly. The mean is 252 seconds. The median is 144. Seven of the ten calls are shorter than the average. One contact, the disputed charge at 1,085 seconds, is 43 percent of all handle time in the interval, and removing that single call drops AHT from 4:12 to 2:40 without anybody working faster.

Two things follow from that. Report the median alongside the mean, and the 90th percentile too, because the tail is where your capacity actually goes. And treat a swing in AHT as a question about your call mix before you treat it as a question about speed, which means pulling the per-reason breakdown first.

How do you calculate weighted average handle time?

Weight each call reason's AHT by its volume, then divide by total volume. The arithmetic trap is averaging the reason-level AHTs directly, which treats a reason with 40 calls as equal to one with 420.

Call reasonCallsAHTHandle seconds
Order status420150 s63,000
Appointment change260120 s31,200
Billing question180300 s54,000
Disputed charge40780 s31,200
Total900179,400

The volume-weighted AHT is 179,400 / 900 = 199.3 seconds, or 3:19. The plain average of the four AHT figures is 337.5 seconds, or 5:38. That is 69 percent too high, and it would have you staffing for a center you do not run. Weight by volume whenever you roll reasons, channels, queues or sites into one figure.

How to reduce average handle time without breaking something else

Every lever that shortens a call can also shorten it in the wrong way. Pair each one with the metric that would catch the damage, and read them together.

LeverEffect on AHTThe metric that catches the damage
Screen pop: the caller's record on screen at connectRemoves the account-number exchange and the lookup. Research on CTI notes it reduces call duration and, applied uniformly, reduces variability in service times too (Gans, Koole and Mandelbaum, 2003)Repeat contact rate, in case the wrong record is being matched
Put the answers where the agent can reach themCuts hold time, which is usually the agent going to look something upTransfer rate, which rises when the answer still is not there
Move after-call work out of the wrap stateLowers reported AHT immediatelyNotes completeness, and occupancy, since the work did not disappear
Route by call reason so agents handle fewer typesLowers AHT per reason through familiarityService level: narrower skill groups pool worse and wait longer
Shorten verification and the opening scriptSaves 15 to 30 seconds on every callDisputed and reversed transactions, which is what verification is for
Take the shortest high-volume reasons off the human queueRaises human AHT while cutting total handle hoursTotal handle hours and per-reason AHT, not center-wide AHT
Set a center-wide AHT target per agentLowers the number fastTransfer rate and repeat contact rate, because the quickest way to end a call is to pass it on. What measurement does to the people being measured covers this

Work the list in that order. The first three take time out of the call without taking anything away from the caller. The last one is the one centers reach for first and the one that costs the most.

What happens to AHT when an AI agent takes part of the volume

Your human AHT goes up, and that is the expected result rather than a regression. AI agents take the short, repetitive, high-volume contacts first, so what stays in the human queue is the long and complicated end of the distribution. The average of what is left is higher by construction.

Run it on the mix above. Suppose an agent handles order status and appointment changes end to end, and the other two reasons stay with the team:

MeasureBeforeAfter
Calls to the human queue900220
Human AHT3:196:27
Human handle hours49.823.7
AHT of each remaining reason300 s and 780 s300 s and 780 s

Human AHT is up 94 percent. Handle hours are down 53 percent. Not one reason's AHT changed by a second. A center judging that change on center-wide AHT would conclude it had made things worse.

Before you route anything, then, freeze the per-reason breakdown, name the number you expect to move and where you will read it, and keep handle time segmented afterwards. Total handle hours and per-reason AHT will tell you what happened. Center-wide AHT will not.

What an agent can take end to end depends on the call type, and what AI agents handle in a call center has that by category along with where in your call flow an agent goes. If the comparison on your desk is an outsourcer rather than an AI agent, note that BPO contracts are usually billed per minute, which makes AHT the invoice: call center outsourcing versus AI agents works through both pricing models. And AHT is one number among five, so which call center metrics to track covers the set it belongs to and the catch metrics named above.

Frequently asked questions

What is average handle time?

Average handle time is the average total time an agent is occupied by one contact: talk time plus hold time plus after-call work, divided by contacts handled. It excludes everything before the agent answered, so queue time, ring time and time in the phone menu are not in it. It is the service time input to staffing calculations.

What is the average handle time formula?

AHT equals total talk time plus total hold time plus total after-call work, divided by the number of contacts handled in the period. Sum the three components per call before averaging rather than averaging each component separately, because calls with no hold or no wrap would otherwise be averaged over different denominators.

Does average handle time include after call work?

Usually yes, and that is the standard definition, but check your platform. Amazon Connect's documented calculation includes after contact work along with agent pause duration, while its separately reported agent interaction time excludes both. A center that lets reps write notes outside a wrap state will report lower AHT for identical work, so the only safe answer is the one in your own calculation logic.

What is the difference between average handle time and average talk time?

Average talk time counts only the conversation. Average handle time adds hold time and after-call work. In the ten-call example on this page the difference is 3:15 against 4:12, about 30 percent, so the two are not interchangeable. Talk time is useful for coaching conversations; handle time is what belongs in a capacity model.

What is a good average handle time for a call center?

There is no derived target, and benchmarks quoted without a sample or a definition are not worth using. Published operational data runs from about 255 seconds at a catalogue retailer to 318 seconds across twelve health insurer call centers, at utilizations 26 points apart (Gans, Koole and Mandelbaum, 2003). Judge your AHT against your own history, segmented by call reason, and only alongside repeat contact rate and transfer rate.

How do you reduce average handle time?

Start with the levers that remove work rather than rush it: put the caller's record on screen at connect, put the answers where the agent can reach them without holding, and check whether after-call work is being measured in a way that inflates the number. Then route by call reason. Setting a per-agent AHT target lowers the number fastest and tends to raise transfers and repeat contacts.

What is weighted average handle time?

It is AHT across a set of call reasons, channels or queues, weighted by each one's volume. Multiply each segment's AHT by its volume, sum, then divide by total volume. Averaging the segment AHT figures directly overstates the result whenever volumes are uneven: in the example above it gives 5:38 instead of 3:19.

Settle the definition before you set the target

Pull one half hour of raw call records, rebuild AHT by hand from the talk, hold and wrap columns, and compare it to what your dashboard says. If the two match you have found your definition. If they do not, you have found something more useful. Either way, fill in the spec sheet above, put the definition in the report header, and then segment by call reason before you decide anything is wrong.

To see which of your call reasons an AI agent could take, and what that would do to the numbers you report, book a demo and bring your top call types and your current handle times. We will show you which ones Telvana can handle, let you hear it take one, and walk through what would move in your reporting and what would not.

More guides

Put AI agents to work in your contact center.

Book a demo. We'll walk through your call types, show you which ones Telvana can take, and let you hear it handle one.

See pricing