Skip to content

Odoo Email Not Sending / SMTP Configuration: Complete Fix

DeployMonkey Team · March 22, 2026 10 min read

Odoo Email Issues — Diagnosis Flow

SymptomLikely CauseSection
No emails sent at allSMTP not configured or credentials wrong#1
Emails go to spamMissing SPF/DKIM/DMARC#2
Emails bounceWrong From address or blacklisted IP#3
Emails stuck in queueCron not running or rate limited#4
Attachment too largeSize limit exceeded#5

1. SMTP Not Configured

Setup: Settings → Technical → Outgoing Mail Servers

# Common SMTP settings:

# Gmail
Server: smtp.gmail.com
Port: 587
Encryption: TLS (STARTTLS)
Username: [email protected]
Password: app-specific password (NOT your Google password)

# Microsoft 365
Server: smtp.office365.com
Port: 587
Encryption: TLS (STARTTLS)
Username: [email protected]
Password: your password (or app password with 2FA)

# Amazon SES
Server: email-smtp.us-east-1.amazonaws.com
Port: 587
Encryption: TLS (STARTTLS)
Username: SMTP credentials from AWS console
Password: SMTP password from AWS console

# SendGrid
Server: smtp.sendgrid.net
Port: 587
Encryption: TLS (STARTTLS)
Username: apikey
Password: your SendGrid API key

# Mailgun
Server: smtp.mailgun.org
Port: 587
Encryption: TLS (STARTTLS)
Username: [email protected]
Password: your Mailgun SMTP password

Click "Test Connection" after saving. If it fails, check credentials and port.

2. Emails Going to Spam

Missing email authentication records causes spam filtering.

SPF Record

# Add to your DNS:
TXT  @  "v=spf1 include:_spf.google.com ~all"  # Gmail
TXT  @  "v=spf1 include:spf.protection.outlook.com ~all"  # Microsoft
TXT  @  "v=spf1 include:amazonses.com ~all"  # Amazon SES
TXT  @  "v=spf1 include:sendgrid.net ~all"  # SendGrid

DKIM

Generate DKIM keys from your email provider and add the TXT record to DNS.

DMARC

# Add to DNS:
TXT  _dmarc  "v=DMARC1; p=quarantine; rua=mailto:[email protected]"

3. Emails Bouncing

  • Wrong From address — The From email must be authorized by your SMTP provider. If using Gmail, the From must be your Gmail address.
  • Blacklisted IP — Check if your server IP is on a blacklist: MXToolbox Blacklist Check
  • Invalid recipient — Check the bounce message for details

4. Emails Stuck in Queue

# Check email queue:
# Settings → Technical → Emails → Emails
# Filter by "Outgoing" state

# Check if mail cron is running:
# Settings → Technical → Automation → Scheduled Actions
# Look for "Mail: Email Queue Manager"
# Verify it's active and check last execution time

# Force send queued emails:
# In developer mode → Technical → Emails → select stuck emails → Send Now

5. Attachment Size Limit

# odoo.conf — increase if needed
# Default is typically 25MB

# nginx — increase client_max_body_size
client_max_body_size 50m;

Debugging Tips

# Enable mail debug logging
# odoo.conf:
log_handler = odoo.addons.mail:DEBUG

# Check mail log:
grep -i "mail\|smtp\|email" /var/log/odoo/odoo.log | tail -50

DeployMonkey Email

DeployMonkey handles SMTP configuration for managed instances. The AI agent diagnoses email delivery issues — checking SPF/DKIM, SMTP connectivity, and queue status through the control panel.