Campaigns
A campaign is one email blast to a chosen audience. You build it in a five-step composer, then save it as a draft, schedule it, or send it now. A campaign stays editable until it sends; after that it becomes a read-only record with delivery metrics.
A campaign is one email sent to a chosen audience. You assemble it in a five-step composer — Template, Recipients, Setup, Content, and Review — then save it as a draft, schedule it for later, or send it now. Every campaign you create lives on the Campaigns list at /campaigns.
Creating a campaign
On the Campaigns page, click New campaign. A type picker opens listing Email, SMS / MMS, WhatsApp, Push, Journey, and Account journey. Only Email is active; the rest show a Coming soon badge. Choosing Email creates a blank draft named Untitled campaign and opens it in the composer at /campaigns/[id]/compose.
The five composer steps
The composer is a full-screen builder with a step breadcrumb along the bottom. Each step autosaves as you work, so there is no separate save button for content. When you re-open a draft, it resumes at the first step you haven't completed.
- Template — pick a saved template or Start from scratch on a blank canvas. Applying a template copies its subject and body into the campaign, then prompts you to name the campaign before continuing.
- Recipients — choose who receives the email from three tabs: Audiences (a saved audience), Tags (contact tags), or Filter (a segment built from conditions). A live preview shows who matches.
- Setup — set the Campaign name, Subject line, and Preview text, plus the From address, Email type, and tracking. An inbox preview reflects these fields as you type.
- Content — build the email body in the block editor, apply a brand kit, and send yourself a test.
- Review — confirm the summary and recipient count, see the final rendered email, and finish by saving as a draft, scheduling, or sending now.
The Recipients and Content steps are covered in their own articles. This article covers the campaign lifecycle — naming, scheduling, sending, and the read-only record afterward.
Campaign status and what's editable
Every campaign carries a status that controls whether you can still edit it. A campaign is editable while it is Draft or Scheduled. A Scheduled campaign stays editable right up until its scheduled time arrives and the dispatcher picks it up; edits you make after scheduling are included when it sends. Once a campaign moves to Sending, Sent, Failed, or Cancelled, it becomes read-only. Clicking an editable campaign in the list opens the composer; clicking a read-only one opens its detail page at /campaigns/[id] instead.
| Status | Editable | What it means |
|---|---|---|
| Draft | Yes | Not scheduled or sent; send manually when ready |
| Scheduled | Yes | Will send automatically at its scheduled time |
| Sending | No | Emails are being dispatched to recipients |
| Sent | No | At least one email was sent |
| Failed | No | No email was sent — every recipient failed or was suppressed |
| Cancelled | No | A scheduled send was cancelled before it ran |
Saving, scheduling, or sending
On the Review step, the Finish section offers three options. Save as draft keeps the campaign as a draft to send manually later. Schedule for a specific date and time reveals a Send at date-time field. Send now begins dispatch immediately. The footer button changes to Save draft, Schedule, or Send now to match the option you pick.
The Send at time is read in your browser's local timezone and converted to UTC when saved. The scheduler checks for due campaigns every minute, so a campaign sends within about a minute of its scheduled time.
Scheduling requires a chosen From address. If the campaign has none, scheduling is blocked with "Choose a verified sender address in Settings → Sending before scheduling." All sending depends on a verified sending domain and a From address that lives on it.
Sending now and pre-flight checks
You can send a Draft or Scheduled campaign immediately from the Send now button — on the campaign's detail page header, or from the Review step. A confirmation dialog opens and runs pre-flight checks. If anything is missing, the dialog lists the issues and the confirm button stays disabled until they're resolved. The checks look for:
- A subject line — missing produces "Add a subject line."
- Recipients — missing produces "Choose recipients (a list or a segment)."
- Email content — missing produces "Add content to the email."
- No CC or BCC — on a campaign these would copy those addresses on every recipient's email, so they are blocked with "Remove CC/BCC — for a campaign they'd send a copy to those addresses for every recipient. Use a test send to preview instead."
- A physical mailing address on the account — missing produces "Set your organization's physical mailing address in account settings (required by anti-spam law)."
These same checks run again on the server when you confirm, so the gate can't be bypassed. Confirming with Yes, send now moves the campaign into Sending and begins dispatch.
Cancelling a scheduled campaign
A Scheduled campaign shows a Cancel schedule button on its detail page. Clicking it asks to confirm; choosing Cancel send moves the campaign to Cancelled and clears its scheduled time, so it will not send. You can re-schedule it or send it manually afterwards. Cancelling is only possible while the campaign is still Scheduled — once the dispatcher has started sending, the option is gone.
After a campaign sends
While dispatch is in progress the campaign stays in Sending. A background job checks every minute whether all recipients have reached a final state. Once they have, the campaign is stamped Sent if at least one email was sent, or Failed if no email was sent — every recipient failed or was suppressed.
The detail page shows the campaign's status, template, subject, scheduled and sent times, and total recipients, along with a Delivery metrics row (sent, delivered, unique opens, unique clicks, bounced) once metrics exist. Below that, a paginated Recipients audit table lists each recipient's address, status, and the times it was sent, delivered, and first opened, plus any last error. To re-open the full composer read-only, use View campaign in the header.
Updated