# Troubleshooting email delivery

Source: https://catalystgroup.gg/docs/email-delivery/troubleshooting/
Updated: 2026-10-19 · By Duane Garner

A step-by-step checklist for any email problem in CRM-NG SMTP, from a failed test to messages that never arrive. Start here when unsure.

This is the general checklist for email problems with CRM-NG SMTP. The plugin opens this article whenever it sees an error it does not have a specific article for. Work through the sections in order: most problems are found in the first four. It is for site owners, administrators and developers.

 

## First, which problem do you have?

 

| What you see | Start at |
| --- | --- |
| A red banner: "One or more emails recently failed to send" | Step 2 |
| The test email fails | Step 1, then Step 2 |
| The test works, but real site emails do not arrive | Step 6 |
| Emails arrive, but in spam | Emails landing in spam |
| Nothing is sent at all, no errors | Step 5 |
| Emails arrive late | Step 8 |

 

## Step 1: Send a test email

 
1. Open the test page
  Go to **CRM-NG SMTP → Tools → Email Test**.
2. Send to an outside address
  Use a mailbox on a different provider, such as a personal Gmail address, and click **Send Email**.
3. Note the result
  Success, a domain warning, or a failure banner. Each is explained in [Sending a test email](https://catalystgroup.gg/docs/email-delivery/send-a-test-email/).

 

If you see *"You cannot send an email. Mailer is not properly configured."*, a required field is empty. Go to **CRM-NG SMTP → Settings → General** and complete it.

 

## Step 2: Read the exact error

 

The error text tells you almost everything.

 
- On the failed-send banner, click **View Error Log**. Use **Copy error log** to keep a copy.
- Click **Open Troubleshoot Guide** for the article on that error, if there is one.
- Or open **CRM-NG SMTP → Tools → Debug Events**. Every sending error is recorded there with its time and full message. See [Debug events](https://catalystgroup.gg/docs/email-delivery/debug-events/).

 

Common errors and their articles:

 

| Error mentions | Read |
| --- | --- |
| Authentication failed, 535, username or password | 535 Authentication failed |
| Could not connect to SMTP host | Could not connect to SMTP host |
| Connection timed out, 110 | Connection timed out |
| Connection refused | Connection refused |
| SSL certificate, certificate verify failed | SSL certificate verify failed |
| cURL error | cURL error |
| Invalid API key, unauthorized, 401, forbidden | Invalid API key, 401 Unauthorized or Forbidden |
| Sender, From address not verified, 553 | 553 Sender address rejected |
| Recipient rejected, 550 | 550 address does not exist or was rejected |
| Limit, quota, too many | Email sending limit reached |
| Hostname could not be resolved | Hostname could not be resolved |

 

## Step 3: Check the mailer settings

 

Open **CRM-NG SMTP → Settings → General** and check, slowly:

 
- **Keys and passwords.** Paste them again. A stray space is the most common cause of authentication errors. If you changed a password or key at the provider, update it here.
- **The right key type.** Some services issue several kinds of key. Use the one the mailer article tells you to (for Microsoft 365, the secret **Value**, not the Secret ID).
- **Domain and region.** Mailgun, SparkPost, Amazon SES and Zoho Mail need the region your account lives in.
- **Sign-in still valid.** For Google / Gmail, check the account still shows as connected. If not, use **Remove OAuth Connection** and authorise again.
- **From Email allowed.** The address must be verified with your service, or be the mailbox you sign in with. See [Sender name, address and the Force settings](https://catalystgroup.gg/docs/email-delivery/sender-name-and-address/).

 

Save, then test again.

 

## Step 4: Check your account at the provider

 

In the mail service's dashboard, look for an account or domain that still needs verifying, a trial or sandbox mode that only sends to your own address (Amazon SES starts this way), a suspension, or a sending limit already reached. Check the provider's activity log too: if your message appears there, CRM-NG SMTP did its part.

 

## Step 5: Check nothing is blocking sending

 
- **Standby.** If the plugin shows a notice saying another mail plugin is sending, CRM-NG SMTP is not sending yet. See [Switching from another mail plugin (hand-over)](https://catalystgroup.gg/docs/email-delivery/switching-from-another-mail-plugin/).
- **Do Not Send.** On **CRM-NG SMTP → Settings → Misc**, make sure **Stop sending all emails** under **Do Not Send** is not ticked. Test emails are allowed even when it is, which can hide the problem. Turn on **Log Blocked Emails** to see blocked messages in the log.
- **Email Controls.** Some WordPress core notifications can be switched off on the **Email Controls** tab. See [Email controls](https://catalystgroup.gg/docs/email-delivery/email-controls/).
- **Constants.** If a setting is locked, it is set in `wp-config.php`. A wrong value there overrides the screen. See [Securing settings with wp-config constants](https://catalystgroup.gg/docs/email-delivery/secure-settings-constants/).

 

## Step 6: Look for conflicts

 

If the test works but emails from a particular plugin or form do not arrive:

 
- Check **CRM-NG SMTP → Settings → Email Log**. If the email is not listed, it never reached WordPress's mail function. The plugin that should send it may use its own sending method, or may not be sending at all.
- Look for a conflict notice naming another mail plugin, and deactivate that plugin.
- Some plugins send email their own way and bypass WordPress mail. Check their settings for an option to use the WordPress default.

 

See [Testing for plugin and theme conflicts](https://catalystgroup.gg/docs/email-delivery/plugin-and-theme-conflicts/).

 

## Step 7: Check your server

 

Ask your web host, or check yourself:

 
- **Outgoing ports.** Many hosts block SMTP ports 25, 465 and 587. API mailers use HTTPS (port 443) and avoid this. If Other SMTP times out, switching to an API mailer is often the quickest fix.
- **Outbound HTTPS.** API mailers need your server to reach the provider over HTTPS. A firewall or security plugin can block it.
- **Certificates.** An outdated CA certificate bundle causes SSL and cURL errors. Only the host can update it.
- **PHP version.** CRM-NG SMTP needs PHP 7.4 or newer. See [Supported PHP and WordPress versions](https://catalystgroup.gg/docs/email-delivery/supported-php-versions/).
- **Database tables.** If **Tools → Site Health** reports *"CRM-NG SMTP DB tables check has failed"*, click the link to create the missing tables. See [Site Health checks](https://catalystgroup.gg/docs/email-delivery/site-health-checks/).

 

## Step 8: Check background tasks

 

If you turned on **Optimize Email Sending** or **Email Rate Limiting** on the **Misc** tab, emails wait in a queue and are sent by background tasks. If those tasks do not run, emails are delayed or stuck. Check **CRM-NG SMTP → Tools → Scheduled Actions** for past-due tasks. See [Action Scheduler issues](https://catalystgroup.gg/docs/email-delivery/action-scheduler-issues/).

 

## Step 9: Turn on full debugging

 

If you still cannot see the cause, go to **CRM-NG SMTP → Tools → Debug Events**, tick **Debug Email Sending**, save, and send another test. The full sending conversation is recorded. Turn it off again when you are done. See [Debugging sending issues](https://catalystgroup.gg/docs/email-delivery/debugging-sending-issues/).

 

## Step 10: Ask for help

 

Collect the error text, your mailer name, your PHP and WordPress versions, and what you have tried, then contact support at [catalystgroup.gg/support](https://catalystgroup.gg/support/). Never send passwords or API keys by email. See [Sharing credentials with support safely](https://catalystgroup.gg/docs/email-delivery/sharing-credentials-safely/).

 

## Related

 
- [Debugging sending issues](https://catalystgroup.gg/docs/email-delivery/debugging-sending-issues/)
- [Emails landing in spam](https://catalystgroup.gg/docs/email-delivery/emails-landing-in-spam/)
- [Sending a test email](https://catalystgroup.gg/docs/email-delivery/send-a-test-email/)
- [Testing for plugin and theme conflicts](https://catalystgroup.gg/docs/email-delivery/plugin-and-theme-conflicts/)
