WhatsApp Error 131049: Why Campaigns Fail and the Fix Plan
WhatsApp error 131049 means a customer hit their marketing message limit. Here is how to stop retry storms, set a per-contact budget and plan the move to Meta's Marketing Messages API, with rupee maths.
01WhatsApp error 131049 means WhatsApp blocked a marketing template because the recipient reached their per-user limit for marketing messages from all businesses.
02Meta charges only for delivered WhatsApp messages, so templates blocked with error 131049 cost nothing, but blind retries within 24 hours can block that number for another 24 hours.
03Marketing messages sent inside a 24-hour customer service window opened by a customer reply do not count towards the WhatsApp per-user limit, though they are still billed at about ₹0.8631 in India.
04Since 1 October 2026, Meta charges for WhatsApp service messages beyond 1,000 per business phone number per month and for utility templates sent in an open window.
Say your festive broadcast goes to 1,00,000 customers and the report shows 18,000 failures with one code: WhatsApp error 131049. That code means WhatsApp itself held your marketing template back because the person had already hit their limit for business messages, and blasting it again tomorrow morning is the worst thing you can do.
The fix is not a better template. It is a contact-level frequency budget, a reply-first flow design, and, before 13 October 2027, a move to Meta’s Marketing Messages API. Here is the plan, with rupee maths at today’s India rates.
What does WhatsApp error 131049 actually mean?
Error 131049 means WhatsApp blocked a marketing template because that recipient reached their per-user limit for marketing messages from all businesses combined. Meta sets the limit dynamically from the person’s recent read rate and inbox activity, so it is not a number you can look up or buy your way past.
The webhook returns status “failed” with code 131049, and many Business Solution Providers (BSPs) show the text “not delivered to maintain healthy ecosystem engagement”. Meta’s developer documentation adds three details most BSP help pages skip:
Every delivered marketing template counts towards the person’s limit, yours and everyone else’s.
If the customer replies, a 24-hour customer service window opens, and marketing messages sent inside it do not count towards the limit.
Resending to a capped user within 24 hours can make that number unreachable for up to another 24 hours. Other users are not affected.
So you are competing for a shared slot in each customer’s inbox with every brand that has their number. In India, that is a lot of brands.
Each customer has a shared allowance for business messages, and you compete for it with every brand they bought from.
Why are Indian brands hit hardest?
India is where the cap started. Exotel’s help documentation records that per-user limits rolled out in India from 6 February 2024, and that a September 2024 change limited each business to two marketing templates per user in 24 hours unless the user replied. Meta’s own page today gives no fixed number, only the dynamic rule.
The backstory explains why. In October 2022, TechCrunch reported a wave of Indian users complaining about brand spam on WhatsApp. Nikhil Pahwa, founder of MediaNama, posted that he was blocking a couple of business accounts every day. Meta’s position has stayed consistent since: Nikila Srinivasan, Meta’s VP of product management for business messaging, told AdExchanger in July 2025 that Meta wants a business that “doesn’t interrupt a person’s core WhatsApp experience”.
131049 is not a bug in your BSP. It is WhatsApp telling you the customer stopped reading.
Do you pay for messages that fail with 131049?
No. Meta’s pricing documentation says businesses are charged only for delivered messages, so a template blocked with 131049 costs you nothing from Meta. The real cost is lost reach on the day that matters, plus damage to your read rate if you respond with retry storms.
Our maths uses Meta’s India list rates in rupees, as reported from its INR rate card: ₹0.8631 per delivered marketing message and ₹0.115 per utility, authentication or chargeable service message, before 18% GST and your BSP’s markup.
Scenario (our worked example, illustrative)
Delivered
Meta cost incl. GST
Sale broadcast, nothing blocked
1,00,000
₹1,01,846
Same send, 18% blocked by 131049
82,000
₹83,514
Next-morning blind retry of the 18,000
Few, and more blocks
Up to ₹18,332 if it slips through to people who already ignore you
The ₹18,000 you “saved” on failed sends is not savings. Those 18,000 people were the least engaged on your list. Paying to reach them again, at the moment their inbox is fullest, is how a read rate slides, and a lower read rate means a tighter cap next time.
Watch out: some BSP dashboards offer an automatic “retry failed messages” toggle that resends the next day. Meta asks for at least 24 hours before resending, so check your BSP’s timing, and only retry contacts who have engaged in the last 30 days.
How do you fix WhatsApp error 131049 for a campaign that already failed?
Do not resend for at least 24 hours, then retry only the engaged part of the failed list and route the rest to email or SMS. Export the failed numbers, tag them, and treat 131049 as a signal about that customer, not a delivery glitch to brute-force.
Export the failures. In your BSP, open the campaign report and filter by failure reason or error code 131049. Download the list as CSV. In the raw Cloud API, these arrive on your messages webhook with status “failed”.
Tag, don’t delete. Add a CRM tag such as wa_capped_30oct. Two tags in 30 days means the person is a low-read contact for WhatsApp.
Split by engagement. Contacts who read or clicked a WhatsApp message in the last 30 days get one retry after 24 hours, outside your peak send window. Everyone else drops to email for this campaign.
Turn off blind auto-retry. If your BSP has a retry toggle, either switch it off or limit it to the engaged segment.
Fix the next send, not this one. Use the frequency budget below before your next broadcast.
How many WhatsApp marketing messages can you send to one customer?
Meta publishes no fixed number. The limit moves with each person’s recent marketing read rate and how busy their inbox is, so a loyal customer can take more than a dormant one. The practical answer is to set your own per-contact cap, tighter for people who stop reading.
We built this framework, the PingTalks Inbox Budget, from Meta’s documented rules. It is our editorial recommendation, not a Meta rule:
Contact type
Definition
Marketing templates per week
Hot
Read or replied in last 14 days
Up to 3, one per day max
Warm
Read in last 15 to 60 days
1
Cold
No read in 60+ days, or two 131049s in 30 days
0 on WhatsApp. Email only, plus one win-back template a month
If cold contacts make up a third of a 1,00,000 list, that is 33,333 sends and about ₹33,950 incl. GST saved per broadcast. Cutting them lowers your Meta bill and raises the read rate that decides how much room WhatsApp gives you next time.
Segmenting by recent reads decides who gets a WhatsApp message and who moves to email.
Can a reply button get you around the limit?
Partly, and legitimately. When a customer replies, a 24-hour customer service window opens, and Meta says marketing messages sent inside that window do not count towards the per-user limit. Designing every template to earn a reply gives you room for a follow-up offer the next morning.
Use quick-reply buttons, not links alone. “Show me sarees under ₹2,000” and “Not now” beat a single “Shop now” URL, because a tap on a quick reply is a reply. For a Hinglish audience, test a button like “Haan, dikhao”.
Two catches. A marketing template sent in the window is still billed at ₹0.8631. And since 1 October 2026, the window itself is no longer free: Meta now charges for service messages beyond 1,000 per business phone number per month, and for utility templates sent in an open window.
1,000free service messages per business number per month, from 1 October 2026
₹678.50our maths: 6,000 service replies in a month at ₹0.115, after the free 1,000, incl. GST
9%more marketing messages delivered by Meta’s MM API vs Cloud API, in an India test
Should you switch to the Marketing Messages API?
Yes, and plan it now rather than later. Meta’s Marketing Messages API for WhatsApp delivered up to 9% more messages than Cloud API in its A/B test of about 12 million marketing messages from Indian advertisers in January 2025, and Cloud API stops supporting marketing messages on 13 October 2027.
According to Meta’s developer docs, the API went generally available on 19 November 2025. It uses the same templates, phone numbers and billing as Cloud API, and adds quality-based delivery, a message validity window of 12 hours to 30 days, benchmarks and conversion metrics such as Add to Cart and Purchase through Meta’s SDK or App Events API. Meta notes onboarding confirmation can take about two weeks.
The validity window matters for 131049. A festive offer that ends on Sunday should not land on Tuesday. Set a time-to-live and stale offers simply never deliver.
Two dates to put in the calendar
31 December 2026: India-billed WhatsApp accounts must migrate to INR billing, or Meta stops delivering their messages from 1 January 2027. 13 October 2027: Cloud API stops supporting marketing messages. Ask your BSP for its MM API timeline this month.
Who thinks this is overblown?
Plenty of growth teams. Their argument: the cap is partly Meta protecting the inbox it now monetises through Status ads and click-to-WhatsApp ads, and a brand with a genuinely engaged list sees 131049 on a small share of sends. Cutting cold contacts entirely can also cost you the occasional big-ticket reactivation.
That is fair for brands with high read rates. The framework above fails if your “cold” definition is wrong, for example when customers read previews in the notification shade without opening the chat. Test it on half your list for two campaigns before applying it everywhere.
PingTalks verdict
Treat 131049 as the most honest engagement metric WhatsApp gives you. Stop blind retries today, cap cold contacts at zero broadcasts, design every template to earn a reply, and get your BSP onto the Marketing Messages API before festive season 2027. Brands that keep blasting will keep paying for reach they don’t get. If your 131049 share is under 2% per campaign, skip the rebuild and just stop auto-retries.
A ten-minute check of last month's failed sends shows how much of your list WhatsApp already treats as cold.
What to do now
Pull error 131049 counts from your last three WhatsApp campaigns and note the share of sends.
Switch off blind auto-retry, or restrict it to contacts who read in the last 30 days.
Tag contacts as hot, warm or cold and apply the Inbox Budget before your next broadcast.
Add quick-reply buttons to every marketing template.
Ask your BSP two questions in writing: INR billing migration date, and Marketing Messages API go-live date.
Frequently asked questions
Is WhatsApp error 131049 a ban on my business number?
No. Error 131049 applies to one recipient at a time and means that person has hit their limit for marketing templates. Your number can still message other users, and your quality rating is a separate signal.
How long should I wait before resending after error 131049?
Meta asks businesses to wait at least 24 hours before resending a marketing template to a user who returned error 131049. Resending sooner can make that user unreachable for up to another 24 hours.
Do utility or authentication templates trigger error 131049?
Meta’s per-user limit documentation covers marketing templates. Order updates and OTPs must still be categorised correctly, because a utility template that Meta reclassifies as marketing is treated as marketing.
Can I see a customer's remaining WhatsApp marketing limit?
No. Meta does not expose a per-user count. The limit adapts to each person’s recent marketing read rate and inbox activity, so your own engagement data is the best proxy.
Does the Marketing Messages API remove the per-user limit?
Meta does not say the limit is removed. The Marketing Messages API uses quality-based delivery and delivered up to 9% more messages than Cloud API in Meta’s India test, but engagement still decides delivery.
Digital Evangelist and Entrepreneur at Clickseek Digital. A results-oriented marketing leader with an 18+ year track record driving transformative growth for diverse global businesses. Expert in performance marketing, demand generation, customer acquisition, strategic partnerships, and market expansion within B2B SaaS, Consumer-Tech, Fintech, Travel/Hospitality, and CRM/ITES Solutions sectors. IIM alumnus with a strong analytical background and a string of accolades, including "Top 50 Most Influential E-Commerce Professional of India" and "Top 100 Digital Marketer of India."