Broadcasts needs turning on for a project before the tab appears, from Settings → Project. It’s also a paid feature, so it’s locked once your trial ends.
Before you start
You need two things:- An approved template. WhatsApp doesn’t let businesses send whatever they like to people who haven’t messaged recently — every broadcast goes out as a template that Meta has reviewed and approved. Approval takes minutes for a utility template and can take hours for a marketing one, so do this first.
- Contacts to send to. Either from people who’ve messaged your bot, or imported in bulk.
Building a broadcast
Click New Broadcast and you’ll go through six steps.1
Template
Name the broadcast — for you, not your customers — and pick your template. Only approved templates appear here.If the template you pick leads with an image, video or document, a picker appears so you can choose the file to send with it. Pick from the media already in your project, or upload something new. Paige fetches the file when the broadcast actually launches rather than when you pick it, so replacing the file in Storage before you send means the newer one goes out.
2
Variables
If your template has
{{1}}-style placeholders, fill each one. Two choices per placeholder:- Static text — the same words for everyone.
- Contact field — each person’s own Full name, Phone number, or Username.
3
Audience
Either pick one or more saved segments, or build a one-off filter here from tags. The tag box lists the tags your contacts already carry with a count beside each, so you can see what you’re about to reach before you pick — see Tags. Opted in only is on by default — leave it that way.Picking several segments reaches everyone in any of them, not only the people in all of them. Somebody who sits in two of your segments still receives one message, not two — Paige works out the combined audience for you. There’s a limit on how many segments one broadcast can target, and the picker tells you when you’ve hit it.A live count tells you how many people you’re about to reach. If it says zero, you can’t continue.
4
Schedule
Pick a date from the calendar and a time from the list, or save it as a draft to come back to.Times are offered every fifteen minutes —
09:00, 09:15, 09:30, 09:45. That’s not a rounding of your choice: Paige checks for due broadcasts on a fifteen-minute cycle, so a finer time couldn’t be honoured anyway. Slots that have already passed today aren’t offered, and neither are the ones your clock skips on the morning the clocks go forward.Two switches also live here:- Send in batches (waves) — set how many to send now and Paige holds the rest back for you to release later (see Sending in batches).
- Auto-retarget quality-limit failures — off by default. Turn it on and Paige automatically tries the recipients WhatsApp quality-blocked again about 24 hours later (see Auto-retargeting quality-limit failures).
5
Test Send
Send the real template to up to three numbers first. It doesn’t touch your audience or your daily cap, and it’s the only way to see the thing exactly as a customer will. Worth the thirty seconds.A test that sends successfully also shows up in that number’s thread in the Conversations tab, so you can look at exactly what the person received rather than trusting the preview.
6
Confirm
Review it all, including the estimated WhatsApp cost, and save.
Launching and scheduling
You send a broadcast one of two ways:- Launch it now. A finished draft has a Launch action in the broadcast list — click it, confirm, and the broadcast goes out straight away.
- Schedule it. Give it a date and time on the Schedule step and Paige launches it for you when that time comes.
Sending in batches (waves)
If you have a large audience and want to test the waters first, switch on Send in batches (waves) on the wizard’s Schedule step and choose how many to send now. When the broadcast launches, Paige freezes the whole audience and sends only that first batch — everyone else is put on hold. Your counters still cover the full audience on the one broadcast, so you never have to stitch several broadcasts together. The broadcast then shows as Partially sent rather than jumping to Completed. Open it and a panel tells you how many are still held — 200 recipients remaining, say — with a Send now / Schedule toggle for releasing them. Release as many waves as you like, whenever you like. Each time, anyone who has opted out since you launched is skipped automatically. The broadcast only marks itself Completed once the last held recipient has been released and finished sending.Releasing a wave now
Leave the toggle on Send now, then either:- Type how many to release and click the send button, which counts back what you typed — Send 50 more.
- Or click Send all remaining to release everyone left.
Scheduling a wave for later
Switch the toggle to Schedule and you get two fields instead:- How many — leave it blank to schedule everyone remaining (the placeholder reads
All), or type a number. - Send at (your local time) — the date and time to release it. It has to be in the future.
The audience is fixed at launch. Contacts who join it after you launch aren’t added to later waves — to reach new people, create a fresh broadcast.
What it costs
Paige doesn’t charge for broadcasts, and they don’t use your credits. Meta bills your connected number directly for the messages, and the estimate on the Confirm step is a rough guide rather than a quote. The one limit is a daily message cap on each project, which starts at 1,000 messages a day and resets at midnight UTC. It’s a per-project setting rather than a fixed platform ceiling, so a project can be raised above the default. There’s no self-service control for it — ask the Help Agent if 1,000 a day isn’t enough for you. You can see where you stand without doing the arithmetic: the Broadcasts tab always shows how much of today’s allowance you’ve used, and the wizard’s Confirm step tells you how much is left before you commit. If your audience is bigger than the remainder, you know up front that the overflow goes out the next day.When a broadcast hits the cap
A broadcast that runs out of allowance mid-send pauses visibly and picks up where it left off. You get a notification, its badge changes from Sending to Paused — daily limit, and a banner on both the broadcast list and the broadcast itself says how many messages you’ve used and the exact time the rest will start going out. Nothing is lost — the held recipients are still queued, and they go out on their own when the allowance resets. There’s nothing to click.The cap is per project, not per broadcast. When one broadcast pauses, every other broadcast in that project is waiting too.
Self-hosted projects don’t show the allowance or the forecast. Their sending goes through their own backend, so Paige isn’t the one counting.
Who actually receives it
Two groups are always excluded, whatever your filter says:- Anyone who opted out. This is checked when the broadcast sends, not when you build it — so someone who sends STOP after you schedule is still excluded.
- Numbers confirmed not to be on WhatsApp.
Watching it go out
Open a broadcast to see live counters updating as it goes. Total is the size of the whole audience, and next to it sit six status tiles: Queued, Sent, Delivered, Read, Failed, and Canceled.Those six are buckets, not totals. Each person sits in exactly one, and they move along: Sent → Delivered → Read. So a broadcast everyone has read shows Sent: 0. That’s success, not failure.
When a campaign reached nobody
If a broadcast finishes without matching a single contact, it’s marked Reached nobody — as a chip on the Broadcasts list and as a banner on its own dashboard. It’s called out explicitly because an empty send otherwise looks exactly like a successful one: a finished campaign, a green tick, no failures. The difference is that nothing happened. This almost always means the audience didn’t select anyone — a tag no contact actually carries, a name or number filter that matches nothing, or everyone who did match having opted out. Nothing was sent, so nothing was charged and none of your daily WhatsApp allowance was used. Open the segment, check its filters against your Contacts list, and send again once it selects the people you expect.On a project running its own backend, check the tags first. Your backend decides who matches, and a tag it stores in a different shape from the way Paige writes it will quietly match nobody.
Downloading the recipient list
Next to the filter is a Download CSV button. It saves the recipient list as a spreadsheet you can open in Excel or Google Sheets, or feed into another system — each person’s name, number, WhatsApp status, failure reason if any, the wave they went out in, how many attempts were made, and the times things happened. It respects the filter you have on. With Failed selected you get only the failures, which is the quickest way to work through bad numbers offline. Phone numbers keep their leading+ rather than being mangled into plain numbers by the spreadsheet.
The file is a snapshot of that exact moment — deliveries and reads keep arriving from WhatsApp for a while after a send — so the filename carries the date and time, and you can download again later for an updated picture.
Download CSV is shown to the project owner and workspace admins only, because the file contains everyone’s contact details. If you’re a member and don’t see the button, that’s why, not a bug.
- A broadcast that hasn’t started sending. There’s no recipient list yet to export.
- A broadcast that failed before it built its list. You get a short explanation instead. An empty spreadsheet would look like nobody was in your audience, when in fact the send never got started.
Exporting several broadcasts at once
For a monthly report, you don’t need to open each campaign. Export sits at the top of the Broadcasts list, next to New Broadcast. Tick boxes aren’t cluttering up the rows until you need them — click Export (or Select) and they appear. Tick the campaigns you want, then confirm. The button stays greyed out until you’ve picked at least one, and tells you so if you hover it. A window then asks what to include.- Campaign summary — one spreadsheet row per campaign with its status, template, audience, every count (total, queued, sent, delivered, read, failed, canceled, held), the estimated cost, and all the timestamps.
- Recipient detail — a ZIP containing one recipient list per campaign (the same file Download CSV gives you), plus the summary if you ticked it, plus a short README.
Cancelling and retrying
Cancel appears on a broadcast that is Scheduled or Sending, and stops it. Anything already sent has left and can’t be recalled — cancelling only stops what’s still queued, including anyone held back for a later wave. It can’t be undone. You’ll be asked to confirm, and the confirmation counts exactly who is affected — the queued recipients plus any held for a later wave. Since cancelling is final, and sending the same campaign again means building a new broadcast, it’s worth reading those numbers before you go ahead.Don’t confuse this with Cancel schedule in the wave panel, which only clears a pending wave release and leaves the broadcast alone. See Scheduling a wave for later.
Reusing a broadcast
Sending much the same campaign again — a monthly newsletter, a weekly special — doesn’t mean rebuilding it. A finished broadcast has a Duplicate action that opens the wizard already filled in with what the original used. It isn’t a blind copy. Paige re-checks everything against today: a template that’s since been rejected, a segment that’s been deleted, a media file that’s gone. Anything that no longer holds up is flagged for you to fix rather than silently carried over — which is the failure mode a plain copy would have.Nothing is saved until you finish the wizard. Clicking Duplicate only prepares the copy and shows you what changed. Close it and there’s no half-finished broadcast left behind — so you can never accidentally launch one that’s still missing its audience or its media.
Auto-retargeting quality-limit failures
WhatsApp sometimes blocks part of a broadcast because of your number’s quality rating, or because a particular person has already received too many messages from you. Those recipients show as Blocked by quality limits, and they’re usually reachable again once a day has passed. Auto-retarget quality-limit failures on the wizard’s Schedule step does that for you. It’s off by default. The switch explains itself in-product:If WhatsApp blocks some recipients for quality or per-user messaging limits, automatically try them again about 24 hours later. You can cancel the retry any time before it sends.Here’s what actually happens when it’s on:
- About 24 hours after the original broadcast finishes, Paige creates a follow-up broadcast aimed at exactly the recipients WhatsApp quality-blocked.
- It uses the same template and the same variable settings as the original.
- The follow-up appears in your broadcast list under the original’s name with (auto-retarget) on the end — Winter sale (auto-retarget) — in Scheduled status. You can open it, check it, and Cancel it like any other scheduled broadcast before it sends.
It retries only the quality-limit bucket. Numbers that aren’t on WhatsApp, a rejected template, or any other failure are never retargeted — retrying those would just fail the same way. For rate-limited sends, use Retry failures instead.
- It happens once. A retarget is never itself retargeted, so you can’t end up in a retry loop.
- It’s capped at 500 contacts. If more than 500 recipients were quality-blocked, the follow-up covers the first 500.
- Paige waits before it looks. WhatsApp reports quality failures asynchronously — a message that looked sent can flip to failed minutes later — so Paige leaves about 2 hours after the original completes before working out who to retarget. The follow-up still sends around 24 hours after the original finished.
Your contacts and their tags
The Contacts sub-tab is your address book: everyone this project can broadcast to. Each person shows their name, their number, the tags they carry, whether they’re opted in, and whether WhatsApp has confirmed the number is reachable. Search by name or number at the top, and page through 50 at a time. Tags are the point of this screen. A tag is just a label —vip, interested, trial — and tags are what segments use to find people later.
Filtering by tag
Click any tag on a contact to see only the people who carry it. The line above the list tells you how many that is, and that number always matches what the same tag reports in the Tags view — it’s the same question asked twice. Clear the filter with the × on the tag chip.Tagging several people at once
Tick the contacts you want, or use Select all on this page, then choose Add tag. Type a name — or pick one you already use from the list underneath — and it’s added to everyone you selected. Their existing tags are kept. You can tag up to 500 people in one go. For more than that, tag them in batches, or ask the Broadcasting agent to tag a whole audience for you.Tagging in bulk is limited to the project owner and workspace admins. Everyone else can still see contacts and tag people one at a time from the Conversations tab.
Managing your tags
Switch to the Tags view to see every tag on this project with how many contacts carry it. Click one to jump straight to those people. The pencil renames a tag everywhere it’s used; the trash removes it from every contact that carries it. Deleting a tag never deletes contacts — but any segment filtering on that tag stops matching them, so check your segments afterwards.Two things about tag names
Tags are matched exactly, but capitals in what you type don’t matter. Paige saves every tag in lower case, soNewsletter and newsletter land on the same one. A segment looking for newsletter matches contacts tagged newsletter.
Older tags with capitals are listed separately. If contacts were tagged before Paige started saving in lower case, you may see VIP and vip as two rows with two counts — because that is genuinely how they’re stored, and how your segments match them. Paige speaks up when this affects you, showing the count, because tagging the lower-case spelling will not join those people.
You can fix it: rename VIP to vip, and Paige tells you it takes two steps — the contacts move to a temporary tag first, then onto vip — and does both for you. Nobody loses the tag along the way. If the second step doesn’t go through, your contacts are safely on the temporary tag and Paige tells you its name so you can finish from the same place.
If tagging says the project needs an update
If a message tells you that tagging many contacts at once needs an update for this project, open Settings → Project and click Repair broadcasting, then try again. Sending broadcasts is unaffected in the meantime. If tagging stops part-way through, Paige tells you how many contacts were already updated, so you know exactly what changed.Opting out (STOP) and back in (START)
Your bot handles opt-outs on its own. If someone replies STOP, UNSUBSCRIBE, OPT OUT, or OPTOUT, Paige marks them opted out immediately, before the message reaches your bot. They’re excluded from every broadcast from then on — including ones you’ve already scheduled, because the check happens at send time. The match is case-insensitive and forgiving of extra spaces and punctuation, so “stop”, ” STOP. ” and “Unsubscribe” all work. But the word has to start the message and stand on its own, so “please don’t stop messaging me” won’t trigger it. Your customer gets no confirmation reply when they opt out — they send STOP and hear nothing back. That’s worth knowing if someone asks whether it worked.Coming back
Someone who opted out by mistake, or who later changes their mind, can re-subscribe themselves by replying START — or UNSTOP, SUBSCRIBE, or OPT IN. They’re marked opted in again, they get a short confirmation reply this time, and they’re back in future audiences as normal. The same rules apply: the word has to begin the message and stand alone, so “can we start tomorrow?” and “startup” go to your bot as ordinary messages.Only the contact can do this, by messaging you. There’s deliberately no button for you to opt someone back in on their behalf — someone asking to be re-subscribed should send START themselves, which is simpler for you and the version that keeps you on the right side of WhatsApp’s rules.
This applies to bots Paige hosts. If you run your own backend, opt-out handling is yours to implement.
Next
Segments
Save an audience once and reuse it across broadcasts.
Broadcasting agent
Build segments, draft templates, and assemble campaigns by chatting.
Import contacts
Bring a list of numbers in from a CSV.
Message templates
Write and submit the templates a broadcast needs.
