ZapUp
TroubleshootingReviewed November 2026

WhatsApp error 131049, “not delivered to maintain healthy ecosystem engagement”: what it means and what to do

Error 131049 is WhatsApp saying no to one marketing message for one customer, because that customer has already received as many promotional messages as WhatsApp allows for now, from every business combined. It is not a problem with your number, your account or your template. The message is simply held back, you are not charged for it, and the same customer can usually be reached again after a day. The real fix is to send fewer promotions to the people who do not read them, and send the useful messages, like order updates and reminders, as utility messages, which are never capped.

Check in the first minute

  1. 1Check which messages failed. If they are all marketing templates, it is the cap. Utility messages, one-time passwords and replies inside a live chat are never affected.
  2. 2Do not resend right away. A retry within minutes fails again and can push the customer further over the limit.
  3. 3Count delivered messages, not sent ones. The dashboard may say sent even though the customer received nothing.
  4. 4Wait at least a day, then try once more. If it fails a second time, leave that customer alone for the week.

What the error means, in plain words

Think of it as a letterbox with a limit. WhatsApp gives every person a share of promotional messages they can receive in a period, from all businesses added together. A clothing store, a bank and a travel agency all draw from the same share. When it is used up, the next promotional message from anyone is held back, and the business that sent it sees error 131049. WhatsApp calls this keeping the ecosystem healthy. In practice it means customers are not flooded with offers, which keeps them opening WhatsApp at all.

The limit is on the customer, not on you. Two people in the same broadcast can get different results: one receives the message, the other hits the cap because three other businesses got to them first that day. Nothing about your account changed between the two.

Which messages it affects, and which it never touches

MessageAffected by 131049?
Marketing templates: offers, launches, newsletters, festival greetingsYes
Utility templates: order updates, booking confirmations, reminders, receiptsNo
One-time passwords and verification codesNo
Replies inside a chat the customer started in the last 24 hoursNo

One catch: Meta decides what counts as marketing from the content of the message, not from the category the sender picked. A delivery update that ends with a line about a sale is marketing, whatever it was labelled, and it will be capped. Keep utility messages purely about the customer's own order, booking or account.

Why the dashboard says sent when the customer got nothing

When a message is sent through the WhatsApp Business Platform, WhatsApp first accepts it and gives it a message ID. The decision to hold it back comes a moment later, as a delivery update. A tool that only records the first step shows the message as sent. A tool that listens for the delivery update shows it as failed with code 131049.

So the honest number is delivered, not sent. If a campaign shows 1,000 sent and 820 delivered, the gap is mostly this error plus a few wrong numbers. You are not billed for the held-back messages, because WhatsApp charges only for delivered ones.

What pushes a customer over the limit

WhatsApp does not publish the exact number, and it is not the same for everyone. The limit moves with how the customer behaves.

  • How many promotional messages they already received that day or week, from every business.
  • Whether they read, reply to or tap the promotions they get. People who engage are allowed more; people who ignore them are allowed fewer.
  • How often one business messages them. Repeated promotions from the same sender count each time.
  • How busy their inbox is overall. WhatsApp protects people who already get a lot of messages.
Because the limit depends on the customer's behaviour, a list of people who rarely read your messages will always show more of this error than a list of people who reply. That is the clue to the long-term fix.

What to do when it happens today

  1. 1

    Do not retry straight away

    The customer is still over the limit. Sending again within minutes fails again, and repeated attempts can keep them blocked for longer.

  2. 2

    Wait at least a day, then retry once

    By then the customer's share has usually refreshed. One retry after a day is reasonable. If that fails too, stop for the week; they are getting too many promotions from everyone.

  3. 3

    If the message is urgent and about their order or booking, send it as a utility message

    A delivery delay, an appointment change or a payment reminder is utility content, and utility messages are never capped. Just leave out the promotional line.

  4. 4

    If you need a conversation, get them to message you first

    A reply to a click-to-chat link, a QR code or a missed-call prompt opens a 24-hour window in which you can message freely, without templates or the cap.

  5. 5

    If it is time-critical, use another channel

    A call, an SMS or an email for the few customers who are capped and need to hear from you today.

How to get fewer of these over time

  • Send promotions only to people who have read or replied in the last two or three months. A big list of silent contacts is where most of the error comes from.
  • One promotional message per person per week is a sensible ceiling. More than that and the same customer keeps hitting the limit, with your name on the failure.
  • Keep the opt-in real. Someone who ticked a box two years ago and never replied is not an engaged contact.
  • Make every marketing message worth opening. The cap rewards customers who engage, so a message that gets read today makes tomorrow's message more likely to be delivered.
  • Check each template's category after approval. If Meta reclassified a utility template as marketing, fix the wording rather than fighting the label.
  • Watch the delivered rate per campaign. On an active, opted-in list, a small share of 131049 failures is normal. If it climbs past one in five, the list needs cleaning before the next send.
  • Move disengaged contacts out of the broadcast list. Keep them for utility messages and for the day they message you again.

Errors that look similar but mean something else

CodeWhat it meansWhat to do
131049Customer is over the marketing limit for nowWait a day, retry once
131050Customer chose to stop marketing messages from your businessNever retry marketing. Utility still works.
131047You sent a free-form message outside the 24-hour windowSend an approved template instead
131026Number cannot receive the message: not on WhatsApp, old app, or terms not acceptedDo not retry. Fix the contact record.
132015The template was paused by Meta because of low qualityFix the template; the customer is not the issue
130472The customer's number is in a Meta test groupNothing to fix; try later

How this is handled on ZapUp

Broadcasts on ZapUp go only to contacts who opted in, through templates Meta has approved, with a frequency cap so the same person is not messaged repeatedly in a short window. Delivery is shown per contact, so a campaign report says who received the message, who is capped and who is unreachable, rather than one sent figure. Order updates, reminders and confirmations go out as utility messages and are never affected. And when a customer replies, the AI agent answers inside the 24-hour window, where no template and no cap apply.

Questions

Is my WhatsApp number in trouble when I see 131049?+

No. The limit is on the customer, not on your number. It is not a quality rating problem and not a policy violation. Repeated failed sends to the same people can lower your quality rating over time, which is another reason not to retry in a loop.

Am I charged for a message that failed with 131049?+

No. WhatsApp bills delivered messages. A held-back message costs nothing.

How long does the cap last?+

WhatsApp does not publish it, and it varies by customer. In practice, a day is the usual wait before a retry stands a good chance.

Does the error affect order updates and OTPs?+

No. Utility and authentication messages are never capped. Only marketing messages are, and only when they are genuinely marketing by content.

Can I force the message through?+

No. The only ways around it are to send as utility if the content is genuinely about the customer's own order or booking, or to get the customer to message you so a 24-hour window opens.

Does this apply in India, or everywhere?+

Plan as if it applies everywhere. Meta rolled it out market by market and India is firmly included. A few regions have had different rules at different times, so check Meta's current documentation if you message internationally.

Still stuck?

Setup, verification and migration are part of ZapUp onboarding

The number is provisioned, verified and connected by the team, moving from another provider is free, and the AI agent, inbox and broadcasts run on the official platform where these problems do not occur.

Never clock off.

Once the number is healthy, put an AI agent on it.

Build my AI agent