Call2Me
Core

Campaigns: bulk outbound calls at scale

Run outbound voice campaigns end-to-end — CSV upload, concurrency, retries, real-time monitoring, post-call data extraction. From setup to first live call in 30 minutes.

Updated May 6, 2026

Campaigns are how you turn one voice agent into many simultaneous calls. The agent stays the same; the campaign primitive handles the queue, concurrency, retries, and reporting.

Anatomy of a campaign

Every campaign has four moving parts:

  1. An agent — what the AI says on the call (configured separately)
  2. A from-number — the phone number you're dialing from
  3. A contact list — CSV uploaded once or appended over time
  4. Run settings — concurrency, retry rules, time-window restrictions

You configure each piece once; the platform runs the campaign.

CSV format

phone_number,name,company
+905551234567,Ahmet Yılmaz,ABC Ltd
+905559876543,Mehmet Demir,XYZ Corp
+14155550123,Sarah Johnson,Acme Inc

Required: phone_number in E.164 format (with + and country code).

Optional: any column you want available as a dynamic_variable during the call. The agent's prompt can interpolate them — {{name}} becomes "Ahmet" for the first row, "Mehmet" for the second.

Max file size: 5 MB. For larger lists, split and upload in batches.

Concurrency

The concurrency setting controls how many calls run simultaneously. Higher numbers finish the campaign faster but require:

  • enough provisioned phone-number capacity for outbound
  • compute headroom (a 50-concurrent campaign uses 50 voice-agent sessions)
  • carrier rate limits, which differ per provider

Practical defaults: start at 10, raise to 25–50 once you've watched a real campaign and seen the call-completion stats are clean.

Retry rules

Each contact has a status: pending, dialing, completed, failed, busy, no-answer. Retries apply to failed, busy, and no-answer:

  • retry_count — how many additional attempts (default 2)
  • retry_delay_minutes — wait between attempts (default 30)

A contact is final once it's completed or once retries are exhausted.

Time-window restrictions

For B2C campaigns, set a window so the system never dials outside acceptable hours:

{
  "allowed_hours": { "start": "09:00", "end": "20:00" },
  "timezone": "Europe/Istanbul",
  "skip_weekends": true
}

The campaign respects this even during retries — a number that errors at 8pm waits until 9am the next day.

Monitoring

While the campaign is running, the dashboard shows:

  • queue size and progress bar
  • live counts: completed / failed / busy / no-answer
  • average duration, total cost
  • per-contact transcript and recording links as they finish

You can pause, resume, or stop at any time from the same view.

Post-call extraction

Combine campaigns with post-call data extraction to turn each call into structured rows. Define fields once on the agent (interest_level, callback_requested, customer_objection), and every campaign call returns a JSON record with those fields filled in. See Post-Call Actions.

What's next

Frequently asked

Q.How big can a campaign be?

There's no upper limit on contacts. Practical limits come from your concurrency setting and your phone-number capacity. A typical setup with 20 concurrent calls clears 1,000 contacts in about 90 minutes.

Q.What CSV format does Call2Me expect?

One column phone_number is required (E.164 format like +905551234567). Optional columns: name, company, email, plus any custom field you reference in dynamic_variables.

Q.What happens to busy or failed numbers?

The campaign retries each failed contact based on your retry rules — count and delay between attempts. Final status appears in the Results tab once retries are exhausted.

Q.Can I pause or stop a campaign mid-run?

Yes. Pause keeps the campaign queued; new calls don't start until you resume. Stop cancels everything in flight.

ShareX / TwitterLinkedIn

Ready to ship?

Spin up your first agent in 5 minutes — $10 free credit.

Start free