WhatsApp Error 131049: Per-User Marketing Cap Explained | ChatShree
Skip to content
Troubleshooting

WhatsApp error 131049: per-user marketing message cap

Quick answer

Error 131049 is Meta's way of saying: this user has received too many marketing messages recently, so we're not delivering yours. It is not a template problem or a phone-number problem โ€” it is a per-recipient frequency cap that Meta introduced in 2024 and expanded through 2026. Fix it by cutting broadcast frequency, splitting audiences, moving low-priority sends to utility templates, and prioritising engaged contacts. Retrying the same send within 24 hours will fail again.

Disclaimer: WhatsApp error behaviour and frequency caps change frequently. Always cross-check with the official Meta error codes reference before making architecture decisions.

What error 131049 really means

When you send a WhatsApp marketing template through the Cloud API and get back error.code = 131049, Meta is telling you one thing: this specific user has hit the ceiling on marketing messages they will receive in the current window. It has nothing to do with your template, your phone number quality, or your account tier. Every marketing template counts toward this per-user cap โ€” yours, your competitors', every other business messaging that phone number.

The cap is invisible to you. Meta does not tell your BSP how many marketing messages a user has already received today or how many they have left. You only find out after the fact, one 131049 at a time, when your broadcast completes and part of it silently disappears.

Why Meta introduced the cap

Meta introduced marketing message frequency capping in mid-2024 in a handful of countries and expanded it through 2025 and 2026. The stated goal in the WhatsApp Business Platform announcement was to protect user experience โ€” too many marketing messages leads to opt-outs, blocks and eventually users abandoning WhatsApp for high-value conversations. Meta's business is the paid utility and authentication traffic; if users start ignoring WhatsApp because of promotional spam, that revenue dies too.

For Indian businesses, the practical impact hit hardest during Diwali 2025, when broadcasters running 5-6 marketing sends per week to the same lists started seeing 15-40% of a broadcast return 131049. Before the cap, the same messages would have been delivered โ€” and mostly ignored โ€” but delivered.

How to identify 131049 in your logs

Every BSP surfaces Cloud API errors differently. In webhook payloads, look for:

{
  "errors": [{
    "code": 131049,
    "title": "Message not sent",
    "message": "Message failed to send because of a frequency cap"
  }]
}

Most dashboards will show it as "Delivery blocked โ€” frequency cap" or "Not delivered โ€” Meta policy". If your BSP hides the raw code, ask for the message-level webhook JSON. You need to see 131049 explicitly to distinguish it from generic delivery failures.

How 131049 compares to other frequency and block errors

CodeMeaningReset windowRetry same template?
131049Per-user marketing cap hit~24-72 hoursNo, will fail
131047Re-engagement message required (24-hour window expired)Until user replies againUse template instead
131026Message undeliverable (not on WhatsApp, blocked, etc.)Not applicableNo
131031Account lockedUntil Meta reviewNo
368Number temporarily blockedUntil block expiresNo

Seven fixes that actually work

1. Cut broadcast frequency to at most 2 marketing sends per week

The single biggest reason Indian businesses hit 131049 is over-broadcasting. If you send marketing templates 4+ times a week to the same list, at least one send will trigger the cap for a large fraction of your audience. Drop to 2 sends per week โ€” one educational, one offer โ€” and 131049 rates typically fall below 5%.

2. Split audiences by recency

Contacts who engaged in the last 7 days have far more marketing headroom than contacts who last engaged 6 months ago. Meta's cap tightens on low-engagement users. Segment your list and send higher frequency to recent openers, lower frequency to dormant ones.

3. Move transactional content out of marketing templates

Order confirmations, delivery updates, appointment reminders, OTPs โ€” none of these should ever be a marketing template. They belong in utility or authentication categories, which are not affected by 131049. Audit your template library and re-submit anything transactional under the correct category.

4. Use the 24-hour customer service window

When a user messages you first, you have a 24-hour session during which you can send free-form messages of any type. Use that window for follow-ups, upsells and offers instead of firing a new marketing template. This costs nothing extra, doesn't count against the cap, and generally converts better.

