Todos los artículos

El formulario de contacto no envía: cómo comprobarlo tú mismo

El formulario muestra "mensaje enviado", pero el correo no llega. Aprende a comprobar si falla el formulario, el servidor o la entrega del correo.

Cuando alguien me muestra una web con el formulario de contacto roto, casi siempre llevaba meses así. La página carga, el botón responde y aparece el mensaje de "gracias, te contactaremos en breve". El visitante se queda tranquilo porque cree que te ha escrito.

No es el mismo problema que una web caída, que se detecta en el primer segundo y tiene su propio procedimiento en mi web está caída. Aquí todo parece correcto por fuera. El fallo está en el tramo que convierte ese texto en un correo dentro de tu bandeja. Y el cliente no avisa. Si no le contestas, se va a la competencia mientras tú piensas que la web no trae trabajo.

La comprobación clave es esta:

  • Si el envío aparece guardado en el plugin, el formulario ha recibido y guardado los datos. El siguiente paso es comprobar si el correo se ha enviado correctamente.
  • Si no aparece guardado, hay que revisar el propio formulario, sus campos, el plugin o la conexión con el servicio de envío.

Dónde se guardan los mensajes enviados

Los plugins de formulario (un plugin es un añadido que se instala en WordPress para darle una función que no trae de serie) suelen guardar una copia de cada envío dentro de la propia web, en una pantalla que se llama "entradas", "envíos" o algo parecido. Muchos dueños no saben que está ahí.

Esa lista es la prueba más útil que vas a encontrar. Si tus mensajes de prueba aparecen en ella, el formulario está recibiendo y guardando los datos. El siguiente paso es comprobar el correo: puede que no se esté enviando, que el servidor lo rechace o que el proveedor lo esté filtrando. Si no aparece el envío, el problema está antes, en el propio formulario. Y si tiene entradas hasta una fecha concreta y nada después, acabas de localizar el día en que algo se rompió, que es el dato que necesita quien vaya a arreglarlo.

El aviso de "mensaje enviado" solo confirma la mitad del camino

El formulario hace su parte cuando el visitante pulsa enviar: recoge lo que ha escrito y se lo entrega al sistema que manda el correo. En muchas webs, ese sistema es el del propio servidor, el ordenador donde está alojada la web, que tienes contratado con un hosting. A partir de ahí, el mensaje tiene que salir, llegar a tu dirección y colarse en tu bandeja entre la publicidad y los avisos.

Ese segundo tramo es el que nadie comprueba. Puede fallar por varios motivos, y todos acaban con la misma pantalla de confirmación para el visitante: la dirección de destino ya no existe, ha cambiado o está mal escrita, el mensaje llega pero cae en la carpeta de spam (el cajón donde los proveedores de correo meten lo que consideran sospechoso), el servidor rechaza el envío o el mensaje rebota sin que el formulario muestre un aviso claro, o hay un problema de configuración, un límite de envío o un error del proveedor.

Dos cosas que puedes mirar antes de llamar a nadie

La primera es a qué dirección está enviando el formulario. Se ve en los ajustes del propio formulario, dentro del panel de tu web, y ahí aparece de todo: la cuenta de alguien que dejó de trabajar contigo, una dirección antigua, un dominio escrito con una letra cambiada.

La segunda es quién abre ese correo. Un caso bastante común es el del buzón que recibe los mensajes correctamente y lleva un año sin que nadie entre a mirar, porque el dueño usa otra cuenta para todo.

Qué significa cada resultado

Conviene enviar el formulario desde dos direcciones distintas y comparar en cuál de las dos bandejas aparece cada mensaje. Si aparece en una bandeja y en la otra no, puede haber un filtro relacionado con el remitente, el contenido del mensaje o la configuración del buzón. Si no aparece en ninguna de las dos, todavía no se puede saber si el fallo está en el formulario o en la entrega del correo: comprueba entonces si el plugin ha guardado una copia del envío.

Por qué el correo de una web acaba en spam

Muchas webs de WordPress envían los avisos utilizando el servicio de correo del propio servidor, aunque otras usan SMTP o un servicio de correo transaccional. El sistema del propio servidor está pensado para que la web avise de cosas, no para que un negocio se comunique con sus clientes. Cuando el envío no está bien configurado, el mensaje puede salir con una identidad que no coincide correctamente con tu dominio o sin las comprobaciones necesarias, y los proveedores de correo lo miran con desconfianza. Cuando varias webs comparten IP o la misma infraestructura de envío, los problemas de reputación de una pueden afectar a las demás.

La solución suele pasar por dos cosas que se complementan. Por un lado, usar un servicio de envío de correo fiable: puedes conectar el formulario a un servidor SMTP o a un servicio de correo transaccional, según lo que necesites, en lugar de depender del correo del propio servidor. Por otro, configurar correctamente el dominio añadiendo los registros SPF y DKIM y, cuando corresponda, DMARC. Estos mecanismos ayudan a los proveedores a comprobar quién envía el mensaje y a decidir cómo tratarlo: ninguno garantiza por sí solo que el correo llegue a la bandeja de entrada, pero una configuración correcta reduce muchos problemas de entrega. En cómo crear un correo corporativo con tu dominio está explicado con detalle, incluidos esos registros y por qué sin ellos tus mensajes aparecen como sospechosos.

