Clientes y visitas

Me escriben por la web y no me llega nada: por qué no llegan los mensajes del formulario y cómo arreglarlo hoy

El formulario funcionaba el día de la entrega. Meses después alguien te dice que te escribió y no contestaste. Los mensajes no llegan, y la web no avisa. Las cinco causas, de la más frecuente a la más rara, con la comprobación de cada una.

Alberto Ollé de Torres 4 de septiembre de 2026 7 min de lectura

Diagrama del recorrido de un mensaje enviado desde el formulario de una web hasta el buzón del dueño, con los cinco puntos donde se pierde

En el foro de soporte de WordPress en español hay un hilo titulado "No me llegan mail de pedido WooCommerce". El dueño explica que los correos llegan "de vez en cuando, es como aleatorio". Le contestan que mire el spam y que desactive plugins uno a uno. El hilo termina con esta frase suya: "al final se cerró la venta online por este fallo". Cerró la tienda por un problema que se arregla en una hora, porque nadie le explicó qué estaba pasando. Esta guía es la explicación.

Por qué un formulario deja de llegar sin que nadie lo toque

Cuando alguien rellena tu formulario, tu web fabrica un correo y lo envía. La pregunta es desde dónde y con qué nombre. En la mayoría de las webs, el servidor donde está alojada la web suelta ese correo por su cuenta, sin identificarse, con tu dirección como remitente. Es como enviar una carta con tu nombre en el sobre desde un buzón cualquiera de otra ciudad.

Hasta hace unos años eso pasaba. Desde febrero de 2024 Google y Yahoo (y desde el 5 de mayo de 2025 Microsoft, para quien envía más de 5.000 correos al día) exigen a todo el que envía correo que el dominio del remitente autorice al servidor que lo envía (registro SPF) o que el mensaje vaya firmado (DKIM), además de un registro inverso correcto y conexión cifrada. Si tu buzón está en Gmail, Google Workspace, Outlook o Microsoft 365, el correo de tu propio formulario tiene que pasar ese control. Y un correo que sale del servidor de la web sin permiso de tu dominio no lo pasa: va a spam, o se rechaza y no llega a ningún sitio.

Por eso "llegaban antes y ahora no". El formulario no ha cambiado. Ha cambiado quien recibe.

Las cinco causas, de la más frecuente a la más rara

1. Tu dominio no autoriza al servidor de la web a enviar correo. El registro SPF de tu dominio dice qué servidores pueden enviar con tu nombre. Si el hosting de la web no está en esa lista (y no suele estarlo cuando el correo lo lleva Google o Microsoft), el correo del formulario falla la comprobación. Resultado: spam o rechazo, y a veces "aleatorio", porque cada buzón receptor decide por su cuenta.

2. El formulario pone como remitente el correo del visitante. Muchos formularios se configuran para que el mensaje llegue "de" quien lo escribió, para que al responder salga su nombre. Si el visitante tiene una cuenta de Gmail, tu servidor está enviando un correo en nombre de gmail.com sin ser Google. Gmail lo rechaza. Es el error más común en formularios hechos con prisa, y el resultado es que no recibes precisamente los mensajes de los clientes con Gmail.

3. El servidor no puede enviar correo, o lo envía mal. Algunos alojamientos compartidos limitan o bloquean el envío desde PHP para evitar spam; otros lo envían desde una dirección IP con mala reputación que ya está en listas negras. Aquí el correo no sale, o sale y nadie lo acepta.

4. Algo se rompió en la web. Una actualización del plugin del formulario, un captcha que dejó de validar, un plugin de caché que sirve una versión antigua del formulario, o un JavaScript que falla en móvil y no llega a enviar. En este caso el visitante suele ver un error o un botón que gira sin fin.

5. El buzón de destino. El correo al que envía el formulario ya no existe (cambió la empresa de proveedor, se fue la persona), está lleno, o tiene una regla que archiva lo que llega "de" la web. Es la causa más tonta y la que más tiempo se tarda en descubrir, porque nadie mira ese ajuste.

Compruébalo en diez minutos

  1. Envíate un mensaje. Desde el móvil con datos, rellena el formulario con un asunto reconocible ("prueba" y la fecha de hoy) y envía. ¿La web muestra "mensaje enviado" o un error? Anota.
  2. Mira la bandeja y el spam. Diez minutos. Si está en la bandeja, el formulario llega (a ti; sigue con el paso 4 para saber si les llega a otros). Si está en spam, causa 1 o 2. Si no está, causas 1, 2, 3 o 5.
  3. Mira quién es el remitente. Abre el mensaje de prueba (aunque esté en spam) y mira el "De:". Si es tu propia dirección o una del dominio de la web, bien. Si es la dirección que escribiste en el formulario (la del visitante), es la causa 2.
  4. Mira el SPF de tu dominio. En mxtoolbox.com, escribe tu dominio y elige "SPF Record Lookup". Tiene que salir un solo registro que empiece por v=spf1. Si no hay ninguno, o hay dos, o el servidor de tu web no está incluido, es la causa 1. En Gmail, con el mensaje abierto, los tres puntos y "Mostrar original" te dicen si SPF, DKIM y DMARC dan PASS o FAIL.
  5. Mira el registro de envíos. Los plugins de formulario serios guardan las entradas recibidas (Forminator y Gravity Forms lo hacen, WPForms según la versión; Contact Form 7 necesita el complemento Flamingo). Si en el registro hay mensajes de los últimos meses que nunca te llegaron por correo, tienes la prueba y, de paso, los mensajes que perdiste. Contéstalos hoy.

