Smart Retry

Recover the sends Meta silently drops.

Meta\'s marketing frequency cap drops ~20% of your sends with error 131049. Smart Retry recovers them with exponential backoff, a workspace circuit breaker, and per-contact throttling that keeps your account healthy.

131049-aware classifier

Whitelist-based decision: only known-transient codes are retried. Template content errors (2388xxx) stay terminal — no wasted retries on issues that need your attention.

Exponential backoff

24h → 48h → 72h per attempt, capped at 3 attempts by default. The cap's rolling window usually clears within two attempts, so diminishing returns kick in fast.

Workspace circuit breaker

Retry delivery rate <15% over 50+ attempts pauses retries for 24h automatically. Stops a bad campaign from dragging your quality rating down further.

Per-contact throttle memory

Three consecutive 131049s on the same contact triggers a 7-day marketing exclusion. The contact stays reachable for utility sends. Counter resets on success.

How it works

01

Send as usual

Broadcast or flow engine — both use the same delivery pipeline. No change to how you create campaigns.

02

We classify the failure

If the error is recoverable, the send is re-queued with a scheduled delay. Everything else is marked failed immediately with Meta's full error context.

03

You see the recovery curve

Broadcast detail page shows delivered-on-original, delivered-on-retry-1, -2, -3, and exhausted counts so you can see exactly how much each attempt recovers.

Built to protect account quality, not just deliver more messages

Naive retry loops make quality ratings worse — every failed send counts against you. Smart Retry is built with the opposite premise: the moment delivery rates degrade on retries, we pause automatically. The circuit breaker, the throttle memory, and the exponential backoff are all there so aggressive recovery doesn't cost you long-term account health.

  • Every retry goes through the same quality guardrails as the original send
  • Per-workspace opt-out in one click — no migration required
  • Utility vs marketing handled separately; utility sends skip the throttle entirely
t0Send131049+24hRetry 1131049+72hRetry 2131049+144hRetry 3OK24h48h72hCIRCUIT BREAKERSample window: 24hMin 50 samples · min 15% deliveryTrip → pause 24hCONTACTTHROTTLE7 daysafter 3 frequency-capsTypical recovery+12–18%delivered across attempts 2 & 3

What the numbers usually look like

A typical marketing broadcast on a workspace with healthy reputation sees these recovery figures. Absolute numbers vary; the shape is consistent.

Original send60% delivered
Retry 1 (+24h)+10-15%
Retry 2 (+48h)+2-5%
Retry 3 (+72h)<1%
Exhausted15-25%

Frequently asked questions

What is Meta error 131049?+

Meta's "healthy ecosystem engagement" cap. If a recipient has received too many marketing messages across all businesses in a rolling window, your send is silently dropped. The API returns success, but the user never sees the message. It has nothing to do with the 24-hour window — templates can always break out of that — and nothing to do with opt-outs. It's a per-recipient cap Meta applies across your entire category.

How does Smart Retry actually help?+

Recoverable failures (131049, transient rate limits, Meta-side 5xx) are re-queued with exponential backoff: 24h, then 48h, then 72h. By the time the third attempt runs, the recipient's cap window has usually reset and your message lands. Typical recovery curve in our testing: +10–15% on attempt 1, +2–5% on attempt 2, less than 1% on attempt 3.

What's the circuit breaker?+

A safety net on your workspace. If your retry delivery rate drops below 15% over 50+ attempts in a rolling 24h window, retries pause automatically for 24 hours. Protects your account quality rating from compounding bad sends. Admins can resume manually from workspace settings once the root cause is fixed.

What's per-contact marketing throttle?+

A contact who hits three consecutive 131049s on MARKETING templates is excluded from future marketing sends for 7 days. The contact stays reachable for UTILITY templates (which aren't subject to the cap), and the counter resets the moment any send succeeds. This stops you wasting quota on recipients who will reject the next send anyway.

Does Smart Retry work on utility templates?+

Yes for transient errors (internal Meta errors, rate limits). No for 131049 specifically because utility templates aren't subject to the marketing frequency cap — they don't fail with 131049 in the first place. The retry classifier handles both categories correctly without extra configuration.

Can I turn it off?+

Per workspace, yes. Settings → Smart Retry → toggle off. When disabled, failed sends are marked failed without any retry attempt, matching the pre-feature behaviour. Max attempts is also configurable (1–5) for workspaces that want tighter control.

Your WhatsApp. Your AI. Your rules.

Join businesses automating WhatsApp without vendor lock-in.

Start Free Trial