El plugin del formulario y las actualizaciones

Cuando el formulario ha dejado de enviar de un día para otro, la causa suele estar en una actualización. Otras veces el plugin es antiguo, de esos que su autor abandonó hace años y que funcionan hasta que la versión de WordPress cambia lo suficiente. También puede haber conflictos entre plugins, sobre todo si varios gestionan funciones parecidas o si alguno no es compatible con el resto de la instalación. Tener dos plugins de formularios instalados no es un problema por sí solo, pero conviene comprobar cuáles están activos y si alguno está interfiriendo con el envío.

Se ve pronto en la ficha del plugin: cuándo se actualizó por última vez y con qué versión de WordPress es compatible. Ese dato es más fiable que la puntuación de las valoraciones, y es el mismo criterio que aplico cuando reviso los plugins que cualquier web necesita y los que sobran.

Cuando el formulario ni aparece, o solo falla en el móvil

Si el formulario desaparece sin motivo, lo primero que miro es si alguien ha tocado la caché (el sistema que guarda una copia ya montada de cada página para servirla más rápido) y la web está enseñando una versión antigua con un código caducado dentro. En el móvil se suman detalles que en el ordenador no se ven, porque el dedo no apunta como un ratón.

Lo que ves en tu web Causa más probable Dónde mirar
El formulario no aparece Una actualización rota o una copia antigua guardada en la caché Comprueba la compatibilidad y haz una copia de seguridad antes de actualizar; después, vacía la caché
Se ve, pero en el móvil el botón no responde El aviso de cookies tapa el botón o hay un campo obligatorio sin marcar Pruébalo en tu propio móvil, sin wifi
Sale un error al pulsar enviar El control de "no soy un robot" ha caducado o falta un campo Recarga la página y repite el envío
Dice enviado y no llega nada El correo de destino o un filtro de spam Ajustes del formulario y carpeta de spam

Lo que evita depender de la suerte

Un formulario no se rompe todos los días, y precisamente por eso pasa desapercibido durante semanas. Lo que funciona es tratarlo como cualquier otra pieza de la web que da dinero: una prueba al mes y otra después de cada cambio, aunque el cambio parezca no tener relación.

Junto a eso, tres costumbres que no cuestan nada. Que la dirección de destino sea un buzón que se abre a diario y no una cuenta olvidada. Configurar una segunda dirección de aviso solo si es un buzón controlado, que alguien mire a diario y con las mismas medidas de seguridad y acceso limitado a quien realmente lo necesite; si nadie la va a revisar, es mejor no añadirla. Y descargar de vez en cuando la lista de entradas del plugin, para tener los mensajes guardados en un sitio que no dependa de la web.

Las entradas del formulario pueden contener datos personales. Consérvalas solo durante el tiempo necesario, limita quién puede acceder a ellas y evita descargarlas en ordenadores o servicios que no estén protegidos. Y cuando hagas las pruebas, no introduzcas datos reales de clientes.

Cuándo dejar de probar y pasar el aviso

Buena parte de todo esto se resuelve solo con revisar la dirección de destino o la carpeta de spam. Si has hecho las pruebas y el mensaje sigue sin aparecer en ningún sitio, el problema está en un ajuste del servidor o del correo, y ya no merece la pena que sigas dando vueltas.

En ese punto, el siguiente paso es pedir a quien te gestione el hosting o el correo el registro de envíos. Ahí se ve si la web intentó mandar el mensaje y con qué respuesta. Conviene tener claro que un correo aceptado no es un correo entregado: que el servidor o el proveedor lo acepte solo significa que lo ha admitido en esa fase del proceso, no que esté garantizado que vaya a acabar en la bandeja de entrada.

Cuando pidas ayuda, lleva los datos que ya tienes. La fecha del último mensaje guardado en la lista de entradas, la hora de tu prueba y el resultado con las dos direcciones. Con eso, quien te atienda sabe en qué tramo mirar sin hacerte repetir la mitad de las preguntas.

Compruébalo tú mismo

Con la web abierta y cinco minutos:

  1. Envía un mensaje desde tu propio formulario, mejor desde otra conexión (por ejemplo, el móvil con datos) para descartar un problema local del navegador o de la red, y escribe la hora en el texto.
  2. Manda un segundo mensaje desde otra dirección de correo distinta a la de la primera prueba.
  3. Abre las dos bandejas y revisa también la carpeta de spam. Si el mensaje está ahí, márcalo como "no es spam" para que el proveedor aprenda, tal como explica Google en su ayuda de Gmail.
  4. Entra en los ajustes del formulario y lee a qué dirección envía.
  5. Busca la lista de entradas del plugin y apunta la fecha del último mensaje guardado.

Con esos cinco datos sabes si tu web está recibiendo lo que la gente le escribe, y tienes delante la información que necesita cualquiera que vaya a arreglarlo. Si todo sale bien, repite la prueba dentro de un mes: es la forma de que un formulario roto deje de aparecer por sorpresa.

¿Crees que a tu web le pasa esto?

Mándame la URL y te digo gratis, con números, qué le pasa y cuánto costaría arreglarla. Sin compromiso.

Pedir diagnóstico gratis