Trader Retention and Churn Response Plan Template
A fill-in churn response plan for brokerages: signals, lifecycle stages, owner, channel, timing, message intent and the metric that proves it worked.
- Who it is for
- Retention, account management and ops leads at forex and CFD brokerages who own the funded book.
- Time to complete
- 60 minutes
Most brokerages notice churn when the account is already dormant and the trader has stopped reading emails. This template moves the response earlier. You write down the signals your MT4, MT5, CRM and payment data already produce, decide which lifecycle stage each one belongs to, and assign every signal an owner, a channel, a response time, a message intent and one success metric. Fill the tables, paste them into your CRM as rules, and the retention team runs the same plan whether the trader is 3 days or 3 months from leaving.
Churn signals and where they come from
A signal is a change in behaviour your systems can detect without anyone reading a report. Fill in the source and threshold for each one. If you can't name a source, the signal doesn't exist yet and the row stays out of the plan until it does.
Confirm every threshold is read from the trader's own baseline where the table says so, not from a book-wide average
A scalper who drops from 60 trades a week to 20 has a problem. A swing trader who places 4 trades a month is fine at 4. Book-wide thresholds flag the wrong people.
Set the polling interval per source: platform events in near real time, CRM and helpdesk at least hourly, document expiry daily
Platform ____ / CRM ____ / Compliance ____
Decide which signal wins when two fire on the same account within 24 hours
Our default order: complaint first, then stop-out, then withdrawal, then everything else. A trader who just complained about execution should not receive a deposit nudge that afternoon.
Write the dedupe rule so one trader receives one response per signal per ____ days, not one per polling run
Exclude accounts flagged by compliance, risk or fraud review from every automated response
Those accounts go to the compliance owner in the escalation section and nowhere else.
| Signal | Source system | Threshold (yours) | Severity |
|---|---|---|---|
| Login gap | MT4 / MT5 manager API, last login timestamp | No login for ____ days | Low until ____ days, then medium |
| Trade frequency drop | Trading platform, closed trades per week | Weekly trades fall below ____ % of the trader's own 8-week average | Medium |
| Balance drawdown | Trading platform, equity vs peak | Equity down ____ % from 30-day peak | Medium |
| Margin call or stop-out | Trading platform event log | Any stop-out event | High |
| Partial or full withdrawal | Back office / PSP withdrawal record | Withdrawal above ____ % of balance, or balance below ____ after withdrawal | High |
| Deposit abandoned or failed | Cashier analytics, PSP decline webhook | Cashier opened, no successful deposit within ____ hours | Medium |
| Support complaint or dispute | Helpdesk, CRM ticket type | Any ticket tagged complaint, execution, slippage or withdrawal delay | High |
| Email or SMS opt-out | Marketing platform unsubscribe event | Any unsubscribe | Medium, and remove from marketing channels the same day |
| KYC or document expiry | Compliance system, document valid-to date | Document expires within ____ days | Low, becomes high on expiry |
| Demo not funded | CRM registration and deposit records | Demo active for ____ days with no live deposit | Low |
Lifecycle stages and the exit point in each
Every trader sits in one stage at a time. Define each stage by data you can query, name the usual exit signal, and set the response tier. The same signal gets a different response at different stages.
Pick one dormancy definition for the whole company and write it in the table
If marketing says 60 days and finance says 120, the dormant count is wrong in every report. One number, one owner.
Store the stage as a CRM field that updates from the definitions above, so a person never has to decide which stage a trader is in
CRM field name: ____
Draw the line between this plan and your reactivation campaign: retention responses stop the day an account turns dormant
Dormant accounts belong to the reactivation call cadence template. Running both on the same trader doubles the call volume and halves the trust.
Record how many accounts sit in each stage today, before the plan runs, so you have a baseline to compare against next quarter
Unfunded ____ / Active ____ / Declining ____ / Dormant ____
| Stage | Definition (fill in) | Usual exit signal | Response tier |
|---|---|---|---|
| Registered, not funded | Live account opened, no deposit, ____ days since registration | Demo not funded, deposit abandoned | Automated call or SMS, one owner for exceptions |
| First 30 days funded | First deposit within the last 30 days | Login gap, stop-out, failed second deposit | Priority: named account manager for high severity, automated for the rest |
| Active | At least ____ closed trades in the last 30 days and a login in the last ____ days | Trade frequency drop, drawdown, complaint | Automated first touch, human on high severity |
| Declining | Trade frequency below ____ % of the trader's baseline for ____ consecutive weeks | Withdrawal, opt-out, login gap | Account manager call within the response time in the matrix |
| Dormant | No trade for ____ days and balance above ____ | Full withdrawal, document expiry | Reactivation campaign, not the retention plan |
| Closed or withdrawn | Balance at zero after withdrawal, or account closure requested | None | Exit survey only, then suppression until re-consent |
Response matrix: owner, channel, timing, intent
This is the plan. One row per signal, filled in for your team. Timing counts from the moment the signal fires, in the trader's local time and inside the calling window. Owners are roles, not names, so the plan survives staff changes.
Choose the channel by what the response needs, not by what's cheapest: a stop-out gets a person, a login gap gets an automated call
An AI voice agent at $0.35 per minute all-inclusive makes calling every medium signal affordable. It doesn't make a margin-call conversation something to automate.
Set the response time per row and make it a CRM task deadline, so a missed response shows up as an overdue task rather than a lost trader
Give every automated call a live handoff path to the owner in the same row
Topcalls hands the call to a person during the call when the trader asks for one or when the script detects a complaint. The human handoff workflow template covers the routing.
Cap total voice contacts per trader per month across every row
Max calls per trader per 30 days: ____
Send the outcome, transcript and next step to the CRM contact record the moment each call ends
Topcalls pushes call outcomes to the CRM through Integrations, which connects to 5,000+ tools, so the account manager sees the automated call before they pick up the phone.
| Signal | Owner | Channel | Respond within | Message intent |
|---|---|---|---|---|
| Login gap (low) | Automated | Email, then SMS | ____ days after threshold | Reminder of what's in the account and one useful thing that changed on the platform |
| Login gap (medium) | Automated voice, account manager on connect request | AI voice call | ____ hours | Check in: is anything blocking access, does the trader want a walkthrough |
| Trade frequency drop | Retention team | AI voice call, human follow-up on request | ____ hours | Ask what changed. Listen for market view, execution issue, life event. No pitch. |
| Balance drawdown | Account manager | Human call | ____ hours | Service call: risk settings, education resources, no encouragement to deposit or trade more |
| Margin call or stop-out | Account manager | Human call | ____ hours, same working day | Service call. Explain what happened, confirm the trader understands margin, offer risk tools. |
| Partial withdrawal | Account manager | Human call or AI voice call | ____ hours | Confirm the withdrawal is processing, ask if anything prompted it, nothing else |
| Full withdrawal | Account manager | Human call | ____ hours | Exit conversation. Capture the reason, close cleanly, ask permission for future contact. |
| Deposit abandoned or failed | Automated voice, payments team on escalation | AI voice call, SMS retry link | ____ minutes | Find the blocker: method, limit, verification. See the deposit follow-up workflow. |
| Complaint or dispute | Support lead | Human call | ____ hours | Acknowledge, own the fix, give a date. Never argue execution on the call. |
| Opt-out | Automated | None for marketing. Service messages only. | Same day | Suppress from marketing channels, keep transactional and regulatory notices |
| Document expiry | Automated voice, compliance on failure | AI voice call, then email | ____ days before expiry | Which document, how to upload it, what happens to trading if it lapses |
| Demo not funded | Automated | AI voice call | ____ days after demo start | Ask what the trader wants from the demo, offer a platform walkthrough, no deposit pressure |
Message intent and script boundaries
Intent is what the call is for in one sentence. Boundaries are what the call must not do. Write both before anyone drafts a script, and hand both to compliance with the script.
Write the intent for each response as one sentence starting with a verb
"Find out why trading stopped and remove the blocker if there is one" is an intent. "Re-engage the client" is not, because nobody can tell whether the call did it.
Intent for your highest-volume signal: ____
Open every call with the brokerage name, the reason for the call in plain words, and the automated disclosure where the jurisdiction requires it
A trader who hears "I'm calling because your account showed a stop-out yesterday" knows the call is real. Vague openers sound like the scam calls traders already get.
Ban deposit prompts on service responses: drawdown, stop-out, complaint, withdrawal
Asking a trader who just lost money to deposit more is the fastest route to a complaint and, under FCA financial promotion rules and MiFID II conduct requirements, a script review. Confirm the boundary with your compliance officer.
Keep any offer, bonus or fee change out of every script unless compliance has approved that exact wording in writing for that jurisdiction
Approved offers on file: ____
Give each call one question the trader can answer in a sentence, and one next step the caller can complete on the call
Walkthrough booked, document link sent, ticket opened, callback scheduled. If the next step needs another department, the call ends with a date, not a promise.
Write the stop phrases: what the trader says that ends the call and updates the record
"Don't call me", "I've moved to another broker", "I'm making a complaint" and "I want to close my account" each map to an outcome code and a suppression or escalation rule.
Record the language the trader signed up in and run the call in that language
Topcalls runs calls in 32 languages. A retention call in the wrong language is a churn signal of its own.
Owners, response times and escalation
Every owner in the matrix needs a backup, a working window and a rule for what they pass upward. Fill this in per role.
Name the role, the backup role and the working hours for each owner in the matrix
Account manager: backup ____, hours ____
Set the escalation trigger: a response overdue by ____ hours moves to the backup, overdue by ____ hours moves to the retention lead
Route complaints, regulator mentions, fraud flags and disputes to the support lead or compliance officer only, never to a sales-facing role
Define what an automated call escalates live: request for a person, complaint language, mention of a regulator, distress, or a question outside the script
Give every escalation the transcript, the signal that fired, the trader's stage and the last three outcomes, so the human doesn't start the story again
Set the weekly review owner for overdue responses and for signals that fired but produced no response
Review owner: ____, day: ____
Success metric per response
One metric per row, measured in a fixed window after the response. Targets are yours to set from your own baseline; write the number in and revisit it after the first month.
Measure each metric against a holdout of ____ % of signals that get no response, so you know the response caused the outcome
Without a holdout, every trader who would have come back anyway counts as a win for the plan.
Track connect rate and cost separately from outcome: calls placed, calls connected, minutes, minutes x $0.35 for voice cost
Cost per retained account is voice cost plus human time divided by successes in the window. Compare it against your own average revenue per active account, which the dormant trader lifetime value post walks through.
Report the numbers by stage as well as by signal, so you can see whether first-30-day responses or declining-stage responses are doing the work
Move any target that's been missed for ____ consecutive weeks to the review sheet as a script or timing question, not a target change
| Response | Success metric | Window | Target (yours) |
|---|---|---|---|
| Login gap call | Logged in and placed at least one trade | 14 days | ____ % |
| Trade frequency drop | Weekly trades back above ____ % of baseline | 30 days | ____ % |
| Drawdown or stop-out call | Account still funded, no complaint filed | 30 days | ____ % |
| Partial withdrawal call | No further withdrawal, still trading | 30 days | ____ % |
| Full withdrawal call | Exit reason captured and coded | Same call | ____ % |
| Deposit abandoned or failed | Successful deposit on the same account | 48 hours | ____ % |
| Complaint call | Ticket resolved and trader confirms it | ____ days | ____ % |
| Document expiry call | Document uploaded before expiry | Before expiry | ____ % |
| Demo not funded | First live deposit | 30 days | ____ % |
Compliance checks before the plan runs
These are review items with a sign-off, not legal conclusions. Walk them with your compliance officer or counsel and record who signed each one.
Record the lawful basis for each response type per jurisdiction: service calls about the trader's own account versus marketing calls, under GDPR for EU and UK residents and TCPA and TSR for US numbers
The line moves the moment a script mentions a deposit, an offer or a product. Mark each row in the matrix as service or marketing and get both categories reviewed.
Signed off by: ____
Screen every number against your internal do-not-call list and the relevant national registry before each run, and apply opt-outs to marketing responses the same day
Confirm the automated-call disclosure and the recording notice at the start of every AI voice call, worded per jurisdiction
The AI call disclosure checklist has the wording by region.
Send every script that mentions trading, risk, deposits or offers through financial promotion review where FCA rules or the local equivalent apply
Scripts reviewed: ____ of ____
Set the calling window per trader timezone and the retention period for recordings and transcripts under your written policy
Window ____ to ____, retention ____ months
Confirm no script asks for card numbers, passwords, platform credentials or full account numbers, and that the agent can't be talked into it
Log the reason for contact on every call record so a data subject request or a regulator query can be answered from the CRM
Monthly review sheet
Fill this in on the first working day of each month for the previous month. Change one thing per month so you can tell what moved the numbers.
Retire any signal that fired more than ____ times with a success rate under ____ % for two months running, or change its threshold
Add a signal only when you can name its source, its threshold and its owner in the same meeting
Send complaint and opt-out counts caused by a response to compliance with the script attached, even when the numbers are small
Compare cost per retained account against your own revenue per active account and cut any row where the maths doesn't hold
| Question | Where to look | This month |
|---|---|---|
| Signals fired, by type | Signal log or CRM rule history | ____ |
| Responses sent on time, by owner | CRM task report, overdue filter | ____ % |
| Signals with no response | Signals fired minus responses sent | ____ |
| Accounts per stage at month end vs last month | CRM stage field | ____ |
| Accounts that moved from declining to dormant | Stage change log | ____ |
| Best and worst success metric vs target | Metrics table | ____ / ____ |
| Voice minutes and cost | Campaign dashboard, minutes x $0.35 | ____ min, $ ____ |
| Escalations by reason | Escalation log | ____ |
| Opt-outs and complaints raised by a response | Helpdesk, unsubscribe events tagged to a response | ____ |
| One change for next month | This sheet | ____ |
How to use this
- 1
Fill the signals table with the sources you actually have. Skip any signal you can't detect today.
- 2
Agree one dormancy definition across marketing, finance and ops and write it in the lifecycle table.
- 3
Complete the response matrix row by row: owner, channel, response time, intent.
- 4
Write the intent and boundaries for each script before anyone drafts the words.
- 5
Walk the compliance section with your compliance officer and record each sign-off.
- 6
Set targets from your own baseline, hold out a share of signals, and fill the review sheet monthly.
Next step
We map your churn signals to the calls an AI voice agent can take, size the declining and dormant segments from your CRM, and scope a pilot on one response row.
Book a 30-minute callRead next
Related resources
Dormant Trader Segmentation Plan Template
Fill-in template to split a dormant trader book by dormancy age, deposit history, activity signals and region, score each segment and pick its message.
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.
Forex Reactivation Call Cadence Template
Call cadence template for dormant trader reactivation: calling windows by region, a four-attempt schedule, retry rules per outcome and stop conditions.