Configurar Brevo (Sendinblue) con autenticación de dominio para entregabilidad
Cómo configurar Brevo (Sendinblue) con autenticación de dominio, DKIM y SPF: dominio dedicado, DMARC alineado y validación práctica con dig.
Brevo (anteriormente Sendinblue) ofrece tanto envío transaccional vía SMTP/API como campañas de marketing en el mismo panel. Como cualquier ESP, hay que autenticar el dominio para que los envíos firmen DKIM con tu dominio y alineen DMARC. Esta guía cubre el proceso de alta del dominio, los registros DNS que pide Brevo, la separación entre transaccional y campañas, y los puntos donde se rompe el setup en cuentas reales.
Qué configura Brevo y qué dejas tú
Brevo gestiona la infraestructura SMTP, las IPs (compartidas o dedicadas según plan), las claves DKIM y los listados de supresión. Lo que tú aportas en DNS:
- 2 registros DKIM (CNAME).
- Un TXT específico para el “Sender Authentication” de Brevo.
- Tu propio SPF, donde puede que necesites incluir Brevo si sales también con remitente bajo el dominio raíz.
- Tu DMARC, que debe alinear con la firma DKIM de Brevo.
Sin eso, los envíos salen firmando con dominios de Brevo: la entrega funciona pero rompe alineamiento DMARC con tu dominio.
Pasos en el panel de Brevo
1. Añade el dominio en “Senders & IPs”
Dentro del panel, sección “Senders, Domains & dedicated IPs” (la nomenclatura cambia con el tiempo), pulsa “Add a domain” e introduce tudominio.com (o el subdominio dedicado).
2. Publica los registros que te muestra
Brevo te pide tres tipos de registros:
mail._domainkey.tudominio.com CNAME mail._domainkey.<host-brevo>
brevo-code.tudominio.com TXT "brevo-code:XXXXXXXX"
Y en el SPF, añadir o incluir include:spf.brevo.com si vas a enviar también con From: directo del dominio raíz.
Los nombres exactos cambian (brevo._domainkey, mail._domainkey, etc.), úsalos como te los muestre el panel.
Publica los registros en tu DNS:
- CNAME: copia tal cual.
- TXT del código: tal cual, comillas según pida tu panel.
- SPF: si ya tienes uno, añade
include:spf.brevo.comantes del~allo-all.
Ejemplo de SPF combinando Brevo con otros remitentes:
v=spf1 include:_spf.google.com include:spf.brevo.com ~all
Ojo con el límite de 10 lookups DNS de SPF: cada include: cuenta y los include: anidados también. Si te acercas, plantéate aplanar (flattening) o usar subdominios.
3. Verifica desde Brevo
Tras publicar, en el panel pulsa “Authenticate”. Si el DNS está propagado, Brevo confirma cada registro con un check. Si falla, espera unos minutos y reintenta; revisa los TTL.
4. Confirma con dig
dig +short CNAME mail._domainkey.tudominio.com
dig +short TXT brevo-code.tudominio.com
dig +short TXT tudominio.com # para verificar el SPF principal
Los CNAME deben resolver al host de Brevo. El TXT del código debe contener exactamente el valor que te dieron.
DKIM, SPF y DMARC con Brevo
Una vez autenticado, los envíos llevan:
DKIM-Signature: v=1; ... d=tudominio.com; s=mail(o el selector que use Brevo).Return-Path: <bounces+xxx@<dominio-brevo>>o, en algunos planes, un Return-Path personalizado bajo tu dominio.From: [email protected](lo que tú configures).
Para alineamiento DMARC, lo que importa es DKIM con header.d=tudominio.com. SPF solo aligna si Brevo configura un Return-Path bajo tu dominio (no es el default; planes superiores lo permiten). Como DMARC pasa con DKIM o SPF alineados, basta con DKIM bien firmado.
Si tu DMARC está en p=reject y los envíos no firman con tu dominio, los mensajes se rechazan. Por eso, antes de subir DMARC a reject, valida con un envío real que dkim=pass header.d=tudominio.com y dmarc=pass.
Email transaccional y email de campañas
Brevo trata transaccional y campañas como flujos distintos:
- Transactional Email API/SMTP: para confirmaciones, OTP, recibos. Usa puerto 587 con autenticación SMTP, o la API REST.
- Marketing Campaigns: editor visual, listas, segmentación, automatizaciones.
Ambos comparten la autenticación de dominio. Pero técnicamente Brevo tiene IPs separadas para campañas vs transaccional (en planes superiores), de modo que la reputación no se contamina.
Para flujos serios, muchos clientes usan un subdominio para transaccional (tx.tudominio.com) y otro para marketing (news.tudominio.com), con autenticación independiente en cada uno. Aísla reputación y simplifica diagnóstico.
List-Unsubscribe y bulk sender compliance
Brevo añade automáticamente la cabecera List-Unsubscribe y List-Unsubscribe-Post: List-Unsubscribe=One-Click en campañas. Verifica en una cabecera real que el endpoint de baja:
- Acepta POST sin login ni captcha.
- Devuelve 2xx.
- No tiene página intermedia de “¿estás seguro?”.
Para detalles, ver la guía de List-Unsubscribe one-click.
Webhooks y supresión
Configura webhooks para:
- Hard bounce: suprime al destinatario en tu CRM.
- Spam complaint: igual o más urgente.
- Soft bounce repetido: trata como pseudo-hard tras N intentos seguidos.
Brevo mantiene supresión interna, pero sincronizar con tu sistema te da visibilidad y evita que un proceso externo reintroduzca contactos suprimidos.
IP compartida vs IP dedicada
En planes Pro de Brevo puedes optar a IP dedicada. Reglas pragmáticas:
- Volumen <100 mil/mes: IP compartida está bien. La reputación la lleva Brevo.
- Volumen entre 100 mil y 1 millón/mes: empieza a tener sentido la dedicada, con warming progresivo.
- Volumen > 1 millón/mes: la dedicada da control y aislamiento, pero requiere disciplina de envío.
Una IP dedicada sin warming y con poco volumen perjudica más que una compartida bien gestionada.
Errores frecuentes
SPF principal no incluye Brevo y envías con From: del dominio raíz
Si Brevo configura el sobre con su Return-Path pero tu From: es [email protected] y tu SPF principal no incluye spf.brevo.com, en algunos receptores estrictos SPF no aligna. DKIM sigue salvando DMARC, pero suma fricción innecesaria.
TXT de “brevo-code” mal copiado
Es solo una cadena de verificación, pero si copias el espacio extra o cambias mayúsculas, Brevo no lo valida. Pega tal cual.
Campañas transaccionales sin separación
Si usas el endpoint transaccional para enviar ofertas, tarde o temprano Brevo aplica recorte. Mantén transactional para mensajes basados en evento real (compra, alta, evento del usuario), no para promoción.
No quitar al usuario tras una baja
Brevo gestiona la baja en sus listas, pero si tu integración con CRM reintroduce al contacto en otra lista, vuelves a enviar y sumas quejas. Sincroniza supresión bidireccional.
TTL alto en los CNAME de DKIM
Si Brevo cambia eventualmente el host destino del CNAME, un TTL alto hace que tarde un día en propagar. 3600 segundos es razonable; bájalo a 600 si estás en migración.
Comprobaciones recomendadas
Verifica con dig
dig +short CNAME mail._domainkey.tudominio.com
dig +short TXT tudominio.com
dig +short TXT _dmarc.tudominio.com
Inspecciona cabeceras de un envío
DKIM-Signature: v=1; a=rsa-sha256; d=tudominio.com; s=mail; ...
Authentication-Results:
spf=pass smtp.mailfrom=...
dkim=pass header.d=tudominio.com
dmarc=pass (p=quarantine) header.from=tudominio.com
Reputación del dominio tras unos días
Tras una semana de envíos, mira Postmaster Tools de Google si tu volumen alcanza el umbral. Si tu reputación sube, la pila está bien construida.
Recursos relacionados
Si quieres profundizar, prueba estas herramientas gratuitas: Domain Health, mail tester, validador SPF y validador DMARC.
¿Necesitas que alguien lleve tu canal de email entero? Abalola Mail es la agencia de email marketing especializada en ecommerce de Abalola para ecommerce: estrategia, producción y operación del stack sobre Klaviyo, Mailchimp o Brevo.