Outbound campaigns
/campaignsA campaign = a contact list + an agent + a schedule + dial settings. The system pulls contacts in order, the agent talks to whoever picks up, the call lands in your CRM and recordings library.
Setup
- Upload contacts (Sidebar → Contact lists → New). Paste rows or upload CSV. Required columns:
phone_primary. Optional but useful:first_name, last_name, email, timezone, custom_fields. - Create a campaign (Sidebar → Campaigns → New).
- Pick the contact list.
- Pick the agent that should make the calls.
- Pick the caller-ID number (or let the system rotate through your pool for local presence).
- Set the schedule — TCPA hours are enforced per lead's timezone, not yours.
- Set the concurrency cap (how many simultaneous calls). Bound by your plan tier.
- Launch. The dialer worker starts pulling contacts. Watch the live dashboard for connect rate + abandon rate.
Pacing + abandon-rate enforcement
FCC abandon-rate limit is 3.0%. We auto-pause campaigns at 3.5% (small buffer above the regulatory line) and log a campaign.compliance_paused event + fire a webhook. Resume only after a manual review.
Local presence + DID rotation
When you assign a caller-ID pool (multiple numbers across area codes), the dialer picks the one closest to each lead's area code and round-robins within ties. This raises connect rates significantly and avoids spam-flagging any single number too quickly.
DNC
Internal DNC list (Sidebar → DNC) is checked before every call. In-call opt-out — if the lead says "stop calling," we flag the contact in real-time and never call them again. See compliance docs.