← Blog

·

Limite de marketing por usuário: por que sua mensagem não foi entregue

Atualizado em 25/10/2026

O erro 131049 significa que a Meta não entregou um template de marketing porque o destinatário atingiu o limite de mensagens de marketing por usuário. Esse limite é adaptativo: o WhatsApp reduz quantas mensagens de marketing uma pessoa recebe, de qualquer empresa, quando ela está menos propensa a ler. A mensagem com esse erro não é cobrada, e a orientação oficial é esperar pelo menos 24 horas antes de tentar de novo.

Este artigo explica como o limite funciona, como o erro chega no webhook, o que conta e o que não conta, e como ajustar suas campanhas para perder menos mensagens.

O que é o limite de marketing por usuário

A página Per-user marketing template message limits diz que o WhatsApp pode limitar o número de templates de marketing que um usuário recebe de qualquer empresa em um período, quando ele tem menos chance de se interessar. A decisão leva em conta, entre outros fatores:

  • a taxa de leitura recente de mensagens de marketing daquela pessoa;
  • quantas mensagens ela tem na caixa de entrada, de amigos, família e empresas.

Três pontos mudam a forma de pensar campanhas:

  1. O limite é do usuário, não da sua empresa. Se a pessoa recebeu muitas mensagens de marketing de outras marcas, a sua pode ser a que fica de fora.
  2. Ele é dinâmico. A Meta não publica um número fixo. O limite se adapta ao engajamento recente de cada pessoa.
  3. Ele é diferente do limite de mensagens do portfólio. O limite do portfólio controla quantos destinatários únicos você alcança em 24 horas fora da janela de atendimento (250, 2.000, 10.000, 100.000 ou ilimitado). O limite por usuário controla quantas mensagens de marketing cada pessoa recebe. Os dois são explicados em limite de mensagens da API do WhatsApp.

Como o erro 131049 aparece

A chamada de envio responde 200 normalmente. A falha só aparece depois, no webhook de status, com status: "failed" e o código 131049. A tabela de erros da Meta descreve o erro como: “This message was not delivered to maintain healthy ecosystem engagement.”

Um status com esse erro chega neste formato:

{
  "object": "whatsapp_business_account",
  "entry": [{
    "id": "<WABA_ID>",
    "changes": [{
      "field": "messages",
      "value": {
        "messaging_product": "whatsapp",
        "metadata": {
          "display_phone_number": "5511999999999",
          "phone_number_id": "<PHONE_NUMBER_ID>"
        },
        "statuses": [{
          "id": "wamid.HBgLNTUx...",
          "status": "failed",
          "timestamp": "1761400000",
          "recipient_id": "5511888888888",
          "errors": [{
            "code": 131049,
            "title": "This message was not delivered to maintain healthy ecosystem engagement."
          }]
        }]
      }
    }]
  }]
}

Por isso, nunca considere uma campanha “entregue” só pela resposta da API. Grave o wamid de cada envio e cruze com os status que chegam depois. O ciclo completo de status está em status de mensagem via webhook.

O que conta no limite e o que não conta

SituaçãoConta no limite por usuário?
Template de marketing entregueSim, cada um conta
Template de marketing enviado dentro da janela de 24 horas aberta pela resposta do usuário a uma mensagem de marketingNão
Template com falha (não entregue)Não é uma entrega; não é cobrado
Templates de utilidade e autenticaçãoA regra da Meta trata de templates de marketing

O segundo item é o mais útil na prática. Quando o usuário responde a uma mensagem de marketing, abre-se a janela de atendimento de 24 horas, e as mensagens de marketing enviadas dentro dela não entram na conta. Campanhas que geram conversa de verdade sofrem menos com o limite. Veja como a janela funciona em janela de 24 horas do WhatsApp.

Sobre cobrança: a página de preços afirma que a Meta cobra apenas mensagens entregues. Uma mensagem com status failed por 131049 não foi entregue e, portanto, não é cobrada.

Quanto esperar antes de reenviar

A orientação oficial é esperar pelo menos 24 horas antes de reenviar um template de marketing para quem atingiu o limite. A Meta acrescenta dois avisos:

  • reenviar antes disso tende a gerar novos erros e piora a precisão dos relatórios de entrega da campanha;
  • se a conta tenta reenviar várias vezes, dentro de 24 horas, para usuários que já atingiram o limite, novas tentativas para esses usuários podem ficar indisponíveis por até 24 horas, também com o erro 131049. Isso não afeta o envio para outros usuários.

Em código, a regra fica simples: ao receber 131049, agende a próxima tentativa para dali a 24 horas ou mais, e limite o número de tentativas.

const UM_DIA_MS = 24 * 60 * 60 * 1000;
const MAX_TENTATIVAS = 2;

