About fifteen minutes for the first one, on a list of five people who are expecting your call. Everything here assumes you already have the four things, including the compliance acknowledgment.
Open the composer
Go to /campaigns and press New Campaign. You are asked what kind:
| Card | What it does |
|---|---|
| Voice AI | AI-powered outbound voice calls |
| SMS / MMS | Send text messages via SMS or MMS |
| Voicemail Drop | Drop pre-recorded voicemail messages |
| Send an approved template to your contact list |
Pick Voice AI. You land on a draft at /campaigns/draft/<id>, which saves as
you type — you can close the tab and come back.
The draft has nine sections down the side. They are in a deliberate order, and the rest of this page walks them in it.
Name → Sender → Recipients → Phone Menu → Call Mission → Dialog Insight → Schedule → Advanced → Shared notes
Sender
Two things: the agent that will do the talking, and the number it calls from.
Use a different agent from the one answering your main line. An agent written to greet callers opens with the wrong sentence when it is the one who rang — it will say something like “thanks for calling” to a person who did not.
Recipients
Press Choose source… under Recipient source. Six kinds:
| Source | Use it when |
|---|---|
| Saved list | You already keep the list in /contacts |
| Segment | The audience is a rule, not a list (“tagged VIP, no call in 30 days”) |
| By tag | One or more tags, matching any or every |
| CSV upload | It came out of another system |
| Quick rows | You are pasting five rows to test |
| Magic input | You would rather describe the audience than build it |
You can stack several — a saved list plus a tag — and the count adds up.
Read the preview line, not the total. It says PREVIEW · first 5 of 61, and
when some contacts have no phone number it adds · 12 no phone. That second
number is the one that matters: those twelve are in your audience and will never
be called. A campaign that “did only 49 of 61” is almost always this, discovered
after the run instead of before it.
If you assembled the audience here and want it again, use Save these N contacts to /contacts as a reusable list. Segments have an Open in /segments link for the same reason.
Phone Menu (IVR)
Will the agent navigate a phone menu (IVR)?
This sits next to Recipients rather than in Advanced on purpose: whether there is a menu to get through is a fact about who you are calling, not a dialling preference. Calling people at home — no. Calling businesses, clinics or insurers — usually yes.
Call Mission
The most important field on the page, and the one people leave shortest.
It is a plain-English instruction, in the shape of a brief rather than a script. The product’s own example:
Confirm interest in a free tour, schedule a slot if possible.
Two things worth using:
Variables. The contact-field chips — First name, Last name, Email, Phone — insert placeholders into the mission where you click. You are writing one mission for everybody, and these are how it addresses each person.
The preview. Underneath, “Resolved mission for the first contacts in your audience” shows the mission with real contact data filled in. Read it before launching. It is where you notice that a missing first name leaves a sentence with a hole in it. If your audience has no eligible contacts yet, it labels itself “Sample (no eligible contacts in audience — using demo values)” — a preview built from demo data, not from your list.
Dialog Insight
This decides whether the results are a spreadsheet or a pile of recordings.
A Dialog Insight is a named set of fields pulled out of every conversation — up to twenty. Each field has a name, a type, optional allowed values, and Extraction guidance: “Tell the AI exactly when to set this, and when to leave it out.” The guidance is what separates a field that works from one that comes back empty half the time.
They live at /dialog-insights and are reusable — attach the same one to this campaign, to next month’s campaign, and to the agent answering your main line, so calls from every direction come back in the same shape.
Three things that catch people:
Saving is not attaching. “Saved. It won’t run until you attach it to an agent or campaign.” An insight that is Not attached never runs, silently. This is the single most common reason a campaign produces no structured results.
Fields can become labels. Turn on Becomes a label and the value lands on the conversation as a label you can filter by. If the label is one auto-triage also applies, the editor warns you: a workflow triggered on it “will fire from two sources.”
Custom (not reusable) is a real state. Build fields inline and the section says: “This campaign has its own extraction fields. They still run, but no other campaign or agent can use them.” One press of Save as a reusable Dialog Insight fixes it. Do it now rather than rebuilding the same five fields next month.
The field key is “used as the CSV column header”, so name fields the way you want your export to read.
Schedule
The default is Run immediately, no schedule, which is right for five people.
For a real list, set the days, the time windows and the timezone. The timezone is the one part that is never optional, and it should be where the people you are calling are, not where you are.
Note what the summary line tells you: Starts …, Days: …, Windows: …,
Timezone: …. A campaign outside its window reports running while placing no
calls — it has started and is waiting. That is normal, and it is the most common
“nothing is happening” report.
Advanced settings
Three worth knowing on a first run:
Retry policy — None, Manual or Scheduled, with up to N attempt(s),
every N min, and — the part to actually use — a list of the dispositions it may
retry on:. Restrict
retries to outcomes worth retrying. A no-answer deserves a second call. Someone
who hung up on you does not.
Respect recipient timezone (8pm – 8am) — suppresses calls during the recipient’s night rather than yours. If you are calling across time zones, this is the setting you want, and it is easy to miss down here.
Auto-dial all on launch — off means the campaign is created and waits.
Launch
Press Launch →. If anything required is missing the button says so by name — Sender, Recipients, Agent, Call Mission, Phone Menu (IVR) — so you never have to hunt for the empty field.
On a workspace’s first outbound campaign you get the compliance acknowledgment, and the button becomes Accept and launch. Once per workspace, not once per campaign.
Then read the toast, because there are two:
- “Campaign launched.” — dialling, or waiting for its window.
- “Campaign had no eligible recipients — marked completed without dispatch.” — the audience resolved to nobody. Not an error, and easy to read as success.
Then listen to all five
Open the campaign at /campaigns/<id>. Each row is one call; click through to
/campaigns/<id>/records/<record-id> for the transcript, the recording, the
outcome and the fields your Dialog Insight pulled out.
Check the extracted fields against what you can actually hear, and fix the guidance on any field that came back empty or wrong. Do this at five people, because extraction cannot be applied retroactively to calls that already happened — and at five hundred, nobody re-runs it.