WhatsApp Marketing Not Delivered? It's Not You

WhatsApp Marketing Not Delivered? It's Not You

Your blast says delivered to half your list and support finds nothing wrong. Meta's per-user marketing cap is the reason, and retrying makes it worse.

Siti NabilahSiti NabilahGeneral
22 Aug 26
10m
Part of the series:WhatsApp Blasting Malaysia: The Complete 2026 Guide for SMEs (Without Getting Banned)

A furniture retailer in Johor Bahru sends a 9.9 promo to 8,000 contacts. The campaign report says roughly 5,200 delivered. The account is healthy, the template is approved, the quality rating is green. Support finds nothing wrong, because nothing is wrong. This is the most confusing version of a WhatsApp marketing message not delivered: no ban, no rejection, just a quiet gap between what you sent and what arrived.

The cause is usually Meta's per-user marketing limit, surfaced in the API as error 131049. And here is the part almost nobody tells you: the limit is not on your account. It is on the recipient's inbox, counted across every business messaging them.

Key Takeaway

When a WhatsApp marketing message is not delivered with error 131049, Meta has capped how many marketing templates that specific recipient can receive from all businesses combined, so your account status is irrelevant. Resending within 24 hours can extend the block rather than clear it. The durable fix is targeting engaged contacts and moving transactional content to utility templates, not sending harder.

Why Was My WhatsApp Marketing Message Not Delivered?

If the message used a marketing template and failed without any account warning, the most likely reason is that the recipient hit Meta's per-user marketing template limit. The API returns error code 131049 with the message "This message was not delivered to maintain healthy ecosystem engagement" (Meta Cloud API error codes).

In plain terms: Meta decided that this person has received enough marketing from businesses recently, and yours was the one that arrived after the shutter came down.

Three things make this failure mode different from every other delivery problem:

It is per recipient, not per account. Contact A gets your message, contact B does not, from the same campaign.
It counts all businesses. If five other brands messaged your customer today, their sends used up the allowance before yours arrived.
It is invisible on your side. Your quality rating, messaging tier and template status all stay green while it happens.

This is why the JB retailer's report looks the way it does. The 2,800 contacts who missed the blast were not unreachable. Their marketing inboxes were full for the day, mostly with other brands' 9.9 promos.

If your delivery problem comes with an account warning, a template rejection, or a falling quality score, that is a different issue: read our guide to the WhatsApp Business quality rating and messaging limits for that path.

How Does Meta's Per-User Marketing Cap Work?

