Campaigns
For the business owner or manager running outbound calling campaigns — setting up who gets called, when, and how.
A campaign points one of your agents at a list of contacts and dials them for you — inside the law, on your schedule, retrying the ones who don't pick up. This guide walks you through creating a campaign, launching it safely, watching it run live, and understanding every status you'll see along the way.
Everything below happens under Campaigns in the left-hand menu.
What a campaign is
A campaign is a saved set of instructions:
- Which agent makes the calls.
- Which contacts to call (your audience).
- When it's allowed to dial (calling window + days).
- How persistent to be (retries, attempts, how many calls at once).
- What consent each contact must have before they can be dialed.
Once you launch it, the platform works down the list automatically, obeys the calling rules for each person, retries no-answers, and stops on its own when the list is done.
Creating a campaign
From Campaigns, click New campaign. You'll go through a 4-step wizard. At the end you get a draft — nothing dials until you launch it.
Step 1 — Basics
- Give the campaign a name you'll recognize later (for example, "CHAMPS Chicago 2026 follow-up").
- Pick the agent that will make the calls, from your list of agents.
- Click Continue.
Step 2 — Audience
Choose who gets called. You filter your contacts three ways, and you can combine them:
| Filter | How it works |
|---|---|
| Tags | Include contacts that have any of the tags you pick. |
| Sources | Include contacts from any of the sources you pick (e.g. where they came from). |
| Consent statuses | Include only contacts at the consent levels you pick. Leave it empty to include every consent level. |
Click Preview audience size to see how many contacts match before you commit. You'll see a live count like "142 contacts match."
Important: Filtering by consent here just decides who goes into the campaign. It does not override the legal consent rule. Even if a contact is in the campaign, they will only actually be dialed if they meet the required consent level you set in Step 3. Contacts who don't will be automatically set aside (marked excluded) — never called.
Click Continue.
Step 3 — Schedule & retries
This is where you set the calling rules.
Calling window (contact-local). Set a Window start and Window end — the earliest and latest times of day a contact can be called. These times are read in each contact's own local time, not yours. A 9:00 AM–8:00 PM window means a contact in New York gets called on New York time and a contact in Los Angeles gets called on LA time — automatically. The default is 09:00 to 20:00.
The 8 AM–9 PM law, in plain words: By law, telemarketing calls can only happen between 8:00 AM and 9:00 PM in the person you're calling's time zone. The platform enforces this for you no matter what. If you try to set a window wider than that — say 6:00 AM — it's clamped back to 8:00 AM. And even inside your chosen window, no call ever goes out before 8:00 AM or after 9:00 PM local to that contact. You cannot turn this off, and that's on purpose: it's your protection.
Days of week. Pick which days the campaign is allowed to dial. Tap the day buttons to toggle them on and off. The default is Monday through Friday. On a day that isn't selected, nobody gets called.
Max attempts. How many times the platform will try a single contact before giving up on them. Default is 3. (Range: 1 to 10.)
Retry after (hours). After a no-answer, voicemail, or failed call, how long to wait before trying that contact again. Default is 24 hours. (Range: 1 to 336 hours — that's up to two weeks.)
Concurrent calls cap. The most calls the campaign will run at the same time. A higher number drains your list faster but is more intense; a lower number is gentler and steadier. Default is 3. (Range: 1 to 50.)
Required consent level. Choose the legal bar every contact must clear to be dialed:
| Option | Choose this when… |
|---|---|
| Prior express written consent (marketing calls) | The campaign is promotional/marketing — offers, promotions, sales outreach. This is the stricter bar. |
| Express consent (informational calls) | The campaign is purely informational — appointment reminders, order updates, account notices. |
In plain terms: Prior express written consent means the person signed or clicked something specifically agreeing to receive marketing calls from you. Express consent is a lighter bar — they gave you their number knowing you'd contact them, which is enough for non-marketing, informational calls but not for marketing.
A contact who has prior express written consent can be dialed by either type of campaign. A contact who only has express consent can be dialed by an informational campaign but not a marketing one. Contacts with no consent, do-not-call, or opted-out status are never dialed by either.
Click Continue.
Step 4 — Review
Check the summary — name, agent, audience, window, days, retry settings, and required consent. If it all looks right, click Create draft campaign.
Your campaign now exists as a draft. It is not calling anyone yet. The compliance checklist comes next, at launch.
The pre-launch compliance checklist
Before a brand-new campaign can dial its first number, you must complete a short compliance checklist. This isn't busywork — each item is a legal safeguard, and your confirmation is recorded with your name and a timestamp.
On the campaign page, click Compliance checklist. You must check all four boxes; you can't launch until you do:
| You're confirming… | Why it matters |
|---|---|
| You have prior express written consent for these contacts (or it's an informational campaign with express consent). | Calling without the right consent is the single biggest legal risk. This is you attesting you have it. |
| The list has been scrubbed against your internal do-not-call list. | Anyone who asked you not to call must be excluded. |
| AI disclosure is enabled on the agent making these calls. | Callers must be told they're speaking with an AI. This confirms your agent does that. |
| You accept responsibility for this campaign's compliance per the Terms of Service. | Final acknowledgment that the campaign is yours to stand behind. |
Click Acknowledge all. The page records who acknowledged it and when — you'll see a note like "Compliance checklist acknowledged by you at [date/time]" on the campaign afterward. Now the Launch campaign button appears.
Launching, pausing, and completing
On the campaign page:
- Launch campaign — starts dialing. Only available on a draft after the compliance checklist is done. If you're at your plan's limit for campaigns running at once, you'll be told, and you'll need to pause or finish another campaign first.
- Pause — appears while a campaign is running. Stops new calls from going out. Calls already in progress finish normally. You can resume anytime.
- Resume — appears on a paused campaign (the button reads Resume). Picks up right where it left off; you don't redo the checklist.
- Completed — happens automatically. When every contact has reached a final state (called, excluded, or exhausted its attempts), the campaign marks itself complete. There's nothing for you to click.
You can watch progress from the Campaigns list, where each row shows a status badge and a "X/Y contacts" progress count.
Why a campaign auto-pauses — and what to do
A running campaign will pause itself if it hits a wall. This protects you and prevents wasted or non-compliant calls. Here's each reason and the fix:
| Reason | What happened | What to do |
|---|---|---|
| Wallet low | Your prepaid balance dropped below the safety threshold, so dialing stopped before you'd run out mid-call. | Top up your balance under Billing. (Turn on auto-recharge there to prevent this from happening again.) Then Resume the campaign. |
| Numbers exhausted | Every phone number on your account has hit its daily dialing cap, so there's no number left to dial from today. | Wait for the daily reset, or add more phone numbers under Settings → Numbers. Then Resume. |
| Suspended | Your account is in a suspended state and can't place calls. | Check Billing and account status, or contact support. Resolve the hold, then Resume. |
| Agent missing | The agent this campaign uses was deleted, deactivated, or is otherwise unavailable. | Reactivate the agent (or its replacement) under Agents, then Resume. |
In every case, fix the underlying issue and click Resume — you keep all your progress and your compliance acknowledgment.
Watching a campaign run live
The campaign page
While a campaign runs, its page refreshes on its own every few seconds. At the top you'll see counters:
- Total — everyone in the campaign.
- Pending — waiting for their turn (or their next retry).
- Calling — being dialed right now.
- Completed — reached and finished.
- Excluded — set aside and never called (see reasons below).
- Max attempts — tried the maximum number of times without success.
Below that, an Outcomes panel summarizes how calls ended, and a Contacts table lists each person with their consent, current status, attempts so far, last outcome, and either their next retry time or the reason they were excluded. You can also click Contacts CSV to download the full list.
The Wallboard
Click Wallboard on the campaign page for a big-screen, glanceable view — perfect for a TV in the office. It refreshes every couple of seconds and shows:
- A live "Dialing live" indicator when the campaign is running.
- Four big counters: Active, Completed, Booked, and Opted-out / failed.
- A Status breakdown donut chart.
- A Latest outcomes feed of the most recent calls as they land.
Speed-to-lead: call new web leads within seconds
Separate from scheduled campaigns, speed-to-lead calls a brand-new lead back the instant they submit your website form — while they're still interested. It's the fastest way to reach someone, and it's set up under Settings → Lead webhooks.
What it is. You connect your website's contact or quote form to the platform. Every time someone fills it out, the platform creates or updates that contact and — if you've turned it on — immediately has an agent call them back.
How your form connects.
- Go to Settings → Lead webhooks and click to create a new webhook.
- Name it (e.g. "Website quote form") and pick the agent that will place the call.
- Under Field mapping, tell the platform what your form calls each field (phone, first name, last name, email) — so it can read your submissions correctly.
- Decide whether to Call new leads immediately (speed-to-lead) — leave this on for instant callbacks, or turn it off to just capture the lead without calling.
- Handle the consent attestation (below), then create the webhook.
- The platform gives you a unique endpoint URL and an example. Hand that URL to whoever manages your website so they can point your form at it. Treat this URL like a password — anyone with it can create leads on your account.
The consent attestation — read this carefully. When creating the webhook there's a box:
"I attest this form captures prior express written consent to be called."
- Check it only if your web form actually gets the visitor's written agreement to be called (for example, a checkbox next to your form that says "I agree to be contacted by phone/AI"). When checked, new leads arrive marked as having prior express written consent and can be called immediately.
- Leave it unchecked and new leads arrive with no consent — they'll be captured, but the platform will never auto-dial them. This is the safe default if your form doesn't collect that agreement.
The instant-callback still respects everything else: it won't call outside 8 AM–9 PM in the lead's local time, it skips anyone on your do-not-call list, and it won't call the same person twice in quick succession.
Understanding campaign contact statuses
Every contact in a campaign carries a status. Here's what each one means:
| Status | Meaning |
|---|---|
| Pending | In line to be called — either hasn't been tried yet, or is waiting for its next retry time. |
| Queued | Handed off and about to be dialed. |
| Calling | On a live call right now. |
| Completed | Successfully reached and the call finished. |
| Excluded | Set aside and never called, for a specific reason (see below). |
| Max attempts | Tried the maximum number of times you allowed, without a successful connection. The platform stops trying this person. |
Why a contact gets excluded. When you see "excluded," hover or check the reason column. Common reasons:
| Reason | What it means |
|---|---|
| consent:none | The contact has no consent on record, so they can't be legally called. |
| consent:express | The contact only has express consent, but this is a marketing campaign requiring prior express written consent. |
| consent:dnc | The contact is marked do-not-call. |
| consent:opted_out | The contact opted out of calls. |
| dnc | The contact is on your internal do-not-call list. |
| federal_dnc | The contact matched a federal do-not-call scrub. |
You may also occasionally see temporary skip notes rather than exclusions — for example, a contact whose time zone couldn't be determined is set aside briefly and retried later rather than being called at the wrong hour, and a contact affected by a brief phone-system hiccup is automatically rescheduled for a short retry. These resolve on their own; you don't need to do anything.
The takeaway: exclusions are the system protecting you. A contact marked excluded was one you were not legally clear to call — and the platform made that decision so you didn't have to.
Related: Getting started · Analytics & reporting · Billing & wallet · Integrations