Broadcast campaigns
Send WhatsApp campaigns to thousands of customers with personalised variables, real delivery reporting reconciled from Meta, failure retries and reply tracking.
A broadcast sends one approved template to many recipients, personalised per person, with delivery reporting that comes from Meta rather than from optimism.
Creating a campaign
Broadcasts → New Broadcast.
- Name it — for your own reporting
- Pick an approved template — only
APPROVEDones appear - Add recipients — one phone number per line
- Fill variables per recipient, if the template has any
- Send
Numbers are normalised automatically: a bare 10-digit Indian mobile gets 91 prepended, a leading zero is dropped. Invalid numbers are rejected before sending rather than silently failing.
Personalisation
If your template has variables, each recipient gets their own values, so a thousand people receive a thousand individual messages rather than one obviously-bulk blast.
Template: Hi {{1}}, your {{2}} service is due on {{3}}.
919812345678 | Ramesh | Splendor | 14 March
919887654321 | Lakshmi | Xpulse | 16 March
What happens when you send
The campaign moves to sending and messages go out on a paced queue — roughly 12 per second — so a large burst stays inside Meta's throughput limits. You do not configure this.
Sending continues in the background. You can close the page.
Reporting
Counts update live as Meta's status webhooks arrive:
| Count | Meaning |
|---|---|
| Sent | Meta accepted it |
| Delivered | It reached the handset |
| Read | The customer opened it |
| Failed | It did not get through |
| Replied | The recipient messaged you back afterwards |
These are reconciled from Meta's own delivery receipts, not inferred from a successful API call. A message accepted by Meta but never delivered shows as sent-but-not-delivered, which is the truth.
Open any campaign for the per-recipient breakdown, including the specific failure reason on each failed row.
Retrying failures
Retry failed re-sends only to recipients who failed, leaving successful ones alone. Useful when failures were transient — a phone switched off, a temporary network issue.
If a number failed because it is not on WhatsApp, retrying will not change that.
Why messages fail
| Reason | What it means |
|---|---|
| Number not on WhatsApp | The recipient has no WhatsApp account |
| No payment method | Your WhatsApp account has no billing set up — see Billing |
| Messaging limit reached | You hit your daily business-initiated cap |
| Template paused | Meta paused the template for poor quality |
| User blocked business | They blocked you |
Keeping your quality rating
Broadcasts are the fastest way to damage a WhatsApp number. Meta watches block and report rates.
- Only message people who gave you their number. Purchased lists will get your number restricted.
- Match the category. Promotions must be MARKETING.
- Honour opt-outs immediately. Someone who says stop must be removed.
- Do not send the same campaign repeatedly to people who never respond.
- Watch your failure count. A rising rate is an early warning.
A number throttled to a lower tier takes weeks to recover. It is not worth one aggressive campaign.
Scheduling and automation
The dashboard sends immediately. For scheduled or triggered sends — reminders a day before an appointment, follow-ups a week after a purchase, re-engagement after sixty days of silence — either:
- Use the Developer API from your own scheduler, or
- Ask us for a custom module that runs the schedule on our side
We build scheduled campaign jobs regularly and they are inexpensive to add.
Need it to work differently?
The platform is the starting point, not the ceiling. Tell us what your process needs and we will build it — at a price we will negotiate.