Meta sets an adaptive limit on how many marketing-category template messages one WhatsApp user can receive in a rolling window, across all businesses. The exact numbers are unpublished and vary by user: someone who reads and replies to business messages has a higher allowance, while someone who ignores or deletes them can be capped after just one or two marketing templates a day (documented across BSP helpdesks, including WANotifier's error 131049 guide).

The direction of travel matters more than the exact threshold. Meta paused marketing templates to US numbers entirely from April 2025 (documented across BSP helpdesks), and has been tightening per-user limits everywhere else since. WhatsApp is protecting the one thing that makes it valuable to advertisers: people still open it. Marketing that treats it like an SMS gateway is being throttled at the recipient's door.

Here is what the cap does and does not touch:

Message typeSubject to per-user cap?Notes
Marketing template (blast/promo)YesThe only category the cap applies to
Utility template (order update, reminder)NoTied to an existing transaction or request
Reply inside the 24-hour service windowNoFree-form conversation is never capped
Authentication template (OTP)NoSeparate category, separate rules

Notice what that table implies. A booking reminder, a delivery update or a payment link sent as a utility template will land even when the same person's marketing allowance is exhausted. If you have been sending transactional content under marketing templates because that is what got approved first, you are paying the cap (and, from October, higher per-message prices) for messages that never needed to be marketing at all.

Why Does Retrying Make the Problem Worse?

The instinctive response to a failed send is to send again. With error 131049, that instinct actively hurts you. Meta's guidance is to wait at least 24 hours before resending to a capped user; repeated attempts inside that window can extend the unavailability by up to another 24 hours (Meta Cloud API documentation).

24 hours
minimum wait before resending to a capped recipient

There is a bigger version of this mistake, and we see it regularly inside MSME sales operations. A team notices delivery dropping and reaches for one of three fixes: register a new template and resend, jump the volume to compensate, or move the campaign to a fresh number. Those are precisely the three moves we have observed happening right before accounts get restricted. The delivery gap was a recipient-side cap that cost nothing but patience; the "fix" created an account-side risk that can cost the number.

So treat a low delivery rate as information, not as an obstacle. It is telling you which part of your list the platform considers unengaged. That reframe changes the metric itself: delivery rate on WhatsApp is not a measure of whether your blast tool works, it is a measure of how well you targeted.

Frequently Asked Questions

Error 131049 ("This message was not delivered to maintain healthy ecosystem engagement") means Meta blocked a marketing template because the recipient reached their per-user marketing message limit, counted across all businesses that message them. It is a recipient-side cap, not a problem with your account or template.
No. Error 131049 says nothing about your account health. Your quality rating, messaging tier and templates are unaffected. However, reacting to it badly, for example by blasting retries, switching to a fresh number or spiking volume, can create real account risk where none existed.
Meta does not publish the number, and it varies per user based on how they engage with business messages. Highly engaged users have generous allowances, while users who ignore marketing can be capped after as few as one or two marketing templates a day across every brand combined.
No. The cap applies only to marketing-category templates. Utility templates such as order updates, appointment reminders and payment links deliver normally, and free-form replies inside the 24-hour customer service window are never capped.
Send before the peak, not on it. During 9.9, 10.10 and 11.11 every brand blasts the same inboxes, so per-user allowances run out early in the day. Campaigns sent two or three days ahead, targeted at contacts who engaged in the last 90 days, reach far more people than a bigger blast on the sale date itself.

How Do You Fix a Blast That Only Half Delivers?

The fix is structural, not technical. You cannot appeal the cap, buy your way past it, or route around it with another sender. You can only become one of the businesses whose messages recipients actually want, because that is who Meta lets through.

How to Fix WhatsApp Marketing Messages Not Delivered

Read the error codes, not the delivery percentage: export the campaign or API report and separate 131049 (recipient capped) from opt-outs and genuinely unreachable numbers, because each needs a different response.
Stop all retries for 24 hours: resending to capped contacts inside the window can extend their block and burns template sends you are paying for.
Cut the list to engaged contacts: rebuild the segment around people who opened, replied or bought in the last 90 days, and let the rest go dormant instead of dragging them through every campaign.
Recategorise transactional content as utility templates: order updates, reminders and payment links do not belong in the marketing category and deliver even to capped users.
Move campaigns off the peak day: schedule promos two or three days before 9.9-style sale dates, when recipient allowances are still open.
Track reply rate per segment: prune any segment that consistently ignores you, because their silence is what teaches Meta to cap your future sends.

Steps 3 and 6 are where most teams fall down, not because they disagree but because their list lives in a spreadsheet with no engagement data attached. If you cannot see who replied in the last 90 days, you cannot build the segment. This is the practical case for running campaigns from a system like Raion HUB that keeps send history, replies and tags on every contact: the "engaged in 90 days" segment becomes a filter, not a weekend of manual detective work.

The template itself matters too. A message that gets replies does double duty here: the reply opens a free 24-hour service window, and the engagement raises that recipient's future allowance for you. We have collected the patterns that work in our guide to WhatsApp message templates that get replies.

What Does This Mean for 9.9, 10.10 and 11.11 Campaigns?

Here is the uncomfortable arithmetic for Malaysian retailers: the days you most want to blast are the days the cap bites hardest. On a normal Tuesday, your customer might receive one or two marketing templates and your message lands fine. On the morning of 11.11, every marketplace, fashion brand and electronics store is hitting the same inbox, and the allowance is gone by breakfast.

ApproachOrdinary dayMega-sale day
Blast full list on the dayMostly deliversHeavy 131049 failures, wasted spend
Engaged segment, sent 2-3 days earlyDeliversDelivers, and beats competitors to the inbox
Retry failures same dayExtends blocksExtends blocks at scale

The early send is not a compromise, it is an advantage. A promo that lands on 6 September sits in an uncrowded inbox with the customer's full attention. The same promo on 9 September is one of a dozen, if it arrives at all. A boutique in Bangsar that moved its 9.9 teaser to the Friday before reached contacts its bigger competitors could not touch three days later.

For the full compliance and deliverability picture, from template approval to volume pacing, see our complete WhatsApp blasting guide for Malaysia.

The bottom line

Key Takeaway

A WhatsApp marketing message not delivered with error 131049 is Meta capping the recipient, not punishing your account, and no amount of resending will push it through. Treat delivery rate as feedback on targeting quality: tighten your list to engaged contacts, move transactional messages to utility templates, and send ahead of the crowded sale days. The businesses that respect the cap end up being the ones the cap lets through.

Ready to grow with Raion

Send fewer blasts. Reach more inboxes.

Raion HUB segments your list by who actually opens and replies, so campaigns go to engaged contacts instead of burning Meta's per-user cap.