AI Calling Campaign Monitoring Checklist
Real-time checklist for watching a live AI calling campaign at a brokerage: connect rate, drops, transfers, sentiment flags, cost pacing and when to stop.
- Who it is for
- Broker ops leads, retention managers and whoever is on shift while an outbound AI campaign is live.
- Time to complete
- 20 minutes setup, 10 minutes per check
This checklist is what the person on shift runs while an AI calling campaign is dialing dormant traders, unfunded registrations or KYC leads. It covers the numbers to read every half hour, the calls to listen to, the spend to reconcile, and the exact conditions under which the campaign pauses. Work through it once before the first dial to set the thresholds, then repeat the live sections on a timer. By the end of a shift you'll have a log a retention head, a compliance officer or a vendor can act on, instead of a vague sense that the campaign went fine.
Set thresholds before the first dial
Every number in the live sections is compared against a threshold you wrote down beforehand. Decide them now, while nobody is dialing and nobody is nervous.
Name the person on shift for each dialing window and the person they escalate to.
One name per window, with a phone number. If the escalation contact is in a meeting, the campaign keeps dialing while a problem grows.
On shift: ________ Escalation: ________
Record the list being dialed, its size, the countries on it and the date it was last screened against do-not-call and internal opt-out lists.
If the screen is older than your compliance officer allows, this is where you find out. Don't launch on a stale screen.
List: ________ Size: ______ Screened: ________
Write down the floor for connect rate and answer rate, and the ceiling for drop rate, transfer failure rate and opt-out rate.
Take them from your pilot or your last human campaign on a similar list, not from a vendor deck. First campaign with no history: use the first hour as the baseline and set the thresholds at the end of it.
Connect floor: __ % Drop max: __ % Opt-out max: __ %
Confirm the dialing window in each trader's local time zone, not the office's.
A list with UK, Cyprus and Dubai numbers has three windows. The platform should hold a number until its own window opens rather than dialing it because the desk is open.
Set the maximum spend for the shift and the maximum spend for the campaign.
At $0.35/min, billed by the second, spend is talk time times the rate. Work out the cap from the minutes you can afford, then set it in the platform so the campaign stops at the cap without anyone watching.
Shift cap: $______ Campaign cap: $______
Dial a warm-up batch of 20 to 50 numbers and listen to at least three full calls before releasing the rest of the list.
Most launch-day failures show in the first twenty calls: a wrong greeting, a broken transfer number, a disclosure that got cut. Fifty calls cost minutes; a bad hour on the full list costs a segment.
Check that the CRM is receiving call outcomes from the warm-up batch before scaling up.
Open three trader records and confirm the disposition, recording link and next action landed. A campaign that dials cleanly but writes nothing back has to be redone.
Connect and answer rate
Read these every 30 minutes for the first two hours, then hourly. Compare against the thresholds from the previous section, and against the same hour yesterday if the campaign has been running.
Record dials attempted, calls answered and calls that reached a real conversation for the period.
Keep the three apart. Answered includes voicemail and instant hang-ups; a conversation means the trader spoke back after the greeting. Ops teams that track only "answered" think a campaign is working when it's talking to voicemail.
Dials: ______ Answered: ______ Conversations: ______
Compare the answer rate to the floor and flag it if it falls under for two consecutive checks.
One bad half hour is lunch. Two in a row is usually a carrier issue, a flagged caller ID or the wrong time zone on part of the list.
Check answer rate by country and by segment as well as for the whole list.
A blended 28% can hide one country at 6%. Split by the segments you built the list from: months dormant, last deposit size, language.
Look at the share of answered calls that end within five seconds.
A rising instant hang-up rate points at the caller ID, the opening line or a voice that doesn't fit the market. Listen to five of them before deciding which.
Confirm the caller ID being shown is the one you registered and it hasn't been flagged as spam by a carrier.
Call one of your own numbers on each carrier the list uses and read what the phone shows. A "Likely spam" label explains a sudden answer-rate drop faster than any dashboard.
Check retries are spacing correctly and not re-dialing no-answers inside the same hour.
Pull up one number that didn't answer and look at its next scheduled attempt. Tight retries burn the list and annoy traders who were simply at work.
Note the answer rate at the top and bottom of each hour and adjust the dialing window if one hour barely connects.
Move volume into the hours that connect. That's a planning change, so log it and tell the escalation contact rather than making it silently.
Drops, silence and technical failures
A drop is a call that ended without either side choosing to end it. These are platform or telephony problems and they need a different response from a low answer rate.
Record the number of calls that dropped mid-conversation for the period and compare it to the ceiling.
Most platforms flag these as a distinct end reason. If yours doesn't, filter for conversations under 20 seconds that had trader speech and no farewell.
Drops: ______ Drop rate: ____ %
Listen to two dropped calls and note whether the audio was cut by the network, the agent went silent or the trader hung up on a pause.
The three have different fixes: carrier, platform, script. Don't report a drop rate without saying which one you heard.
Check the average response delay between the trader finishing a sentence and the agent replying.
Topcalls runs under 500 milliseconds. If your platform reports a rising delay, traders start talking over the agent and calls degrade before they drop.
Look for calls with more than a few seconds of silence after the greeting.
Silence usually means the agent didn't detect speech, often on a noisy line or a speakerphone. A cluster of them in one country points at a telephony route.
Count failed dials that never rang: invalid number, carrier rejection, blocked route.
A spike in one country is a routing or number-format problem. Compare the failed numbers to the list file and confirm they were stored in E.164 with the country code.
Check concurrency is holding at the level you configured and no calls are queuing behind it.
A campaign set to 40 concurrent calls that runs at 12 finishes the list on a different day and at a different cost per hour. Read the live figure, not the setting.
Confirm recordings and transcripts are being written for every completed call.
Open the last five completed calls and check each has a recording and a transcript. A gap here is a compliance problem for MiFID II record-keeping as much as an ops one, so raise it the same hour.
Transfers and human handoff
The handoff is where a warm trader is won or lost. Watch it as a separate funnel: offered, accepted, connected, answered by a human.
Record transfers offered, transfers accepted by the trader and transfers that reached a live agent.
The gap between accepted and reached is your desk's problem, not the AI's. If traders accept and nobody picks up, stop offering transfers until the desk is staffed.
Offered: ______ Accepted: ______ Reached: ______
Check the wait time for transferred traders and set a ceiling the desk must hold.
A trader who agreed to talk about funding and then waited two minutes on hold has been talked out of it. If the wait climbs, lower concurrency instead of losing the transfers.
Confirm the handoff summary reaches the human agent before the trader does.
Sit with one agent and watch a transfer arrive. They should see the trader's name, account state, what the AI already said and why the transfer happened. If they're asking the trader to repeat everything, fix the CRM push before the next window.
Listen to one completed transfer and one failed transfer every hour.
A failed transfer with a trader still saying yes on the line is the most expensive call of the day. Note the failure reason: no agent available, wrong queue, call dropped during bridge.
Check that callbacks requested during calls are landing as tasks with a time, an owner and a phone number.
Open three callback records. A callback with no time is a lead nobody rings.
Confirm the desk's schedule matches the dialing window for every country on the list.
Transfers offered at 18:30 local to a desk that closed at 18:00 will all fail. Either stop offering transfers outside desk hours or switch the agent to booking callbacks.
Sentiment, opt-outs and complaint flags
Numbers tell you the campaign is running. Only listening tells you how it sounds to a trader. Budget the listening time; it's not optional on a live campaign to financial customers.
Listen to five random completed calls per hour for the first two hours, then three per hour.
Random, not the best ones the dashboard surfaces. Pick by call ID or time stamp so you hear the ordinary calls.
Record every opt-out or "stop calling" and confirm each one is written to the internal suppression list within minutes, not at end of day.
Pull one opted-out number and search for it in the calling platform and the CRM. If it's still dialable in either, pause the campaign and fix the sync before continuing.
Opt-outs this period: ______ Verified suppressed: ______
Flag any call where the trader asks whether they're speaking to a machine and check the agent answered plainly.
The disclosure wording was signed off by compliance before launch. What you're checking live is that the agent actually says it when asked and doesn't dodge. Send any dodge to compliance the same day.
Count calls where the platform's sentiment or frustration flag fired and listen to at least two.
Frustration flags cluster around one cause: a repeated question, an offer the trader thinks is misleading, a name pronounced wrong. Find the cause, don't just log the count.
Note any trader who mentions a complaint, a regulator, a lawyer or a withdrawal problem, and route the recording to compliance before the next check.
These aren't reactivation leads. They're service cases with a recording attached, and the sooner compliance hears it the better the outcome.
Check the agent never states returns, guarantees or anything about a specific instrument the script didn't allow.
Listen for improvised answers to "is it a good time to trade gold". The script should redirect; if it doesn't, that's a stop trigger under FCA financial promotion rules and their equivalents, and your compliance officer decides whether calls resume.
Log the three most common trader objections you heard this shift, with one example each.
"I lost money last time", "I moved to another broker", "I don't remember signing up" each need a different script branch. The shift log feeds the next script revision.
Cost pacing and spend
Spend is minutes times rate, so pacing is about minutes. Reconcile once an hour against the caps you set before launch.
Record total talk minutes for the period and multiply by the per-minute rate to get spend so far.
With Topcalls the rate is $0.35 per minute, all-inclusive and billed by the second. 400 conversations averaging 2 minutes 30 seconds is 1,000 minutes, or $350. Write your own figures beside it.
Minutes: ______ x rate: $______ = spend: $______
Compare spend so far to the shift cap and project where it lands at the end of the window at the current pace.
Pace is spend divided by hours elapsed, times hours left. If the projection passes the cap, lower concurrency now rather than hitting the hard stop mid-conversation.
Work out cost per conversation and cost per transfer reached, and compare them to the pilot.
Cost per dial always looks cheap. Cost per transfer is the number your retention head will ask about, and it moves when answer rate or handoff success moves.
Cost per conversation: $______ Cost per transfer: $______
Check average conversation length against the pilot and flag it if it has moved by more than a minute either way.
Shorter usually means traders are hanging up early, which sends you back to the connect-rate section. Longer usually means the agent is looping on an objection, which is a script fix.
Confirm the spend cap in the platform still matches the cap on this sheet.
Caps get raised during a good hour and never lowered again. Read the setting, don't trust memory.
Note the minutes spent on voicemail, no-answer and failed dials separately from conversation minutes.
Voicemail drops are short but they add up on a big list. If they're eating a large share of minutes, review the voicemail detection setting and whether a message should be left at all.
Stop and pause triggers
A trigger is a condition, a required action and a person who can restart. Fill the table before launch and keep it in front of whoever is on shift. Pausing is cheap; a bad hour on a broker's client base isn't.
Pause the campaign the moment any single opted-out number is found dialable in the platform or the CRM.
This one doesn't wait for a second check. Restart only after the suppression sync is verified on the specific number and on a sample of ten others.
Pause if the agent is heard giving investment advice, stating returns or skipping the AI disclosure on request.
Send the recording to your compliance officer. They decide whether it's a script fix and a restart or a campaign stop, and they sign the restart.
Pause if the drop rate stays over the ceiling for two consecutive checks.
Contact the platform or carrier with the call IDs and the time window. Restart when a warm-up batch of 20 calls comes back clean.
Pause if transfers are accepted but fewer than half reach a human for a full check period.
Either staff the desk or switch the agent to callback booking. Restart when the desk confirms coverage.
Pause if projected spend passes the campaign cap or the CRM stops receiving outcomes.
Both are silent failures that cost money without producing a lead. Restart needs the escalation contact's sign-off on a new cap or a verified CRM write.
Pause if answer rate on any country falls under half its floor for two checks.
Check the caller ID label on that carrier and the local time before restarting. Dialing harder into a flagged number makes the flag permanent.
Fill the table with your own thresholds and owners.
Completed by: ________ Date: ________
| Trigger | Threshold | Action | Who restarts |
|---|---|---|---|
| Opted-out number still dialable | Any single case | Pause, verify suppression sync | Compliance officer |
| Agent gives advice, states returns or dodges disclosure | Any single call | Pause, send recording to compliance | Compliance officer |
| Drop rate over ceiling | ____ % for 2 checks | Pause, open ticket with platform or carrier | Ops lead |
| Transfers accepted but not reached | Under ____ % reached for 1 check | Pause transfers, switch to callbacks | Desk manager |
| Projected spend over cap | $______ | Lower concurrency or pause | Escalation contact |
| Answer rate collapse in one country | Under ____ % for 2 checks | Pause that country, check caller ID | Ops lead |
| CRM not receiving outcomes | Any gap over ____ minutes | Pause, verify write on 3 records | Ops lead |
End-of-shift log and handover
Ten minutes at the end of the window. The log is what the next shift, the retention head and the vendor read; keep it factual and short.
Record the shift totals: dials, answered, conversations, transfers reached, callbacks booked, opt-outs, drops, minutes and spend.
Same nine numbers every shift, in the same order, so the week's log reads as a table.
Dials __ Conv __ Xfer __ Opt-out __ Drop __ Min __ $__
List every trigger that fired, the time, what was done and who restarted the campaign.
A trigger that fired and wasn't logged will fire again next shift with nobody knowing it's the second time.
Write down every setting changed during the shift: concurrency, dialing window, retry spacing, spend cap, script version.
Tomorrow's results are only comparable if you know what changed today.
Attach the call IDs of the five calls worth hearing: two good, two bad, one odd.
The retention head won't listen to fifty. Five picked with a reason each gets listened to and acted on.
Note what the next shift should watch first and which thresholds, if any, should move.
Threshold changes are proposals here, decided by the escalation contact, not made in the log.
Send the log to the retention head, the compliance officer and the vendor contact before leaving.
Three recipients, one message, same evening. A log that sits in a folder until the weekly review has already cost a week of the same mistakes.
How to use this
- 1
Print it or open it beside the campaign dashboard. Fill the before-launch section once, with the escalation contact in the room.
- 2
Run the warm-up batch, listen to three calls, confirm CRM write-back, then release the list.
- 3
Set a timer. Every 30 minutes for two hours, then hourly: read the connect, drop, transfer and cost sections and compare to your thresholds.
- 4
Listen on a schedule, not when something looks wrong. The sentiment section tells you how many calls and how to pick them.
- 5
Act on triggers the moment they fire. The restart owner in the table is the only person who restarts.
- 6
Fill the shift log and send it the same evening. Use a week of logs to reset the thresholds and the script.
Next step
We'll walk through your dormant book, agree the thresholds and stop triggers for a pilot, and map how outcomes and opt-outs flow back into your CRM.
Book a 30-minute callRead next
Related resources
Outbound Calling Capacity Planning Worksheet
Worksheet for brokerages: size the dormant list, set the calling window, pick concurrency, and work out days to finish and the minutes budget.
AI Call Quality Scorecard
10-metric scorecard for AI calls at forex and CFD brokerages: definitions, a 1 to 5 scale, weights, auto-fail rules and a weekly review sheet.
AI-to-Human Handoff Workflow Template
A fill-in handoff workflow for AI voice calls to traders: trigger conditions, warm transfer vs callback, context passed, desk hours and fallbacks.