Run a campaign¶
A campaign sends one Outreach to a list of People at once. You choose the Outreach and the audience. Anychat validates every recipient up front, shows exactly what will be sent, works through the list at a controlled rate while you watch, and reports each recipient's outcome at the end.
A campaign adds nothing of its own to the message. The opener, the Playbook the agent follows when people reply, the Goal, the class, and the follow-up all come from the Outreach, and every recipient becomes an ordinary send under the same guardrails. A campaign has no channel of its own: each person is reached on the channel their own record resolves to, which today is RCS.
Campaigns live on the Campaigns tab of Build · Outreach, beside the Outreach they send and the agent's Automated Outreach. What a campaign sends is read on Monitor · Sends.
When to use a campaign¶
Use a campaign for a staged batch: this week's check-ins, a reseller announcement, a re-engagement pass. Anything you want sent, tracked, and reported as one unit.
For leads that arrive in a spreadsheet over time and should be contacted as they qualify, use Automated Outreach. For one person, use the Send action on their row, described in Send to one person.
Before you begin¶
- A connected RCS channel. You never pick a channel on a campaign. Each person is reached on the channel their record resolves to, which for someone who has used more than one is the channel they most recently wrote from. See Connect a channel.
- An Outreach. Its opener is the message template every recipient receives, rendered for them, and its Playbook is the conversation their reply enters. The agent never composes a campaign opening freehand, so what you preview at staging is what each person receives.
- People with consent. Recipients must be People records with messaging consent recorded. People whose consent is unknown or declined are excluded from the send and listed in the staging review.
1. Create the campaign¶
Open Build · Outreach, select the Campaigns tab, and click New campaign. The dialog asks for:
- Name. How the campaign appears in the list and in reports.
- Outreach. The one to send. Its class becomes the campaign's class: a marketing campaign respects the account frequency cap and skips people you have already contacted, and a service campaign does neither. Its Goal is what recipients' conversations work toward.
- Audience. People already on the agent, chosen one of three ways: a saved segment, built on the People page; a filter over funnel status, consent, tags, and source, which selects everyone when left blank; or an import, using the batch id from a People import result to target exactly the people that import touched.
- Already-contacted people. Keep the class default, or force include or exclude.
- Send window. Optional hours and time zone. The window narrows the account's safe hours: the campaign sends only while both are open, waits while either is closed, and resumes when both open again.
Creating a campaign sends nothing and locks nothing. It is a Draft you can edit until you start it.
2. Stage and review¶
Click Stage. Staging snapshots the audience and checks every recipient without sending anything.
| Check | What it excludes |
|---|---|
| Consent | Anyone whose consent is not recorded as granted. |
| Channel identity | Anyone without an RCS channel identity to send to. Add one on the person's record. |
| Opted out | Anyone who has replied STOP. |
| Already contacted | Per the rule you chose. |
| Frequency cap | On a marketing campaign, anyone messaged too recently. |
| Message slots | Flags a recipient whose opener has an empty field with no fallback, before anything is sent. |
The Staging review card shows the sendable count, everyone excluded and why, how many were previously contacted, and an estimated send duration. What recipients will see renders the opening for a sample of real recipients, and any recipient's message can be previewed from the Recipients table.
Nothing has been sent yet. Adjust the campaign, which returns it to Draft, and stage again.
The audience is locked at staging. A campaign never sends against a live query: people added to a segment after staging are not picked up, and people removed are still sent to. Re-stage to refresh.
Each recipient is sent to the identity chosen at staging. Whether its number can receive RCS is confirmed per person during the send, as it is for a single send. Numbers that turn out not to be RCS-capable appear in the report as Not RCS-capable.
3. Start and watch¶
On the campaign's page, click Start and confirm. Messages go out at about four people a second, so a large campaign takes hours by design. To watch it, open Monitor · Sends filtered to the campaign: the Progress card above the rows refreshes every fifteen seconds as recipients move from pending to sent, and on to delivered and read where the network reports receipts.
Pause, Resume, and Cancel are on the campaign's page. Pause stops further sends within a minute, and Resume picks up where it left off. Nobody is sent to twice. Cancel ends the campaign, leaving remaining recipients unsent, and the report covers what went out.
Pausing or cancelling affects only outbound sending. Conversations that have already started continue, with the agent still working through the Outreach's Playbook.
4. Read the report¶
The report is Monitor · Sends filtered to the campaign. Every recipient ends in exactly one state: read, delivered, sent with no receipt yet, failed with a reason, excluded with a reason, or cancelled. The bar and the totals always add up to the audience you staged.
Why rows did not send lists the reasons with counts. The rows below, one per recipient, filter by state and each links to the person's record, where an excluded person can be handled individually with Send outreach.
Replies land in the normal conversation view, attributed to the campaign and its Outreach.
Rehearse it first¶
Give the campaign an audience of personas rather than real People. Every send runs the whole pipeline and is captured rather than delivered: it appears as the opening in that persona's sandbox conversation, where you can reply and carry the conversation on, in the emulator or in a Test. Nothing reaches a real person, and no channel is needed.
Safety rules¶
These hold across all campaigns, and between campaigns and every other kind of outreach.
Consent is required. Campaigns send only to People with granted consent on record.
Opt-out always wins. A person who has replied STOP is never sent a campaign message, and staging cannot override it.
Safe hours apply. A running campaign sends only inside the account's safe hours, read in the time zone configured at Settings · Sending, and inside its own send window when it has one.
No interruptions. A recipient who wrote to your agent in the last 30 minutes is in the middle of a conversation, so their message waits until 30 minutes after their last reply, then goes out. The campaign keeps running until they have been sent.
No double sends. A campaign sends to each person at most once, even across pauses, retries, and restarts.
The frequency cap applies. Someone recently sent a marketing message by any route is excluded from a marketing campaign rather than messaged again.
The Outreach's follow-up applies. When the Outreach carries a follow-up, campaign recipients who do not reply get the same single nudge as any other send.
What's next¶
- Outreach: how Outreach, audiences, and sends fit together.
- Manage people: segments, consent, and imports.
- Campaigns in the Agent API
- Drive Anychat from Claude Code, Claude Desktop, or Cursor