Running an outbound calling campaign
Set up a campaign, upload your players, and follow it from the Campaigns page: dates, pausing and resuming, how many calls run at once, and what each tab shows.
A campaign is a list of people for Milo to call, with a script, an offer, calling hours and an optional budget. Upload a list and Milo works through it, calling each player in their own local time and recording how every call went.
Where campaigns live
Click Campaigns in the left sidebar.
The top of your home page also summarises today's calls, answered calls, offers accepted and spend. Below that, Needs your attention lists anything that's waiting on you: a low balance, a paused campaign, a budget that's been reached, a safer-gambling flag or a callback a player asked for.
The campaign list has tabs for All, Live, Scheduled, Paused, Finished and Archived. Each card shows how the campaign is doing: called, answered, accepted, deposits. Each card also has three buttons:
- Pause or Resume
- Copy: makes a new campaign with the same settings and scripts but no players. The copy starts paused.
- Archive: hides a finished campaign. If you restore it, it stays paused.
Setting up a campaign
- 1
Write the script and offer
Give Milo an opening line and a script. You can use any detail from your list as a placeholder, such as
{first_name}or{vip_tier}. - 2
Set dates and budget
Under Dates and budget, choose when calling starts and stops, and set a total or daily budget if you want one. Leave any field empty for no limit. See budgets and alerts.
- 3
Set the calling rules
Under Calling rules, pick the days and hours to call, attempts per player, the longest call allowed, and how many calls can run at once. See calling hours and contact limits.
- 4
Test it
Click Test call on the campaign page and Milo calls you with the script, just as a player would hear it.
- 5
Upload players
Click Upload players and choose a CSV. Any extra columns are saved as player details. You can also add people from Contacts.
The campaign page
The campaign page has these tabs:
- Overview: spend and forecast, results, charts and the calls happening right now
- AI report: who needs what after their call, plus a written review. See the AI campaign report.
- Players: your uploaded lists and every player's status
- Scripts and A/B tests: your scripts, their history and how each one performs. See A/B testing scripts.
- Settings: everything you chose during setup
The status pill shows what Milo is doing, for example "Calling — 4 of 10 lines busy". Use the − / + control next to it to change how many calls run at the same time, from 1 to 50. The change saves straight away.
Pausing and resuming
Pause campaign never cuts off a live call. Calls already in progress finish normally, and no new ones start. Resume campaign starts the next calls right away.
Automatic pause when calls stop connecting
Milo watches the last 20 finished calls. It pauses the campaign by itself and emails you if either of these happens:
- None of those 20 calls connected. Voicemail counts as connected.
- At least 15 of the 20 failed or were rejected.
This usually means phone networks have started labelling your calling number as spam. Your list stays queued. Once the number is sorted out, press Resume and Milo starts the 20-call check again from zero.
When a campaign ends
A campaign ends when it reaches its Stop calling at time. Any queued calls are cancelled at that point. Once Milo has called everyone on the list, or the campaign ends, you get an email with how it went.
Was this helpful?
Related articles
Campaign budgets, forecasts and email alerts
Cap what a campaign can spend in total or per day, see what the rest of the list will cost, and know which emails Milo sends along the way.
Calling hours, time zones and contact limits
How Milo calls every player in their own local time, how often it will try, and how to stop the same player being called by several campaigns in a row.
A/B testing campaign scripts
Run up to five scripts side by side, see which one brings in more deposits, roll back to any earlier version, and send the winning script's name to Customer.io.