S
ShopIA— Ajuda
Ativar·Semanas 1–2

SPF múltiplo: por que dois registros conflitam (e como resolver)

4 min de leitura·Atualizado em maio/2026
O SPF é um registro DNS que lista quais servidores podem enviar email pelo seu domínio. A regra mais importante: apenas um registro SPF por domínio. Se você tem dois, o protocolo falha completamente — todos os seus emails ficam sem autenticação SPF.

A regra do SPF único

O padrão SPF (RFC 7208, seção 3.2) é explícito:

"A domain name MUST NOT have multiple records that would cause an authorization check to select more than one record."

Em português: o domínio não deve ter mais de um registro SPF. Se tiver, todos são considerados inválidos por receptores rigorosos (Gmail, Outlook, Yahoo).

Como o problema aparece

O cenário típico é o seguinte:

  1. Você configurou SPF antes para outro serviço de email (ex: Mailchimp, RD Station)
  2. Ao conectar o ShopIA com domínio próprio, recebe instrução de adicionar include:amazonses.com ao SPF
  3. Em vez de modificar o registro existente, você adiciona um novo registro TXT separado
  4. O domínio passa a ter dois registros SPF
  5. Os dois invalidam-se mutuamente

Como verificar se você tem o problema

Opção 1 — comando dig

Em qualquer terminal:

dig +short suamarca.com.br TXT | grep spf

Se retornar mais de uma linha começando com v=spf1, você tem o problema.

Opção 2 — ferramenta web

Use uma das seguintes:

  • mxtoolbox.com/spf.aspx
  • dmarcian.com/spf-survey/

Cole seu domínio. Se houver múltiplos SPFs, a ferramenta destaca em vermelho.

Opção 3 — painel de DNS

No seu provedor de DNS (Cloudflare, Registro.br, GoDaddy), filtre os registros TXT do domínio raiz. Se houver dois ou mais começando com v=spf1, você tem o problema.

Como resolver: consolidar em um único registro

A solução é mesclar os registros existentes em um só. Cada serviço normalmente fornece um trecho include: que você adiciona à linha existente.

Exemplo prático

Antes (problema):

v=spf1 include:_spf.google.com ~all
v=spf1 include:amazonses.com ~all

Depois (correto):

v=spf1 include:_spf.google.com include:amazonses.com ~all

Apenas uma linha com todos os include: necessários.

Includes mais comuns

ServiçoInclude a usar
ShopIA (envios via SES)include:amazonses.com
Google Workspaceinclude:_spf.google.com
Microsoft 365include:spf.protection.outlook.com
Mailchimpinclude:servers.mcsv.net
RD Stationinclude:_spf.rdstation.com.br
SendGridinclude:sendgrid.net
HubSpotinclude:_spf.hubspotemail.net

Some quantos include: precisar — porém atenção ao limite de 10 lookups DNS por SPF (regra do RFC). Cada include: conta como pelo menos 1 lookup.

Limite de 10 lookups DNS

O SPF tem um limite técnico: no máximo 10 consultas DNS durante a validação. Cada include: aninhado conta. Se você ultrapassa o limite, o SPF falha com erro permerror.

Como saber se está perto do limite

Ferramentas como mxtoolbox.com/spf.aspx exibem o número de lookups consumidos. Se passar de 10, o relatório mostra alerta.

Como reduzir lookups

  1. Remover serviços não usados. Se você cancelou Mailchimp ano passado, remova o include: correspondente.
  2. Usar ip4: em vez de include: quando possível. Para serviços que publicam IPs fixos, ip4: consome 0 lookups (vs 1 do include:).
  3. Considerar SPF flattening. Ferramentas pagas (como dmarcian.com) automatizam a expansão dos include: em IPs literais. Solução de último caso.

Passo a passo para corrigir SPF duplicado

  1. Identifique os dois (ou mais) registros SPF existentes. Anote os include: de cada um.
  2. Componha um registro consolidado. Combine os include: em uma única linha começando com v=spf1.
  3. No DNS do seu domínio, edite o registro mais antigo colocando o valor consolidado.
  4. Delete os outros registros SPF. Deixe apenas o consolidado.
  5. Aguarde propagação (alguns minutos a algumas horas).
  6. Valide com dig ou ferramenta web. Deve retornar apenas uma linha SPF.

O parâmetro final: ~all vs -all

Toda linha SPF termina com ~all ou -all. A diferença:

  • ~all — softfail. Email de servidor não listado é marcado como suspeito mas não rejeitado.
  • -all — hardfail. Email de servidor não listado é rejeitado.

Recomendamos ~all durante migração e estabilização. Após confirmar que todos os serviços de envio estão listados corretamente (e que o DMARC está em p=quarantine ou p=reject), pode evoluir para -all.

Veja também

Este artigo foi útil?

Sua resposta ajuda a melhorar a Central de Ajuda.

Veja também