Cómo se arregla (y cómo no)

Lo que no lo arregla: cambiar de plugin de formulario, poner un captcha más fuerte, pedir al visitante que "compruebe el spam". Lo que sí:

  1. Enviar el correo con identidad. Un plugin de envío (WP Mail SMTP o FluentSMTP en WordPress) conectado a tu buzón real de Google o Microsoft, o a un servicio de envío (Brevo, Amazon SES, Postmark). El correo sale firmado y autorizado, y llega. Es la solución en la mayoría de los casos.
  2. Remitente propio, visitante en "Responder a". El "De:" siempre es una dirección de tu dominio (por ejemplo, web@tunegocio.es). La del visitante va en el campo "Responder a", que es para lo que existe. Al pulsar responder sale su dirección igual.
  3. SPF, DKIM y DMARC bien puestos. Un solo SPF que incluya a todos los que envían con tu nombre (correo, web, facturación, boletín), DKIM activado en cada uno con tu dominio y DMARC publicado. Lo explicamos en la guía de correo.
  4. Guardar cada mensaje en la web, además de enviarlo. Si el correo falla algún día, los mensajes siguen en el panel. Y una notificación de respaldo por Telegram o por WhatsApp, que no depende del correo.
  5. Probarlo cada semana. Un envío real desde un móvil, comprobado en el buzón. Es una de las comprobaciones del plan de mantenimiento.

Un caso concreto: el formulario que solo falla con Gmail

Es el patrón de la causa 2 y el que más cuesta detectar, porque el dueño hace la prueba desde su propio correo de empresa y le llega. Los clientes con Gmail, en cambio, ven "mensaje enviado" y el mensaje se rechaza en silencio, porque el servidor de la web está enviando un correo que dice venir de gmail.com. Si en tu registro de entradas ves mensajes de direcciones de Gmail que nunca recibiste, es esto. La solución son dos ajustes en el formulario: remitente fijo de tu dominio y la dirección del visitante en "Responder a".

Qué hacemos nosotros

En una web que revisamos por primera vez, la auditoría al momento comprueba si existe formulario y el estado de SPF, DKIM y DMARC del dominio. Si algo está en rojo, el arreglo es una hora a 65 € sin IVA: DNS, envío autenticado, remitente correcto y prueba desde tres buzones (Gmail, Outlook y uno propio). En las webs bajo mantenimiento va incluido en el alta y se prueba cada mes.

Pasa la auditoría a tu web y mira los bloques de contacto y de correo. Si están en verde y aun así no te llega nada, escríbenos con el nombre del plugin y del proveedor de correo: es la causa 3 o la 5, y se ve en media hora con acceso.

Preguntas que nos hacen con el formulario roto

Envíate un mensaje tú mismo desde el móvil con los datos, con un asunto reconocible, y mira en la bandeja de entrada y en spam durante diez minutos. Si no aparece en ninguna de las dos, el formulario no llega. Si aparece en spam, llega pero mal, y a otros no les llegará. Repite la prueba una vez al mes; es lo que hacemos en cada web que mantenemos.

Porque algo cambió sin que nadie tocara el formulario: el proveedor de correo (de un buzón del hosting a Google o Microsoft), las exigencias de Gmail y Outlook a los remitentes (febrero de 2024 y mayo de 2025), una actualización del plugin, o un cambio de servidor. El formulario sigue enviando; el que recibe ya no se fía.

Casi nunca. Contact Form 7, WPForms, Forminator o el de Elementor entregan el mensaje al servidor y el servidor lo envía por una función básica de PHP sin identificarse. El problema está en cómo sale ese correo, no en el formulario. Cambiar de plugin sin cambiar el envío no arregla nada.

Es enviar el correo del formulario a través de un servicio de correo real, con usuario y contraseña, en lugar de dejar que el servidor lo suelte por su cuenta. Se hace con un plugin (WP Mail SMTP, FluentSMTP) conectado a tu buzón de Google o Microsoft, o a un servicio de envío como Brevo. Es la solución en la mayoría de los casos y se configura en media hora.

Una hora de trabajo a 65 € sin IVA en casi todos los casos: revisar el DNS del dominio (SPF, DKIM, DMARC), configurar el envío autenticado, poner el remitente correcto y probar desde tres buzones distintos. En las webs con mantenimiento se revisa cada semana que el formulario envía.

Fuentes

Seguir leyendo

Otras guías que vienen a cuento

¿Hablamos de tu web o de lo que necesitas montar?

Cuéntanoslo y en 24 horas laborables tienes una respuesta con precio cerrado. Si ya tienes web, empieza por la auditoría: es gratis y tarda un minuto.