iGaming Retention
Cost per reactivated player: the reactivation ROI maths
How to calculate cost per reactivated player and reactivation ROI: a worked example with real per-minute call prices, a holdout, bonus cost and sensitivity.

Cost per reactivated player = (call cost + bonus cost) ÷ incremental reactivated players, where incremental means depositors in the called group minus the depositors a holdout says you'd have had anyway. In the worked example below, 3,600 UK players called by AI cost about $1,137 in calls and $2,625 in bonuses, and brought back about 126 players who wouldn't otherwise have deposited. That's roughly $29.85 each, against $17.41 if you wrongly count every depositor. Bonuses, not calls, are most of the cost. So the biggest lever is who you call and what you offer them.
Most "reactivation ROI" content stops at a sentence: compare cost per reactivation with your cost of acquisition. That's the right comparison. But the number is easy to get wrong in three ways, and each one makes a campaign look better than it was:
- Counting players who would have come back anyway. Without a holdout, every organic returner is credited to the campaign.
- Leaving out bonus cost. Call cost is visible on an invoice. Bonus cost sits in a different budget, but it's usually the bigger number.
- Ignoring unanswered attempts. Most dials don't reach a person. On per-hour labour they cost as much as a conversation. On per-minute AI billing they cost little, but not always nothing.
This guide works through the full calculation once, with real Dial Milo prices and clearly made-up campaign numbers, so you can rerun it with your own.
The cost per reactivated player formula
Cost per reactivated player = (call cost + bonus cost) ÷ incremental reactivated players
Incremental reactivated players = depositors in called group − (called group size × holdout deposit rate)
Reactivation ROI = (incremental players × NGR per reactivated player − total cost) ÷ total cost
Define "reactivated" before the campaign starts: a real-money deposit within a fixed window, for example 30 days after the first call attempt. Use the same window for the holdout. The definitions behind each term are in iGaming retention KPIs.
What a call actually costs
An outbound Dial Milo call has two parts, as set out in how calls are priced:
- The phone line, priced for the exact number dialled and your caller ID country, billed per started minute. A 61-second call is billed as two minutes. A UK mobile called from a UK number starts at 8.5¢ a minute. A Netherlands mobile is 10¢. A US mobile or landline starts at 4¢. A few destinations add a fixed fee per call.
- The AI, at 9.57¢ for each minute Milo is talking with someone.
So a UK mobile works out at roughly 18¢ a minute all-in. Calls that never connect, such as ring-outs or switched-off phones, have no minute charge. Voicemail is different. The carrier's voicemail answers the call, so it connects. Milo detects the voicemail greeting and hangs up without leaving a message, but that started minute still counts. You can price any specific number at /rates.
To keep the example on the cautious side, we round every call up to whole minutes for both line and AI:
| Call type | Assumption | Cost each |
|---|---|---|
| Answered, average 2.4 minutes | 3 minutes of line + 3 minutes of AI | 3 × 8.5¢ + 3 × 9.57¢ = 54.21¢ |
| Voicemail, detected and dropped | 1 minute of line + 1 minute of AI | 8.5¢ + 9.57¢ = 18.07¢ |
| No answer or not connected | No minute charge | 0¢ |
Worked example: 10,000 lapsed UK players
All campaign figures below are illustrative. Prices are Dial Milo's as of November 2026. The arithmetic is shown so you can swap in your own numbers.
- 1
Remove everyone you may not call
Say you have 10,000 players with no deposit in 60 days. 4,000 (40%) have phone-marketing consent for casino under the UKGC's per-channel rule and pass your self-exclusion, harm and age filters. The rules behind that filter are in UK Gambling Commission rules for marketing calls.
- 2
Hold out 10%
400 eligible players are set aside at random and not contacted by this campaign. 3,600 are called.
- 3
Dial twice, four hours apart
First attempt: 792 answer (22%). The other 2,808 get a second try four hours later, and 337 more answer (12%). That's 1,129 players reached, from 6,408 attempts. Of the 5,279 unanswered attempts, 2,903 (55%) reach voicemail and 2,376 ring out.
- 4
Count the offers and deposits
169 of the 1,129 reached players accept the offer (15%), and 105 of them deposit and claim it within 30 days (62%). Across the whole called group, including people who declined or weren't reached, 216 players deposit within 30 days: 6.0%.
- 5
Check the holdout
10 of the 400 held-out players deposit in the same 30 days: 2.5%. Without the campaign you'd expect 3,600 × 2.5% = 90 of the called group to deposit anyway. Incremental reactivated players = 216 − 90 = 126.
The costs
| Line | Calculation | Cost |
|---|---|---|
| Answered calls | 1,129 × 54.21¢ | $612.03 |
| Voicemails | 2,903 × 18.07¢ | $524.57 |
| Ring-outs | 2,376 × 0¢ | $0.00 |
| Call cost | $1,136.60 | |
| Bonus cost | 105 claimed × $25 average cost | $2,625.00 |
| Total | $3,761.60 |
The result
| Measure | Calculation | Result |
|---|---|---|
| Naive cost per reactivated player | $3,761.60 ÷ 216 | $17.41 |
| Cost per incremental reactivated player | $3,761.60 ÷ 126 | $29.85 |
| Call cost per incremental player | $1,136.60 ÷ 126 | $9.02 |
| Incremental 90-day NGR | 126 × $110 (illustrative) | $13,860 |
| Net return | $13,860 − $3,761.60 | $10,098 |
| Reactivation ROI | $10,098 ÷ $3,761.60 | 268% |
Two things stand out. The naive figure understates the real cost by 42%, because 90 of the 216 depositors were coming back anyway. And calls are only 30% of total cost. The bonus is the other 70%.
Our cost assumptions are deliberately cautious. They work out to about 17.7¢ per dial attempt. In a real October 2026 pilot with an online casino operator, 121 dial attempts to 61 players over two rounds cost $11.53 in total, about 9.5¢ per attempt, because most attempts went unanswered or hit voicemail. At that rate, this campaign's call cost would be closer to $609.
Sensitivity: what moves the number
Holding call cost at $1,136.60 and bonus claims at 105, here's cost per incremental reactivated player as the incremental lift and the average bonus change:
| Incremental lift | $10 bonus | $25 bonus | $50 bonus |
|---|---|---|---|
| 2.0 points (72 players) | $30.37 | $52.24 | $88.70 |
| 3.5 points (126 players) | $17.35 | $29.85 | $50.69 |
| 5.0 points (180 players) | $12.15 | $20.90 | $35.48 |
Read across a row and the bonus does most of the work. Read down a column and targeting does. The call itself barely registers: with a $10 bonus at 3.5 points of lift, halving the call cost would only take cost per player from $17.35 to about $12.84.
That suggests where to spend effort:
- Call the segments with the highest lift, not the biggest segments. Measure lift per segment, by dormancy age and past value, and stop calling the segments where the called group does no better than its holdout. The dormant player segmentation guide and template help you split the list.
- Test a smaller offer, or none. A check-in call with no bonus may bring some players back on its own. A script without an offer, A/B tested against one with an offer, tells you how much of the lift the bonus is actually buying. Dial Milo lets you A/B test up to five scripts side by side and compares cost per depositor once deposit data is connected.
- Stay inside the bonus rules. In Great Britain, wagering requirements have been capped at 10x since January 2026, which changes the real cost of a given headline bonus. Price offers on what they actually cost, not their face value.
Set the ceiling before you dial
A cost per reactivated player only means something next to what a reactivated player is worth. Work out the ceiling before the campaign, not after:
Maximum cost per reactivated player = NGR per reactivated player over your window × the share of it you're willing to spend
With the illustrative $110 of 90-day NGR and a rule that a campaign may spend at most half of what it brings back, the ceiling is $55. The worked example's $29.85 clears it comfortably. The 2-point, $50-bonus corner of the sensitivity table, at $88.70, doesn't.
The same numbers give you a break-even lift. The campaign costs $3,761.60 and each incremental player brings back $110, so you need 3,761.60 ÷ 110 ≈ 34 incremental players to break even. Out of 3,600 called, that's a lift of under one percentage point over the holdout. A segment that can't beat its holdout by even that much shouldn't be called again with the same offer.
Two costs are easy to leave out of the total:
- Follow-up messages. If an accepted offer triggers an SMS and an email with the bonus code from your journey tool, those sends belong in the campaign's cost.
- Team time. Building the list, approving the script and reviewing safer-gambling flags takes hours. It's usually small next to bonus cost, but count it for the first campaign so you know.
The same campaign with a human team
For comparison, the reactivation ROI calculator puts AI and a human call centre side by side. A human agent is paid for every dial, answered or not. Using the calculator's starting assumptions, which are placeholders to replace with your own, of $25 per agent hour and 30 dials per hour:
6,408 dials ÷ 30 per hour = 213.6 agent hours × $25 = $5,340
With the same $2,625 of bonuses and the same 126 incremental players, that's $7,965 in total, or $63.21 per incremental reactivated player against $29.85. The difference is almost all the 5,279 unanswered attempts, which are close to free on per-minute billing and cost a full slot of agent time on per-hour billing.
A human team still wins in places: VIP players, complex complaints, anyone who needs a judgement call. A sensible split is AI for the long tail of lapsed players and your own hosts for the top tier.
Run it on your own list
- 1
Price your actual numbers
Check your markets and caller ID countries at /rates, then load the list into the spend calculator to see attempts, minutes and cost before you spend anything.
- 2
Set a budget cap
Give the campaign a total and a daily budget. Dial Milo forecasts what the rest of the list will cost, emails you at 80% of the budget, and stops calling when a budget is reached. Top-ups start at $10 with no subscription.
- 3
Keep a holdout
Hold back 10% of every segment in your CRM before the list reaches the dialler. Without it, you can't compute the incremental number.
- 4
Wait for the full window
Read 30-day results after 30 days have passed for the last player called, not the first.
If you'd rather hear the call before running numbers, the browser demo lets Milo call you first. When you're ready, sign up and price your first list. The wider strategy, from segments to offers, is in the player reactivation guide.
Frequently asked questions
- How do you calculate cost per reactivated player?
- Add up everything the campaign cost, which is call or contact cost plus the bonus cost of the players who claimed the offer, and divide by the number of incremental reactivated players. Incremental means depositors in the contacted group minus the depositors you would have had anyway, measured with a holdout group that met the same criteria but was not contacted.
- Why not divide by every player who deposited after the call?
- Because some dormant players come back on their own. If 2.5 percent of an untouched holdout deposits within 30 days, the same 2.5 percent of your called group would have deposited without the call. Counting them makes the campaign look cheaper than it is, sometimes by half.
- What does an AI reactivation call cost per player?
- On Dial Milo, an outbound call is the phone line, priced for the exact number dialled and billed per started minute, plus AI at 9.57 cents per talk minute. A UK mobile called from a UK number has a line rate from 8.5 cents, so roughly 18 cents a minute all-in. Calls that never connect have no minute charge, so most unanswered attempts cost little.
- Is the bonus or the call the bigger cost?
- In most reactivation campaigns the bonus is. In the worked example on this page, calls are about 30 percent of total cost and bonuses about 70 percent. That is why the cheapest way to lower cost per reactivated player is usually a better-targeted offer, not a cheaper dialler.
- What is a good cost per reactivated player?
- One well below the value a reactivated player brings back. Compare it with your 90-day NGR per reactivated player and with your cost to acquire a new depositing player. There is no useful public benchmark, because bonus policy, market and dormancy window move the number more than anything else.
Keep reading
iGaming Retention
iGaming retention KPIs: what to measure and how
iGaming retention KPIs with exact formulas: cohort retention, incremental reactivation, consent reach, cost per reactivated player and the harm metrics.
ReadiGaming Retention
Player reactivation: the iGaming operator's guide
Player reactivation for online casinos: which lapsed segments to call, which to leave alone, UK and Dutch consent rules, and worked economics for a phone step.
ReadiGaming Retention
Dormant player segmentation: who to call, who to leave
Dormant player segmentation in five passes: eligibility, dormancy against each player's own rhythm, value, why they left and reachability, and a worked example.
Read