Implementing proper email authentication is essential for ensuring deliverability and protecting your domain from spoofing. This guide provides practical steps for setting up SPF, DKIM, and DMARC.
With multiple domains (haply.co, haply.ca, haplyrobotics.com, haply-robotics.com) and different email providers (Google Workspace and Mailjet), it's important to implement a strategic approach to email authentication.
This separation helps protect your primary domain's reputation from potential issues with mass sending.
Each domain should have its own properly configured SPF, DKIM, and DMARC records, even if they point to the same services.
Use this tool to generate an SPF record for your domains. For Haply Robotics, you'll need to include both Google Workspace and Mailjet.
Determines how receiving servers should treat emails that don't match your SPF record.
Add this TXT record to your domain:
Components explained:
include:_spf.google.com: Authorizes Google Workspace serversinclude:spf.mailjet.com: Authorizes Mailjet servers-all: Strict policy that rejects unauthorized sendersFor your multi-domain setup:
v=spf1 include:spf.mailjet.com -alldig TXT domain.com or online toolsUse this tool to generate DKIM records for your domains. You'll need separate DKIM keys for Google Workspace and Mailjet.
A name that identifies this specific DKIM key (e.g., "mail", "key1", "2023q1").
The public key generated by your email service or DKIM tool.
Steps to enable DKIM for Google Workspace:
Google's DKIM record will look like: v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA...
Steps to enable DKIM for Mailjet:
Mailjet typically uses a selector like "mailjet" so the record name would be mailjet._domainkey.yourdomain.com
Use this tool to generate DMARC records for your domains. Start with monitoring mode and gradually increase enforcement.
Action to take when emails fail DMARC authentication.
Action to take for emails from subdomains.
Percentage of messages subject to filtering.
Email address to receive aggregate reports.
Email address to receive forensic failure reports.
Add this TXT record to _dmarc.yourdomain.com:
This configuration:
For your multiple domains:
Since you're using Odoo and CRM systems that send through Mailjet, ensure proper configuration:
SPF has a limit of 10 DNS lookups. If you're including multiple services, you might hit this limit. Consider flattening your SPF record by replacing nested includes with their IP addresses.
If emails from Google or Mailjet fail DKIM verification, check that the correct selector is being used and that the DNS record is properly formatted without line breaks or extra spaces.
Ensure the From domain matches the domain used for DKIM signing or SPF authentication. This is especially important when sending through third-party services.
For services that can't authenticate against your root domain, consider using subdomain delegation or a dedicated sending domain (like using haplyrobotics.com for mass sending).