Quando o e-mail de formulário não chega, a causa quase sempre é a função mail() do PHP, não o plugin. Segundo o Cloudflare Radar (2026), 26,7% do e-mail analisado no Brasil foi marcado como malicioso, o que aperta os filtros. SMTP autenticado resolve a maioria dos casos. Teste a entrega antes de trocar de plugin.
Quando o e-mail de formulário não chega, o problema raramente está no formulário em si. O WordPress envia mensagens pela função mail() do PHP, que entrega o e-mail sem autenticação. Servidores como Gmail e Outlook tratam esse envio como suspeito e jogam na caixa de spam ou recusam. Antes de culpar o WPForms ou o Contact Form 7, vale entender as cinco causas reais e como o conteúdo sobre formulários WordPress da FULL aborda cada uma. A correção definitiva passa por SMTP autenticado, e este guia mostra o caminho.
Diagnóstico rápido do e-mail de formulário que não chega
O e-mail de formulário não chega por cinco causas principais, e o primeiro passo é separar “não enviado” de “enviado mas barrado”. A maior parte dos chamados que a gente vê no suporte da FULL cai na função mail() do PHP, que dispara sem autenticação SPF ou DKIM.
O restante se divide entre spam local, endereço de notificação errado no plugin e DNS mal configurado. A tabela abaixo cruza cada sintoma com a causa raiz e a ação corretiva. Use o sintoma da esquerda como ponto de partida: ele aponta a correção certa na coluna da direita, e a causa mais comum, de longe, é a primeira linha.
| Sintoma | Causa raiz | Ação corretiva |
|---|---|---|
| Nada chega para ninguém | Função mail() do PHP recusada pelo servidor | Instalar SMTP autenticado |
| Chega para você, não para o cliente | Falha de SPF ou DKIM no domínio | Publicar registros SPF e DKIM no DNS |
| Cai na caixa de spam | Remetente sem reputação ou domínio diferente | Alinhar remetente ao domínio e usar SMTP |
| Some sem aviso | Endereço de notificação errado no plugin | Conferir campo de notificação do formulário |
Por que a função mail() do PHP derruba o e-mail de formulário
A principal razão para o e-mail de formulário não chegar é técnica: o WordPress usa a função mail() do PHP, que dispara a mensagem sem provar quem é o remetente. Servidores modernos exigem autenticação SPF, DKIM e DMARC para confiar no envio.
Sem essas três camadas, o Gmail e o Outlook tratam a mensagem como possível fraude e a descartam em silêncio. O contexto reforça o rigor: segundo o Cloudflare Radar (2026), nos dados de e-mail analisados no Brasil, 26,7% do tráfego foi classificado como malicioso. Quanto mais e-mail ruim circula, mais agressivos ficam os filtros com remetentes não autenticados. Por isso um e-mail de formulário enviado pelo PHP puro tende a sumir sem mensagem de erro visível para o administrador, que jura que o site está quebrado quando o problema é só de autenticação.
SMTP autenticado: A correção do e-mail de formulário em 4 passos
A correção definitiva do e-mail de formulário que não chega é trocar a função mail() do PHP por SMTP autenticado, e isso leva poucos minutos. O SMTP envia a mensagem com login e senha de um provedor confiável, como Brevo, Gmail SMTP ou o servidor da própria hospedagem.
Plugins como o WP Mail SMTP fazem a ponte e ainda mostram log de cada envio, o que facilita o diagnóstico. Veja o passo a passo completo no nosso guia de como configurar SMTP no WordPress. Os quatro passos abaixo cobrem a configuração mínima que resolve a maioria dos casos de entrega.
Passo 1: Instale um plugin de SMTP
Instale o WP Mail SMTP pelo painel do WordPress, em Plugins e Adicionar novo. Ele intercepta a função mail() do PHP e força o envio por um servidor autenticado. É gratuito na versão base e tem mais de 4 milhões de instalações ativas no repositório oficial, o que sinaliza maturidade. Após ativar, o assistente de configuração abre sozinho e pede o provedor de e-mail.
Passo 2: Conecte um provedor de envio
Escolha um provedor de SMTP no assistente: Brevo e SendLayer oferecem plano gratuito de centenas de envios por dia, suficiente para a maioria dos sites. Informe a chave de API ou o host, a porta 587 e as credenciais. Esse passo é o que dá ao e-mail de formulário a autenticação SPF e DKIM que a função mail() do PHP nunca teve. Salve e avance para o teste.
Passo 3: Alinhe o remetente ao domínio
Defina o e-mail “De” usando o seu próprio domínio, como [email protected], nunca um Gmail genérico. O alinhamento entre remetente e domínio autenticado é o que evita a caixa de spam. Um e-mail de formulário enviado de @gmail.com mas assinado pelo seu domínio quebra o DMARC e some. Use sempre um endereço do domínio que você controla no DNS.
Passo 4: Teste a entrega antes de confiar
Envie um e-mail de teste pelo próprio plugin e confira a caixa de entrada e a de spam. O WP Mail SMTP tem botão de teste e registra o resultado no log. Se chegar, o e-mail de formulário está corrigido na origem. Se ainda falhar, o problema migrou para o DNS ou a reputação, e os próximos blocos resolvem.
Como testar se o e-mail de formulário realmente sai
Testar a entrega antes de mexer no plugin economiza horas, e há duas ferramentas gratuitas que dão o veredito em segundos. O Mail-Tester gera um endereço temporário e devolve uma nota de 0 a 10 com SPF, DKIM e reputação detalhados.
Você envia um e-mail de formulário para esse endereço temporário e lê o relatório linha a linha, com cada falha apontada. Já o MXToolbox valida os registros MX e SPF do seu domínio diretamente no DNS, sem instalar nada no site. Rodar os dois antes de qualquer mudança mostra se o e-mail de formulário sai do servidor ou se nem chega a ser enviado. Sem esse teste, é comum trocar de plugin sem motivo nenhum, quando a falha real estava no DNS o tempo todo, fora do alcance do formulário e do plugin de envio.
Quando o e-mail de formulário chega para você mas não para o cliente
Esse é o caso mais confuso de todos: o e-mail de formulário chega na sua caixa de admin, mas a confirmação automática nunca alcança o cliente final. A diferença está no remetente de cada notificação, não no plugin de formulário nem no servidor.
A notificação para você sai do seu domínio autenticado, então passa. A confirmação para o cliente costuma sair com “De” igual ao e-mail digitado no formulário, o que quebra o SPF na hora: o servidor do cliente recusa porque o seu site não tem autorização para enviar em nome do Gmail dele. A correção é definir o remetente da confirmação como o seu próprio domínio e colocar o e-mail do cliente apenas no campo “Responder para”. Plugins de formulário sérios permitem esse ajuste por notificação, e ele resolve a assimetria sem tocar no DNS.
Prevenção: Configure o e-mail de formulário antes de publicar
Prevenir o e-mail de formulário que não chega custa menos do que recuperar um lead perdido, e a regra é configurar SMTP no dia em que o site nasce. Quatro hábitos blindam a entrega desde o primeiro formulário publicado no ar.
São eles: publicar os registros SPF, DKIM e DMARC no DNS; usar sempre remetente do próprio domínio; manter o log de e-mails do plugin de SMTP ativo para auditoria; e proteger o formulário de spam, já que disparo em massa derruba a reputação do remetente em horas. Vale revisar nosso material sobre como proteger o formulário de spam no WordPress e o resumo de combate ao spam no WordPress. Com SMTP e DNS corretos desde o início, o e-mail de formulário simplesmente funciona, e você nunca descobre um lead perdido tarde demais.
Use o plugin certo para o e-mail de formulário no plano da FULL
Resolver o e-mail de formulário de vez junta um plugin de formulário confiável com SMTP autenticado, e o plano PRO da FULL entrega os dois sem custo avulso. O WPForms faz parte do bundle FULL, com notificação por e-mail nativa e confirmação separada para o cliente.
No plano PRO, por R$849 ao ano para até 10 sites, o custo cai para R$85 por site. A gente vê no suporte da FULL que esse combo de WPForms mais SMTP elimina a maior parte dos chamados de entrega. Veja todos os recursos em WPForms no plano da FULL ou conheça os planos da FULL para começar. Para comparar opções, consulte o tutorial de WPForms e o guia do melhor plugin de contato para WordPress.
Legenda: o log do SMTP confirma que o e-mail de formulário saiu autenticado, com SPF e DKIM válidos.
Perguntas frequentes sobre e-mail de formulário que não chega
É possível corrigir o e-mail de formulário sem trocar de plugin?
Sim. Na maioria dos casos a falha está na função mail() do PHP, não no plugin de formulário. Instalar um plugin de SMTP como o WP Mail SMTP e autenticar o envio resolve sem você abandonar o WPForms ou o Contact Form 7 que já usa. O formulário continua igual; só o método de envio muda.
Por que o e-mail de formulário cai direto na caixa de spam?
O e-mail de formulário cai em spam quando o remetente não tem autenticação SPF e DKIM, ou quando o “De” usa um domínio diferente do site. Servidores como Gmail tratam esse envio como suspeito. Alinhar o remetente ao seu próprio domínio e ativar SMTP autenticado costuma tirar a mensagem do spam em poucos minutos.
Qual a diferença entre e-mail não enviado e e-mail barrado pelo servidor?
E-mail não enviado é quando a função mail() do PHP falha e nada sai do site. E-mail barrado é quando a mensagem sai, mas o servidor de destino recusa por falta de SPF ou DKIM. O Mail-Tester mostra qual dos dois é o seu caso, com nota de 0 a 10 e o motivo detalhado.
Como testar se o e-mail de formulário realmente está saindo do servidor?
Use o Mail-Tester: ele gera um endereço temporário, você envia um teste e recebe uma nota com diagnóstico de SPF, DKIM e reputação. Complemente com o MXToolbox para validar os registros MX e SPF do domínio no DNS. Os dois juntos confirmam em segundos se o e-mail de formulário sai ou trava.
É possível enviar e-mail de formulário usando o Gmail como SMTP gratuito?
Sim, dá para usar o Gmail SMTP gratuito com senha de aplicativo, mas há limite de cerca de 500 envios por dia. Para sites com muitos formulários, um provedor como Brevo ou SendLayer escala melhor e evita bloqueio da conta. O WP Mail SMTP conecta qualquer um desses provedores em poucos cliques.
Próximos passos para garantir a entrega dos formulários
Recapitulando, o e-mail de formulário que não chega quase sempre nasce da função mail() do PHP, que envia sem autenticação e é recusada pelos servidores. A correção é SMTP autenticado, com remetente do próprio domínio e teste de entrega no Mail-Tester antes de confiar. Plugins como WP Mail SMTP e WPForms cobrem o fluxo de ponta a ponta. Para continuar aprendendo, o FULL Academy reúne tutoriais, guias e reviews de WordPress em um só lugar.
















