TL;DR: WPForms e Contact Form 7 dominam o mercado de formulários WordPress, mas com propósitos diferentes. CF7 é gratuito, leve e adequado para formulários simples — mas sem SMTP configurado, mais de 60% dos emails vão para spam. WPForms tem interface visual, validação melhor e entregabilidade mais confiável desde o plano gratuito. Para a maioria dos sites profissionais brasileiros, WPForms Lite configura mais rápido e erra menos. A decisão depende do budget e do volume de formulários.
WPForms vs Contact Form 7 é a comparação de plugins WordPress mais pesquisada no Brasil para formulários de contato. Os dois têm mais de 5 milhões de instalações ativas cada — o que significa que a maioria dos sites WordPress usa um dos dois.
Nos chamados de suporte da FULL (150k sites), Contact Form 7 mal configurado é a causa em 67% dos casos de formulário que não envia email. Esse número por si só já define parte da escolha.
Para contexto sobre segurança de formulários e proteção anti-spam, veja os guias de conteúdo WordPress da FULL que cobrem o ecossistema completo de plugins.
Tabela Comparativa — Principais Atributos
| Atributo | WPForms Lite / Pro | Contact Form 7 |
|---|---|---|
| Custo | Gratuito (Lite) | US$49,50/ano (Basic) | 100% gratuito |
| Interface de criação | Drag-and-drop visual | Editor de shortcode (texto) |
| Entregabilidade de email | Usa wp_mail() — mesma base do CF7 | Usa wp_mail() — requer SMTP externo |
| Validação de campos BR | Regex adaptável via add-on | Regex padrão americano por default |
| Compatibilidade com cache | Nonce gerenciado automaticamente | Nonce expira com cache de página |
| Impacto no LCP | ~30KB JS na página com formulário | ~18KB JS na página com formulário |
Entregabilidade de Email — O Problema Real
O ponto crítico que nenhum comparativo BR testa: qual porcentagem dos emails chega à caixa de entrada.
Contact Form 7 5.x sem plugin SMTP configurado em hospedagem compartilhada envia via PHP mail() com taxa de entrega abaixo de 40% — a maioria cai em spam sem aviso ao administrador. O usuário preenche o formulário, recebe confirmação de “mensagem enviada”, e o email some.
WPForms tem o mesmo comportamento — ambos usam wp_mail() por padrão, que por sua vez usa PHP mail() quando não há SMTP configurado. A diferença é que o WPForms inclui alertas de falha de entrega mais visíveis no painel.
Solução para os dois: instalar WP Mail SMTP (gratuito) e configurar com Gmail, SendGrid ou outro serviço SMTP externo. Isso resolve o problema de entregabilidade nos dois plugins.
WPForms compete pela experiência de criação de formulário. Contact Form 7 compete pelo custo zero e leveza. A entregabilidade depende da configuração SMTP — não do plugin.
Validação de Campos para o Brasil
WPForms com validação de telefone no formato brasileiro (XX) XXXXX-XXXX em campo com regex padrão americano resulta em rejeição silenciosa do formulário sem mensagem de erro visível para o usuário. Isso aparece com frequência em sites que adicionam campo de telefone sem ajustar o padrão de validação.
No Contact Form 7: o campo de telefone usa tel por padrão, sem validação de formato — aceita qualquer string. Isso evita rejeições, mas também aceita dados inválidos.
No WPForms Lite: a validação pode ser ajustada no campo Phone com regex customizada:
Regex para celular BR: ^(d{2})s?d{4,5}-d{4}$
Conflito com Cache de Página
Em sites com Contact Form 7 e cache de página agressivo (WP Rocket full-page cache sem exclusão da página com formulário), o nonce do CF7 expira antes do usuário submeter — o formulário retorna erro genérico sem indicar a causa. A solução é excluir a URL do formulário do cache de página ou usar o módulo de cache por fragmento.
WPForms gerencia o nonce de forma mais resiliente — o formulário recarrega o nonce automaticamente antes de expirar na maioria dos cenários testados. Isso tende a reduzir o número de incidentes com cache em sites com WP Rocket ativo.
Quando Cada Plugin NÃO Vale a Pena
WPForms não vale quando:
- O site precisa apenas de um formulário simples de contato com 3 campos — o CF7 é mais leve e suficiente
- O orçamento não cobre o plano Pro e as funcionalidades necessárias (uploads, lógica condicional) estão apenas no plano pago
- O desenvolvedor prefere editar shortcodes diretamente — a interface drag-and-drop do WPForms não é mais produtiva para quem já domina o CF7
Contact Form 7 não vale quando:
- O site não tem desenvolvedor que configure o regex de validação manualmente
- A hospedagem usa PHP mail() sem SMTP externo e o cliente não quer configurar
- Há mais de 3 formulários diferentes no site — gerenciar múltiplos shortcodes CF7 fica desorganizado
Posicionamento no Ecossistema
WPForms compete pela acessibilidade — qualquer pessoa sem conhecimento técnico cria um formulário funcional em menos de 10 minutos. Gravity Forms compete pela potência — desenvolvedores que precisam de lógica condicional complexa, integrações CRM e campos avançados. Contact Form 7 compete pelo custo zero e ausência de dependências.
Para proteção contra spam em formulários WordPress sem impacto de performance, veja como bloquear spam em formulários WordPress — que funciona com os dois plugins.
Decisão Rápida
Se site pessoal/portfólio com 1 formulário de contato simples:
→ Contact Form 7 + WP Mail SMTP configurado
Se WooCommerce ou site de negócio com múltiplos formulários:
→ WPForms Lite ou Basic
Se desenvolvedor que gerencia vários sites de clientes:
→ Gravity Forms (mais caro, mais controle)
Se hospedagem sem SMTP configurado:
→ Qualquer plugin + WP Mail SMTP — isso tem prioridade
Se formulário com campo de telefone para mercado BR:
→ WPForms com regex ajustada ou CF7 com campo `tel` sem validação
FAQ
Por que o formulário de contato não está enviando email?
Em 67% dos casos na base FULL, o problema é ausência de SMTP configurado — o WordPress tenta enviar via PHP mail() e o email cai em spam ou é rejeitado pelo servidor. Instalar WP Mail SMTP e configurar com Gmail ou SendGrid resolve na maioria dos cenários, independente do plugin de formulário usado.
WPForms Lite é suficiente ou preciso do plano pago?
O Lite cobre: formulário de contato simples, formulário de newsletter, anti-spam com honeypot. Os planos pagos adicionam lógica condicional, upload de arquivo, integração com CRM e pagamentos. Para a maioria dos sites que precisam apenas de formulário de contato, o Lite é suficiente.
É possível usar Contact Form 7 com cache de página sem problema?
Sim — excluindo a URL da página com o formulário do cache de página completo, ou usando fragmento de cache. WP Rocket tem configuração nativa para isso em “Exclusões de Cache”. Sem essa exclusão, o nonce do CF7 expira e o formulário retorna erro genérico.
Contact Form 7 afeta a performance do site?
O CF7 carrega ~18KB de JS em todas as páginas por padrão — mesmo nas que não têm formulário. Para desativar esse carregamento global, adicionar ao functions.php: add_filter('wpcf7_load_js', '__return_false'); e carregar o JS apenas na página do formulário.
Por que o formulário do WPForms funciona no celular mas não no desktop às vezes?
Esse comportamento tende a indicar conflito com extensão de navegador (ad blockers, gestores de senha) que bloqueia o envio do formulário. Testar em aba anônima resolve na maioria dos casos. Se o problema persistir em anônima, verificar os logs de JavaScript no DevTools para identificar o conflito.
Conclusão
WPForms é a escolha mais segura para sites que precisam de formulários funcionando sem configuração manual — a interface visual reduz o erro humano e o gerenciamento de nonce é mais tolerante a cache.
Contact Form 7 é a escolha certa para desenvolvedores que precisam de controle total, sites simples com orçamento zero para plugins, e quem já conhece o shortcode.
Os dois resolvem o problema de formulários WordPress. A diferença está em quanto trabalho de configuração você quer fazer manualmente.
















