Recipients & Tracking
Each broadcast carries its own list of recipients and live counters so you always know how a campaign is progressing.
Recipients
A broadcast holds up to 5000 recipients. Each recipient has:
| Field | Description |
|---|---|
chatId | The recipient’s WhatsApp chat id (required). |
name | Optional display name used for {{name}} personalization. |
Each recipient also tracks its own delivery state:
| Recipient status | Meaning |
|---|---|
pending | Not yet sent. |
sent | Delivered to WhatsApp. |
failed | The send failed (for example, an invalid number). |
Live progress
As the worker sends, Loopwave updates campaign counters — total, sent, and
failed — and emits a real-time broadcast.progress update. Your dashboard reflects
progress without a refresh, and you can subscribe to the same event via
webhooks to track campaigns in your own systems.
{
"event": "broadcast.progress",
"data": { "id": "...", "status": "sending", "sentCount": 142, "failedCount": 3, "total": 500 },
"timestamp": "2026-06-29T10:15:00.000Z"
}Cancelling
An admin can cancel a broadcast while it’s sending. The worker stops on its next tick,
the status becomes cancelled, and any remaining pending recipients are not sent.
Because broadcasts are paced (one recipient per tick with randomized gaps), a large campaign takes time to complete by design. The live counters let you watch it work through the list safely.
See the exact delays, daily cap, and pause behavior.