Email notifications not sending

This guide will help you diagnose email delivery problems and implement solutions to ensure reliable notification delivery.

Annotatr uses WordPress’s native wp_mail() function to send email notifications. If team members aren’t receiving emails about note assignments, comments, or mentions, the issue is usually related to your server’s email configuration rather than Annotatr itself.

This guide will help you diagnose email delivery problems and implement solutions to ensure reliable notification delivery.

How Annotatr sends emails

Understanding the email delivery chain helps with troubleshooting:

  1. Annotatr triggers a notification event (note created, comment added, etc.)
  2. Annotatr calls WordPress’s wp_mail() function
  3. WordPress passes the email to your server’s mail system (typically PHP’s mail() function)
  4. Your server attempts to send the email
  5. The recipient’s email provider receives (or rejects) the message

Common causes and solutions

1. Server email not configured

Problem: Most web hosts don’t have PHP mail configured properly by default, causing all emails to fail or land in spam.

Why it happens: Shared hosting servers often have mail() disabled for security, and emails sent via PHP mail() lack proper authentication headers.

Solution: Install an SMTP plugin to send emails through a proper mail server.

Recommended SMTP plugins:

Configuring SMTP (using WP Mail SMTP):

  1. Install and activate WP Mail SMTP
  2. Go to WP Mail SMTP → Settings
  3. Choose your mailer (Gmail, SendGrid, Amazon SES, Other SMTP)
  4. Enter your SMTP credentials:
    • SMTP Host (e.g., smtp.gmail.com)
    • SMTP Port (usually 587 for TLS or 465 for SSL)
    • Encryption (TLS recommended)
    • Username and password
  5. Set “From Email” to a valid email address on your domain
  6. Send a test email to verify configuration

2. Emails going to spam

Problem: Emails are sending but landing in spam folders.

Why it happens: Missing SPF/DKIM records, generic “From” addresses, or poor sender reputation.

Solution:

  1. Use a “From Email” that matches your domain (not gmail.com or yahoo.com)
  2. Configure SPF and DKIM records in your domain’s DNS settings
  3. Use a reputable SMTP service (SendGrid, Mailgun, Amazon SES)
  4. Ask recipients to whitelist your sender address

3. Notifications disabled in settings

Problem: Emails are disabled in Annotatr settings.

Solution:

  1. Go to Annotatr → Settings → Email Notifications
  2. Check that notification types are enabled:
    • Note creation
    • Note assignment
    • Status changes
    • New comments
    • Creator completion
  3. Save changes if any toggles were off.
3. Notifications disabled in settings

4. WordPress cron not running

Problem: Some notifications use WordPress cron (scheduled tasks) and may not send if cron is disabled or not triggering.

Solution:

  1. Check if DISABLE_WP_CRON is defined as true in wp-config.php
  2. If disabled, set up a system cron job or re-enable WordPress cron
  3. Test by visiting any page on your site (triggers cron)
  4. Install “WP Crontrol” plugin to monitor and manually trigger scheduled events

5. Recipient email addresses invalid

Problem: Users’ email addresses are incorrect or not set in their WordPress profiles.

Solution:

  1. Go to Users → All Users in WordPress
  2. Click on the user who isn’t receiving emails
  3. Verify the email address is correct
  4. Save the profile even if no changes (triggers validation)
  5. Ask the user to check their spam folder

Testing email functionality

Test WordPress email (without SMTP plugin):

  1. Go to Users → Add New
  2. Create a test user with your email address
  3. WordPress will send a password reset email
  4. If you receive it, wp_mail() is working
  5. If not, server mail configuration is the issue

Test with SMTP plugin:

  1. Most SMTP plugins have a “Send Test Email” feature
  2. Use this to verify SMTP configuration
  3. Check for error messages or delivery confirmations
  4. Review plugin logs for detailed diagnostics

Test Annotatr notifications specifically:

  1. Create a test note on your site
  2. Assign it to yourself or another user
  3. Add a comment with an @mention
  4. Check if emails arrive within 1-2 minutes
  5. If yes, emails are working; if no, continue troubleshooting

Checking email logs

Install an email logging plugin to diagnose issues:

Using Email Log plugin:

  1. Install “Email Log” from the WordPress plugin directory
  2. Go to Tools → Email Log
  3. Trigger an Annotatr notification
  4. Check if the email appears in the log
  5. If present, WordPress is sending; if not, Annotatr may not be triggering
  6. Review error messages for clues

Advanced troubleshooting

Check server mail logs:

If you have server access:

Email service limits:

Some SMTP services have sending limits:

Firewall or security plugins:

Some security configurations block outbound email:

Prevention checklist

To avoid email issues in the future: configure SMTP from the start, use a domain-matched “From” address, monitor email logs periodically, test notifications after server or plugin updates, and keep your SMTP credentials secure and up to date.

Never miss an update