Campaign types
There are two channels a campaign can send on:
Email is the default. A campaign can also carry an in-app version alongside its email, so the same message reaches wallet-first users who never gave you an address. See In-app campaigns.
For a sequence of messages over time, build an automation with
wait steps rather than a campaign.
Lifecycle
1
Draft
Created and editable. Every new campaign starts here.
2
Validate
Checks name, audience, subject, sender, body, and unresolved merge fields.
3
Scheduled or Sending
Launching moves a campaign to
SENDING and starts dispatch.4
Sent
Dispatch finished. Analytics accumulate from here.
Audience
An audience is a set of contacts plus a set of segments. Both are combined, so a contact matching either is included. Segment criteria support three filters: tags, minimum contact score, and whether a wallet address is present. Before sending, recipients are filtered by:- Unsubscribes. Contacts who opted out of email are removed.
- Suppression. Hard bounces and complaints are dropped, re-checked at the moment each message is dispatched, not just at launch.
- Unconfirmed double opt-in. Contacts captured by a form who haven’t clicked the confirmation link are held back.
- Smart sending. If enabled, anyone emailed in the last 10 hours is skipped.
The estimate is an upper bound. Because suppression is re-checked at dispatch, a contact who unsubscribes or bounces after you launch is dropped from later sends, so the number actually sent can be lower than the estimate. On Pay as you go, the launch charge is reconciled against what actually went out, and the difference is refunded.
Scheduling
Schedule a campaign for a future time and it sends on its own. A scheduler checks every few minutes and launches any campaign whose scheduled time has passed, through the same validation and allowance checks as a manual launch. Because a scheduled launch still runs those checks, a campaign that would fail validation, or whose send wouldn’t fit your allowance, won’t go out at its scheduled time. Confirm it validates cleanly before you rely on the schedule.Tracking
Open and click tracking are on by default. Smart sending and UTM parameters are off.
UTM parameters never overwrite ones already present on a link, so author intent wins. Links that are anchors,
mailto:, or tel: are left alone.
Tracking requires a real per-recipient delivery, so previews and test sends carry no pixel and no click wrapping. Test-send opens will never show up in analytics.
In-app campaigns
A campaign can carry an in-app version alongside its email, sent to the wallet-reachable part of the same audience. Content resolves from the request, then the campaign’s stored in-app content, then a linked in-app template. Recipients are matched by wallet rather than email, honor a separate in-app opt-out, and skip the email suppression list. Anyone whose message renders empty is skipped rather than failing the send. See In-App Notifications for how clients receive these.Limits
Each plan includes a monthly email allowance and a monthly in-app allowance, on top of one bundled price.
The allowance is checked at launch against your estimated recipients plus what you’ve already sent this calendar month, and the send is blocked if it wouldn’t fit. Warnings appear at 75% and 95%.
On Pay as you go there’s no monthly cap. Email and in-app pushes are each metered at $1 per 1,000 against your prepaid balance, so a launch is blocked when the balance won’t cover it. Top up before a large send. See Plans and billing for the full model.
Where to go next
Create a campaign
Audience, content, and the validation checklist.
Template builder
Dynamic tags, conditionals, loops, and click-to-tag.
Preview and test
Catch broken personalization before launch.
Launch and monitor
What the metrics mean and how they’re derived.

