Para evitar el spam en un formulario de contacto no basta un CAPTCHA: funciona mejor una combinación de controles silenciosos (honeypot, límite de envíos y validación en el servidor), un reto visible solo para el tráfico sospechoso y una cola de revisión para los casos dudosos. Así se protege la bandeja de entrada sin poner trabas a quien de verdad quiere pedir cita. Esta guía explica cada capa, cuándo usarla y qué obligaciones de privacidad conviene tener presentes en España.
En resumen
- Empieza por controles que el usuario no ve: un campo trampa (honeypot), un límite de envíos por IP y una validación de datos en el servidor.
- Reserva el CAPTCHA como segunda capa para el tráfico que parece automatizado; un reto visible para todos cuesta conversiones.
- No borres de forma automática lo dudoso: envíalo a una cola de revisión, sobre todo si eres una clínica y cada solicitud puede ser un paciente.
- Pide solo los datos necesarios y cumple el RGPD: el antispam no te exime de informar, minimizar y justificar cada dato.
- Forma al equipo administrativo: un envío de spam puede contener un enlace de phishing y nadie debe abrirlo ni contestarlo.
Tabla de contenidos
- Por qué llega spam a tu formulario
- Qué cuesta realmente el spam en una clínica o una empresa con mucha carga
- Primera capa: controles invisibles
- Segunda capa: CAPTCHA, pero solo cuando hace falta
- Tercera capa: filtros de contenido y listas de bloqueo
- Verificar que el contacto es real
- Cómo tratar lo que queda en la zona gris
- Menos campos, menos ruido, más cumplimiento
- Procedimiento para el equipo: qué hacer con un envío sospechoso
- Nuestra perspectiva: el spam es un síntoma, no el problema
- Cuándo automatizar el triage y la agenda
- Checklist de implantación en una tarde
- Preguntas frecuentes
- Fuentes
Por qué llega spam a tu formulario
Un formulario público es una puerta abierta. Los bots rastrean la web buscando código que indique un campo de formulario y lo rellenan de forma autónoma, tal como describe Brevo en su guía sobre bots de formulario. Cuando encuentran uno, lo usan para colar publicidad, lenguaje abusivo, enlaces a malware o a páginas de phishing, un patrón que WordPress.com resume en su artículo sobre spam de formularios.
No todo el ruido es automático. Hay también personas que envían solicitudes irrelevantes: ofertas de posicionamiento web, comerciales de servicios que no has pedido o consultas que no tienen nada que ver con tu actividad. Para el equipo el efecto es el mismo: tiempo perdido en abrir, leer y descartar.
Y hay un tercer caso, el más serio. Los avisos de INCIBE documentan campañas de phishing que usan formularios falsos para obtener datos personales y bancarios, como en la campaña que suplantaba a SEUR o la que imitaba a la Agencia Tributaria en 2025. Un envío sospechoso puede traer el enlace que inicia el fraude.
Qué cuesta realmente el spam en una clínica o una empresa con mucha carga
El coste no es solo el correo basura. Es la persona de recepción que revisa a mano cada envío, el comercial que llama a un número falso y el lead real que queda enterrado entre veinte mensajes sin valor. En una clínica, además, la saturación de la bandeja retrasa la respuesta a quien sí necesita cita, y cuanto más tarda una respuesta, más probable es que el paciente pida cita en otro sitio.
Por eso el objetivo no es bloquear lo máximo posible, sino separar bien. Un filtro demasiado agresivo es tan caro como uno que no filtra: rechaza a pacientes reales y nadie se entera.
Primera capa: controles invisibles
La mejor experiencia no empieza con un CAPTCHA visible. Empieza con controles que el usuario legítimo nunca nota.
Honeypot: un campo que solo ven los bots
Un honeypot es un campo oculto para las personas pero visible en el código. Los bots lo rellenan; las personas no. Si llega un envío con ese campo con contenido, se descarta. WordPress.com explica que este método rechaza los envíos cuando el campo oculto contiene un valor y no añade ninguna interacción al usuario, y Brevo lo describe de forma parecida.
Buenas prácticas:
- Ponle un nombre verosímil (por ejemplo, "web" o "empresa"), no "trampa".
- Ocúltalo con CSS y marca el campo para que los lectores de pantalla lo ignoren, de modo que no confunda a usuarios con discapacidad visual.
- Comprueba también que el campo está vacío en el servidor, no solo en el navegador.
Limitación de velocidad (rate limiting)
El patrón típico de un bot es enviar muchas solicitudes desde la misma IP o cuenta en muy poco tiempo. La solución es fijar un máximo por intervalo y bloquear o descartar lo que lo supere, algo que Brevo recomienda explícitamente.
No hay un número universal: el límite hay que ajustarlo al tráfico real de cada negocio. Una regla orientativa para empezar es mirar cuántos envíos legítimos recibes de un mismo origen en una hora y fijar el umbral claramente por encima. Presta atención a las redes compartidas: un hospital, una oficina, una universidad o una VPN pueden concentrar muchos usuarios legítimos tras una sola IP. La regla debe revisarse con cuidado para no rechazar a pacientes o prospectos reales.
Validación en el servidor
La validación del navegador (campos obligatorios, formato de email) mejora la experiencia, pero un bot la salta sin esfuerzo porque envía los datos directamente. Todo lo que importe debe comprobarse de nuevo en el servidor:
- Formato del correo y del teléfono (prefijo y longitud acordes a España o al país esperado).
- Longitud máxima de cada campo; un nombre de 400 caracteres no es un nombre.
- Rechazo de HTML o URLs en campos de nombre y apellidos, que es una de las señales que HubSpot usa para marcar un envío como spam.
- Comprobación de que el dominio del correo existe y tiene registros para recibir mensajes.
La validación de datos de contacto tiene un límite: confirma que un dato parece válido, no que pertenezca a quien lo escribe. Para eso hace falta una verificación activa, que veremos más abajo.
Segunda capa: CAPTCHA, pero solo cuando hace falta
Un CAPTCHA visible en todos los formularios penaliza a todos para frenar a unos pocos. Resulta más razonable activarlo solo cuando las señales anteriores indican algo raro: demasiados envíos, comportamiento extraño o contenido sospechoso.
Cómo funciona reCAPTCHA v3
reCAPTCHA v3 no muestra ningún reto. Según la documentación de Gravity Forms, asigna una puntuación de 1,0 a una interacción considerada buena y de 0,0 a una actividad que parece un bot. Lo importante es que no bloquea nada por sí mismo: tu aplicación debe comparar esa puntuación con un umbral y decidir qué hacer.
Tres consecuencias prácticas:
- Verifica en el servidor. La integración requiere JavaScript y una comprobación contra los servidores de Google, y el token caduca a los pocos minutos. La validación debe hacerse justo antes de aceptar la solicitud, no solo en el navegador.
- El umbral lo decides tú. Trátalo como una señal operativa, no como un veredicto.
- Empieza con una cola de revisión. En B2B y en salud es más seguro mandar las puntuaciones bajas a revisión que rechazarlas de plano, al menos durante las primeras semanas, hasta ver cuántos falsos positivos genera.
Otras opciones de reto
Existen alternativas al servicio de Google, como los retos de verificación sin imagen que prometen menos fricción. La elección depende de tu pila tecnológica y de tu política de privacidad. Lo que no cambia es el principio: el reto humano es para el tráfico que parece automatizado, no para el paciente que quiere pedir hora un lunes a las 8:00.
Tercera capa: filtros de contenido y listas de bloqueo
Cuando el spam lo envían personas o bots sofisticados, los filtros de contenido ayudan. La documentación de HubSpot, actualizada el 28 de enero de 2026, enumera los criterios con los que un formulario puede marcarse como spam:
- HTML o URLs en nombre y apellidos.
- Dominios insertados no autorizados.
- IPs o referentes excluidos.
- Galimatías detectado por IA, en ciertos planes.
En esos casos el envío se separa y no crea un contacto nuevo. HubSpot ofrece además CAPTCHA, bloqueo de dominios concretos y bloqueo de proveedores de correo gratuitos.
Ese último control hay que usarlo con cuidado. Bloquear dominios gratuitos tiene sentido en un formulario de ventas B2B donde esperas correos corporativos, pero en una clínica es absurdo: la mayoría de los pacientes usan cuentas personales.
Una tabla para decidir
| Control | Fricción para el usuario | Qué frena | Riesgo de falsos positivos |
|---|---|---|---|
| Honeypot | Ninguna | Bots básicos | Bajo |
| Limitación de velocidad | Ninguna | Envíos masivos desde un origen | Medio en redes compartidas |
| Validación en servidor | Ninguna | Datos mal formados, HTML y URLs | Bajo |
| reCAPTCHA v3 con umbral | Ninguna | Tráfico con apariencia de bot | Medio, según el umbral |
| Bloqueo de dominios | Ninguna | Orígenes concretos | Alto si bloqueas correos gratuitos en clínicas |
| Verificación por correo | Media | Registros falsos | Medio en solicitudes urgentes |
Verificar que el contacto es real
Si necesitas confirmar que quien rellena el formulario es dueño del correo, la verificación por enlace es el método clásico. Squarespace recomienda el correo de confirmación y explica que Mailchimp lo llama doble opt-in. Va muy bien para newsletters y recursos descargables.
Para una solicitud de cita urgente, en cambio, no conviene hacer depender toda la conversión de un doble opt-in. Una opción equilibrada: registra la solicitud, responde de inmediato por el canal que el usuario eligió y reserva la verificación por enlace para antes de enviar campañas de seguimiento.