5. Prioritise engaged contacts in send order

If you must send to a large list, sort by last engagement date descending. Meta's caps kick in progressively โ€” sending to your best contacts first ensures they get through before the algorithm starts capping. This is standard practice at any high-volume Indian D2C brand today.

6. Honour opt-outs aggressively

Every "STOP" or "unsubscribe" not honoured pushes your list quality down and tightens Meta's per-user cap for other users on your list too. Meta's quality algorithm treats aggregate signals, not just individual opt-outs. Auto-suppress on the first opt-out keyword and confirm within one message.

7. Diversify beyond WhatsApp for cold audiences

Cold, unengaged audiences will hit 131049 first. For that segment, WhatsApp is not the right channel โ€” use email, SMS or paid social. Reserve WhatsApp marketing for your engaged base where deliverability is high and open rates justify the per-message cost.

What not to do

  • Don't retry immediately. Retrying a 131049 send inside the same day will fail and waste your BSP's rate limit budget.
  • Don't switch phone numbers to escape the cap. The cap is per-user across all senders, not per-sender. Moving to a new WABA doesn't reset anything for the user.
  • Don't disguise marketing as utility. Meta reviews templates aggressively for 2026. A promo dressed up as an order update will get the template rejected and can trigger 132xxx errors that hurt your quality rating for weeks.
  • Don't bulk-send to purchased lists. Users who never opted in will hit the cap fastest and generate the highest opt-out rates.

A practical daily checklist

  1. Pull the previous day's send report and count how many messages returned 131049.
  2. If 131049 is above 5% of a broadcast, mark that audience as saturated and skip the next scheduled send.
  3. Verify no transactional content is going out under marketing category.
  4. Confirm opt-outs from the last 24 hours are suppressed in every list.
  5. Check quality rating on the Business Manager โ€” declining rating amplifies future 131049s.

How ChatShree handles 131049 automatically

Inside ChatShree, every broadcast tracks per-contact send frequency and automatically suppresses recipients who received a marketing template within the last 24 hours. Contacts inside a 24-hour service window are automatically routed to session messages instead of new templates. When a 131049 comes back on a webhook, the contact is tagged as "capped" and excluded from the next 48 hours of marketing sends. See our automation module for the full flow.

The bigger picture: 131049 is a signal, not just a bug

Marketing message frequency caps are not going away. Meta's move to paid service messages and the upcoming max-price bidding model both point in the same direction: WhatsApp is becoming a premium channel where restraint is rewarded. Businesses that treat every 131049 as a data point โ€” "we're sending too much to this segment" โ€” will build stronger lists and lower cost-per-conversion than those that keep hammering the API.

Frequently asked questions

What exactly does WhatsApp error 131049 mean?

Meta's Cloud API returned code 131049 with the message 'Message not sent due to unsupported message type or user's marketing message frequency cap'. It means the recipient has already received the maximum number of marketing messages Meta will deliver to them in the current window, from all businesses combined.

Is 131049 the same as a template being paused or rejected?

No. Template pause errors show 132xxx codes and mean your template quality dropped. 131049 is per-recipient โ€” the same template can deliver to one contact and fail on another in the same broadcast.

Will the message be delivered later if I retry?

Retrying the exact same marketing template to the same user within roughly 24 hours will fail again. Meta does not queue capped messages. You must either wait, send a utility or authentication template instead, or reach the user in a 24-hour customer service window.

How often does Meta reset the cap?

Meta has not published the exact reset schedule and it varies by market, user activity and Meta's own signals. Practitioners in India see caps reset over 24 to 72 hours for most contacts, longer for low-engagement users.

Does 131049 affect my quality rating?

Not directly. The message was never delivered, so it cannot generate a block or report. But the underlying behaviour that causes 131049 โ€” over-messaging โ€” will hurt your quality rating over time through opt-outs on the messages that do get through.

Can I check a user's cap status before sending?

No. Meta does not expose per-user cap counters to businesses or BSPs. The only signal you get is the 131049 error at send time. Track your own recent send history per contact and throttle accordingly.

Sources