export async function tratarStatus(status, db) {
  if (status.status !== 'failed') {
    return db.atualizarEnvio(status.id, status.status);
  }

  const codigo = status.errors?.[0]?.code;
  await db.atualizarEnvio(status.id, 'failed', codigo);

  if (codigo === 131049) {
    const envio = await db.buscarEnvio(status.id);
    if (envio.tentativas < MAX_TENTATIVAS) {
      await db.agendarReenvio({
        contato: status.recipient_id,
        template: envio.template,
        naoAntesDe: Date.now() + UM_DIA_MS + 60 * 60 * 1000, // 25 h de folga
        tentativas: envio.tentativas + 1,
      });
    }
  }

  if (codigo === 131050) {
    await db.marcarOptOut(status.recipient_id, 'marketing'); // não reenviar
  }
}

Vale perguntar se o reenvio faz sentido. Uma oferta com prazo que já passou não deve ser reenviada. E quem bate no limite com frequência é, por definição, alguém que lê pouco marketing: talvez a melhor decisão seja tirar a pessoa daquela régua.

131049 e outros erros parecidos

CódigoO que significaO que fazer
131049Não entregue para manter o engajamento saudável (limite de marketing por usuário)Esperar 24 h ou mais antes de reenviar
131050O usuário optou por parar de receber marketing da sua empresaNão reenviar; marcar opt-out
131048Restrição de envio no número, por exemplo por bloqueios e denúncias de spamChecar a qualidade no WhatsApp Manager
131047Mais de 24 h desde a última mensagem do usuárioEnviar um template em vez de mensagem livre
131026Não foi possível entregar (número sem WhatsApp, versão antiga, termos não aceitos)Confirmar o número por outro canal

Fonte: códigos de erro da Meta. Para a lista completa e o tratamento de cada um, veja erros da API do WhatsApp.

Números dos Estados Unidos

A mesma página de limites por usuário informa que o WhatsApp não entrega, no momento, templates de marketing para números dos EUA (código +1 com DDD americano). Se a sua base tem clientes nos EUA, filtre esses números antes de campanhas de marketing.

Como reduzir o 131049 nas suas campanhas

Não existe forma de “furar” o limite, e não vale tentar. O que dá para fazer é mandar mensagens que as pessoas leem:

  • Segmente por engajamento. Separe quem leu ou respondeu mensagens recentes de quem não abre nada há meses. Envie primeiro para o grupo engajado.
  • Reduza frequência. Uma oferta forte por semana costuma render mais que três medianas.
  • Personalize de verdade. Nome, produto de interesse, último pedido. Mensagem genérica tem leitura menor.
  • Convide à resposta. Botões de resposta rápida (“Quero ver”, “Agora não”) geram interação e abrem a janela de atendimento, dentro da qual mensagens de marketing não contam no limite.
  • Não disfarce marketing como utilidade. A Meta pode recategorizar o template e restringir a criação de novos templates de utilidade. Veja como a Meta classifica templates.
  • Cuide da base. Opt-in claro e saída fácil mantêm a leitura alta. Veja como montar uma lista opt-in.
  • Meça a taxa de 131049 por campanha. Se ela sobe, o problema costuma ser segmentação ou frequência, não a API.

Ao simular o custo de uma campanha, lembre que mensagens não entregues por esse erro não são cobradas, mas também não geram resultado. O guia quanto custa uma campanha no WhatsApp mostra como estimar. Para o planejamento geral de envios, veja disparo em massa pela API oficial.

O erro 131049 com a Vectalk

A Vectalk é um proxy da Cloud API oficial, e os webhooks são os da Meta: o status failed com errors[0].code = 131049 chega no mesmo formato nas URLs que você registrar com POST /api/webhooks. O envio do template é feito com POST /api/messages, com o payload igual ao da Meta. A documentação de webhooks mostra o formato dos status. Se você ainda está conhecendo a plataforma, comece pelo guia da API oficial do WhatsApp ou crie sua conta em apps.vectalk.com.br/register.

Perguntas frequentes

O erro 131049 é cobrado?

Não. A Meta cobra apenas mensagens entregues, e uma mensagem com status failed não foi entregue.

Quanto tempo devo esperar para reenviar?

Pelo menos 24 horas, segundo a Meta. Reenviar antes tende a gerar o mesmo erro e pode bloquear novas tentativas para aquele usuário por até 24 horas.

O limite vale para templates de utilidade?

A documentação da Meta descreve o limite para templates de marketing. Classificar marketing como utilidade para escapar dele viola as regras de categorização e pode levar a recategorização e restrições.

O erro 131049 derruba a qualidade do número?

O erro em si não é um sinal negativo de usuário, como bloqueio ou denúncia. Mas insistir em enviar para quem não lê aumenta a chance de bloqueios, e isso afeta a qualidade do número.

Posso saber qual é o limite de cada usuário?

Não. A Meta não informa o limite individual; ele muda conforme o engajamento recente de cada pessoa. O único sinal é o erro 131049 no webhook.


Fontes oficiais consultadas em 25/10/2026: Limites de templates de marketing por usuário, Códigos de erro, Limites de mensagens, Preços, Envio de mensagens e janela de atendimento.

Integre o WhatsApp oficial ao seu sistema

A Vectalk entrega a Cloud API da Meta com os mesmos payloads e webhooks, um token para todas as contas e documentação completa.