Cómo tratar lo que queda en la zona gris
Ningún sistema acierta al 100 %. Un experto del foro de WordPress lo decía a su manera: el spam es casi imposible de prevenir del todo, así que lo sensato es diseñar qué pasa con lo dudoso.
La recomendación para formularios de citas es clara: separar, no eliminar. HubSpot permite marcar esos envíos como spam y apartarlos de los contactos normales. Un filtro debe proteger la bandeja y el CRM sin convertir una señal imperfecta en una pérdida irreversible. Un flujo razonable:
- Los envíos con honeypot relleno se descartan sin más.
- Los envíos con puntuación baja o contenido raro van a una cola de revisión, que alguien mira una o dos veces al día.
- Si la cola de un mes tiene un porcentaje apreciable de solicitudes legítimas, sube el umbral de tolerancia.
- Cada trimestre, revisa las reglas con datos: qué se bloqueó, qué era real y qué se coló.
Menos campos, menos ruido, más cumplimiento
Pedir más campos no equivale a cualificar mejor. Un formulario largo ahuyenta a los usuarios reales y los bots lo rellenan sin problema. Y en España hay un motivo legal para pedir solo lo necesario.
La AEPD presenta la minimización como tratar la mínima cantidad de datos posible. En una clínica, la primera solicitud puede limitarse a datos de contacto, servicio general y disponibilidad. Los datos especialmente sensibles, como detalles clínicos, deben recabarse después, por un canal y un flujo adecuados, no en un formulario público.
Lo que debe decir tu formulario
El antispam no sustituye las obligaciones de información. Según el decálogo de la AEPD sobre políticas de privacidad, en línea con el artículo 13 del RGPD, hay que informar de quién trata los datos, con qué finalidad, con qué base jurídica, a quién se comunican, durante cuánto tiempo se conservan y qué derechos tiene la persona. La misma agencia recuerda que el silencio, las casillas premarcadas o la inacción no constituyen consentimiento válido.
Tres consecuencias prácticas:
- No premarques la casilla de comunicaciones comerciales.
- No mezcles de forma automática una solicitud de cita con un consentimiento publicitario.
- Documenta qué datos y señales usa tu CAPTCHA y limita su recogida a lo necesario.
Si dudas sobre la base jurídica de un caso concreto, consulta con tu delegado de protección de datos o con un abogado especializado en protección de datos.
Procedimiento para el equipo: qué hacer con un envío sospechoso
Un plugin no basta. El personal administrativo necesita un procedimiento, porque un envío puede contener el enlace que inicia un fraude. Basándonos en los avisos de INCIBE:
- No hagas clic en enlaces ni abras adjuntos de envíos sospechosos.
- No contestes al remitente.
- Conserva evidencias (captura, cabeceras, fecha y hora).
- Bloquea al remitente.
- Si crees que ha habido un intento de fraude, denúncialo; INCIBE indica en sus avisos el teléfono de ayuda en ciberseguridad 017.
- Si alguien del equipo introdujo datos personales o bancarios en una página sospechosa, avisa de inmediato a tu banco y a la persona responsable de seguridad.
Nuestra perspectiva: el spam es un síntoma, no el problema
En Rive Studios trabajamos con equipos de clínicas, agencias e inmobiliarias que reciben solicitudes por muchos canales. Lo que vemos es que el spam rara vez es el verdadero cuello de botella. El problema es que cada solicitud, buena o mala, acaba en manos de una persona que tiene que leerla, decidir si es relevante, llamar y agendar.
Por eso defendemos un enfoque en dos pasos. Primero, un filtro técnico razonable, como el que has leído arriba. Segundo, y más importante, un triage automático que cualifique lo que sí llega: ¿es un paciente o un cliente potencial real?, ¿qué servicio busca?, ¿cuándo puede? A partir de ahí la agenda se completa sola, se sincroniza con el calendario y el CRM, y se activan los recordatorios por WhatsApp o correo.
También tenemos una postura clara sobre los datos: cualificar no significa pedir más información, sino pedir la correcta y justificarla. Un formulario que solicita lo mínimo, informa bien y responde rápido convierte mejor que uno largo, y además cumple mejor con la normativa.
— Gustavo
Cuándo automatizar el triage y la agenda
Si tu equipo dedica horas a revisar formularios, llamar para confirmar datos y reprogramar citas que no se cumplen, el filtro antispam es solo la primera pieza. En Rive Studios ofrecemos un sistema automatizado con inteligencia artificial que cubre la gestión de leads y el agendamiento, el triage y la cualificación automática, el onboarding y seguimiento autónomo, y la sincronización bidireccional con CRM como HubSpot o Salesforce y con agendas de Google Calendar u Outlook. Está pensado para clínicas, agencias e inmobiliarias con carga administrativa alta, no para quien solo necesita un calendario básico.
No publicamos precios; si quieres ver cómo encajaría en tu operativa, puedes conocer Rive Studios y lo que automatizamos.
Checklist de implantación en una tarde
Si hoy recibes spam y quieres un punto de partida, este orden suele dar el mejor resultado con el menor esfuerzo:
- Mide la situación. Cuenta cuántos envíos recibes al día y qué porcentaje es basura. Sin esa base no sabrás si mejoras.
- Añade el honeypot y valida el campo en el servidor.
- Configura la validación de servidor: formato, longitud y rechazo de URLs en nombre y apellidos.
- Fija un límite de velocidad por IP, con un margen holgado y excepciones para redes corporativas conocidas.
- Activa un sistema de puntuación (como reCAPTCHA v3) con cola de revisión para puntuaciones bajas, sin rechazo automático.
- Revisa el formulario: reduce campos, añade la información de privacidad por capas y desmarca las casillas de marketing.
- Escribe el procedimiento para el equipo y reserva un rato semanal para revisar la cola.
- Reevalúa a las cuatro semanas con datos reales y ajusta umbrales.
Preguntas frecuentes
¿Cómo evitar el spam en el formulario de contacto?
Combina un honeypot, un límite de envíos por IP y validación en el servidor, y añade un CAPTCHA solo para el tráfico sospechoso. Envía los casos dudosos a una cola de revisión en lugar de borrarlos. Así reduces el ruido sin perder solicitudes reales.
¿Por qué la gente envía spam a los formularios de contacto?
Principalmente porque los bots rastrean formularios públicos para insertar publicidad, enlaces maliciosos o recopilar datos. A veces es phishing: INCIBE ha documentado campañas que usan formularios para dar credibilidad a un fraude. Por eso conviene no abrir ni responder a envíos sospechosos.
¿Es suficiente con un CAPTCHA?
No. Un CAPTCHA aislado frena parte de los bots, pero añade fricción para todos y no detecta a quienes envían spam manualmente. Funciona mejor como segunda capa, tras controles invisibles, y con puntuaciones revisadas en el servidor.
¿Puedo bloquear los correos de Gmail o Hotmail en mi formulario?
Técnicamente sí, y herramientas como HubSpot lo permiten. Tiene sentido en formularios B2B donde esperas correos corporativos, pero en una clínica o con particulares perderías pacientes reales. Úsalo solo si tu público objetivo lo justifica.
¿El antispam me exime de cumplir el RGPD en el formulario?
No. Debes informar de quién trata los datos, la finalidad, la base jurídica, los destinatarios, la conservación y los derechos, y no puedes dar por válido un consentimiento por casilla premarcada o silencio. Además, documenta qué datos recoge tu sistema de verificación.
Fuentes
- Preventing Form Spam, WordPress.com
- Proteger los formularios de bots y registros de spam, Brevo
- Evitar envíos de formularios de spam, HubSpot
- Using the reCAPTCHA Add-On, Gravity Forms
- Evitar el spam en bloques de formulario y newsletter, Squarespace
- Guía de Privacidad desde el Diseño, AEPD
- Decálogo para la adaptación al RGPD de las políticas de privacidad, AEPD
- Mensajes fraudulentos que suplantan a SEUR, INCIBE
- Campañas de phishing que suplantan a la AEAT, INCIBE
