Notificaciones duplicadas no significan necesariamente dos envíos de formulario. Un único submit puede disparar dos acciones de correo, un retry puede repetir un job o dos plugins escuchar el mismo evento. Asigna IDs estables antes de desactivar hooks al azar.
Cuenta submissions y emails por separado
Comprueba entradas/request IDs. Dos mensajes de una entrada es problema de acción; dos entradas es deduplicación navegador/servidor.
Revisa acciones configuradas
Builders pueden tener varios emails o notificación admin/usuario al mismo destinatario.
Comprueba AJAX y reintentos
Doble clic, timeout frontend o retry JS pueden repetir el submit sin una clave de idempotencia.
Inspecciona colas y webhooks
Jobs en segundo plano pueden reintentarse aunque el primer envío llegara. Registra job/event IDs y message IDs.
Busca hooks duplicados
Snippets, CRM o plugins SMTP pueden enganchar una segunda notificación al mismo evento.
Deduplica en la capa correcta
Usa identidad del submission/evento con ventana acotada. No bloquees cualquier mismo destinatario+asunto porque dos leads legítimos pueden coincidir.
Usa la traza end-to-end y el diagnóstico sin datos personales.
Construye un ledger del evento duplicado
Para una notificación duplicada registra submission ID, número de requests, entradas guardadas, IDs de acciones, jobs/cola y message IDs del proveedor. Dos IDs de proveedor desde una acción sugieren retry de transporte; dos acciones, configuración; dos submissions, deduplicación navegador/servidor. El ledger lleva la reparación a la capa correcta y permite verificar después que el duplicado ha desaparecido.