Search for how to send bulk WhatsApp messages without getting banned and you will find a lot of advice about bans. Most of it is fine. Almost none of it describes what actually goes wrong.
Here is the honest version. If you are sending through the official WhatsApp Business Platform, with approved templates, to people who agreed to hear from you, being banned is unlikely and almost entirely within your control. The thing that will actually happen to your campaign is quieter than a ban, arrives with no warning, and does not show up as an error your recipient could ever see: Meta accepts your message and then declines to deliver it.
Banned, blocked, throttled: three different failures
These get used interchangeably and they are not the same thing. Telling them apart is most of the skill, because the fix for each is different and the fix for one makes another worse.
- Banned: Meta restricts your number or your business account. This is a policy outcome, not a volume outcome, and on the official API it is rare unless you did one of a short list of things.
- Blocked: an individual recipient blocks you. There is no error for this. The message is accepted and simply never delivered, so it sits at one tick forever. You cannot see who blocked you, and neither can anyone else.
- Throttled: Meta accepts the message and declines to deliver it, because that recipient is over their limit for marketing messages. Your account is fine. Your template is fine. The message just does not arrive.
The last one is the one nobody warns you about, and it is the one most bulk senders are actually experiencing when they say they think they have been banned.
The failure you will actually hit: error 63049
Every WhatsApp user has a rolling limit on how many marketing-category template messages they will be delivered. It counts every business messaging them, not just you, and it is far tighter for people who never engage. When a recipient is over that limit, Meta takes your message and quietly drops it. That is error 63049, and it is the single most common reason a campaign underperforms for reasons nobody can explain.
This is also why the same campaign appears to work in one country and fail in another. It is almost never the country. It is the difference between two audiences. A list you have messaged three times with no replies is near its cap; a fresh list that has never heard from you is not. Same template, same sender, wildly different outcome, and the country is a coincidence of which list you happened to send to.
Two things make it worse. A sender whose quality rating has dropped gets suppressed sooner. And each further send to a silent list digs the hole deeper, which means the instinctive response to a disappointing campaign, sending it again, is the one guaranteed to fail harder than the send before it.
What actually gets an account banned
Throttling is gradual and recoverable. Bans are a different category, and they come from policy violations rather than volume:
- Sending through unofficial tools: QR-linked browser extensions, WhatsApp Web automation, or modified apps. This is the big one.
- Messaging people who never opted in, including purchased and scraped lists.
- Dressing a marketing message as a Utility template to dodge the cap.
- Omitting an opt-out from marketing messages, which is a policy violation rather than poor manners.
- Prohibited content: gambling, adult material, weapons, anything deceptive.
Take the first one seriously, because a whole category of cheap bulk-sending tools is built on it. If a product asks you to scan a QR code from WhatsApp Web to start sending, it is not using the WhatsApp Business Platform. It is automating the consumer app, which is against WhatsApp's terms, and the ban risk is not a tail risk. Some of those tools ship a guide on how to ramp up slowly to avoid getting banned, which tells you everything about how the vendor expects it to go.
The quality rating is the number to watch
Meta rates each sender green, yellow or red, based on recipient behaviour over a rolling seven-day window, chiefly blocks and reports. It is the closest thing to an early warning you get.
- Green: healthy. Your messaging limit can still scale up.
- Yellow: your messaging limit is frozen while Meta looks. It usually clears within about a week of clean traffic.
- Red: your limit can be cut and the account reviewed. Recovery is slower and may need Meta's help.
A low rating also makes 63049 suppression bite sooner, so a degraded sender and a throttled campaign tend to arrive together. The counterintuitive part is the recovery: because the rating is computed from recent traffic, the fastest way to repair it is usually to stop sending from that number for a while, not to send something better.
Warm up a new number
A brand new sender that starts a campaign to tens of thousands of strangers on day one is the exact profile that gets limited. Start small, in the low hundreds, and increase over a few weeks, watching the rating rather than the calendar. If it moves to yellow, stop increasing until it clears. This is unglamorous and it is the difference between a sender that scales and one that is stuck at tier zero arguing with support.
What counts as consent, and why your clean list does not
Meta requires active, per-number consent: a deliberate act by that person, naming your business, saying what they will receive and how often, and how to stop. A list can be accurate, validated and lawfully obtained under your local law and still fail this test. Accuracy is not consent. Purchased and scraped lists never qualify, however clean they are.
What does qualify:
- A form, checkout box or QR code where they ticked an unticked box next to the disclosure text.
- Replying to you, or tapping a button in one of your messages.
- An import carrying proof collected elsewhere, where you kept the date, the source, and the exact wording they agreed to.
That last detail matters more than it looks. If your consent record is a date and a checkbox, you have a timestamp. If it is the wording someone actually responded to, you have evidence. The difference only shows up when someone asks you to prove it, which is the worst moment to discover which one you have.
The approach that works on a cold list
Split the first contact in two. Send a small opt-in ask: one question, your business name, what they would get and how often, and reply STOP anytime. Then send the real pitch only to the people who said yes.
This looks like less reach and is usually more. Everyone who ignores the ask receives one small message instead of a heavy pitch, so their cap is barely touched and far fewer of them block you. Everyone who says yes has just opened a 24-hour service window, which means the message that follows is exempt from the marketing cap entirely and can be free-form and rich. And a high reply rate is precisely the signal that lifts your quality rating rather than sinking it.
It is worth being clear about why this works, because it is not a trick. A reply is worth far more than a delivery: it converts a throttled channel into an open one for a day.
Read the error codes, because most failures are not about your message
A failed send that shows a bare number tells you nothing. A failed send you can read tells you whether to fix your list, your template, or your strategy:
- 63049: Meta declined to deliver a marketing message. Do not resend the same template to the same person.
- 63024: the number is not reachable on WhatsApp at all. That is list decay, not suppression, and it says nothing about your sender.
- 63016: a free-form message was sent after the 24-hour window closed. Send an approved template instead.
- 63028 and 21656: template variable problems. A merge field is missing or does not match the approved template. Content issues, not policy ones, and they do not affect your rating.
- No error at all, but never delivered: that is a block, or a throttle you cannot see. It is the only failure with no code.
A pre-send checklist
- Every recipient opted in, and you can produce the wording they agreed to.
- The template category is what Meta actually approved, not what you requested.
- Marketing templates carry an opt-out.
- The sender's quality rating is green, and you checked today rather than last month.
- A new number has been warmed up, not switched on.
- Contacts who ignored the last two campaigns are excluded, because they are the ones most likely to block.
- Cold lists get an opt-in ask first, not the pitch.
- You can stop a send that is going wrong, mid-flight, without waiting for it to finish.
That last one is worth insisting on. Most delivery disasters are not a single bad message, they are a bad message repeated several thousand times, and the gap between noticing and stopping is where the damage happens.
About the numbers you will see quoted
Guides on this subject are full of confident statistics: open rates, ban counts, the exact number of marketing messages a person can receive per day. Very few of them cite a source, and Meta does not publish the cap. Treat those numbers as illustrative rather than true, including when they flatter the channel.
What you can actually rely on is narrower and much more useful: the error code your send returned, the quality rating on your sender, and whether the people you are messaging reply. Those three are measured rather than claimed, and they will tell you more about your next campaign than any benchmark will.
Where the tooling should help
None of the above is difficult, but nearly all of it is invisible in most sending tools, which is why so many senders learn it the expensive way. WhatsApp Templates surfaces the category Meta actually approved rather than the one you asked for, turns provider failures into plain language instead of a bare code, records consent as the wording someone responded to rather than a timestamp, and gives you a brake that stops a send already in flight. None of that makes you immune to a throttle. It does mean you find out on the first hundred messages rather than the last thousand.
Want to launch campaigns like these? Request early access to the full template library.