Debugging sending issues
On this page
Use debug events, the email log and full debug logging to find out why an email failed, and what to collect before asking for help.
When an email fails and the cause is not obvious, CRM-NG SMTP keeps records that show what happened. This article explains where to look, how to switch on detailed logging, and what to gather before you contact support. It is for administrators and developers.
Where the evidence is
| Tool | Where | What it tells you |
|---|---|---|
| Failed-send banner | Top of the admin screens after a failure | The last error, a likely cause, and a link to the matching article |
| Debug events | CRM-NG SMTP → Tools → Debug Events | Every sending error, with time and full message; detailed traces when debugging is on |
| Email log | CRM-NG SMTP → Settings → Email Log | Every email WordPress tried to send, its status and error |
| Your provider's dashboard | The mail service's website | Whether the message reached the provider, and what happened after |
The failed-send banner
When an email fails, a banner appears: "CRM-NG SMTP: One or more emails recently failed to send." Click View details to expand it. You then see:
- A heading such as "Heads up! The last email your site attempted to send via … was unsuccessful".
- A short list of likely causes and fixes, when the plugin recognises the error.
- View Error Log to show the raw message from the mail service, and Copy error log to copy it.
- Open Troubleshoot Guide, which opens the article for that error.
If you see "No structured error code was recorded for this failure. The diagnostic from the mailer is below.", the provider returned a free-text error. Read it carefully; it usually names the problem.
If you use a backup transport and the main mailer failed but the backup succeeded, the banner says so: "Heads up! Your primary connection failed to send the last email. Your backup connection sent it successfully." Your mail went out, but fix the main mailer.
Debug events
Go to CRM-NG SMTP → Tools → Debug Events.
- Email Sending Errors is always on. Every failed send is recorded in the table, whatever else you configure.
- Debug Email Sending records much more: the steps of each send and the conversation with the mail server. Turn it on only while you investigate.
- Events Retention Period sets how long events are kept: 1 week, 1 month, 3 months, 6 months, 1 year or Forever.
- Search Events filters the table by text and by date range.
Click an event to read it in full. Look at the first line that mentions an error, a response code (such as 535 or 550) or a word like "refused", "timeout" or "unauthorized". Then find the matching article in Troubleshooting email delivery.
If the page shows "Debug Events are Not Installed Correctly", the plugin's table is missing. Click the link to create it. See Site Health checks.
More about this screen: Debug events.
Turn on full logging for one test
- Enable debugging
On CRM-NG SMTP → Tools → Debug Events, tick Debug Email Sending and click Save Settings.
- Reproduce the problem
Send a test from CRM-NG SMTP → Tools → Email Test, or repeat the action that failed (submit the form, place a test order, reset a password).
- Read the new events
Return to Debug Events. The newest entries show each step of the send.
- Turn it off
Untick Debug Email Sending and save. Detailed logs grow quickly and can contain addresses and message details.
The email log
The log on CRM-NG SMTP → Settings → Email Log shows whether an email reached CRM-NG SMTP at all.
- Listed with an error: CRM-NG SMTP tried and the mail service refused. Open the entry to read the Error.
- Listed as sent, but not received: the provider accepted it. Check the provider's activity log, the recipient's spam folder, and see Emails landing in spam.
- Not listed at all: the email never reached WordPress's mail function. The plugin that should send it is not sending, or uses its own method. See Testing for plugin and theme conflicts.
Check that logging is on first: Enable local email logging on the same tab. See Setting up the email log and Understanding delivery status.
Check the provider's side
Most services keep an activity or event log. Search it for the recipient's address and the time of your test.
- Not there: the request never reached the provider. Suspect credentials, network blocks or settings in CRM-NG SMTP.
- There, marked delivered: the recipient's server accepted it. Look at spam folders and filtering on the receiving side.
- There, marked bounced, blocked or suppressed: the provider gives the reason. A suppressed address must be removed from the provider's suppression list. See Email address in suppression list.
What to collect before asking for help
Gather these and you will save a round of questions:
- The exact error text, from Copy error log or the debug event.
- The mailer you use (for example "Brevo" or "Other SMTP") and, for Other SMTP, the host, port and encryption (not the password).
- Whether the test email fails too, or only some real emails.
- When it started, and what changed around then (new plugin, host move, password change, DNS change).
- Your PHP and WordPress versions, from Tools → Site Health → Info. The CRM-NG SMTP section there also lists the plugin version, current mailer and debug notices.
- What you have already tried.
Before you share a debug log, read it through. Remove anything that looks like a password, an API key, a token, or a long string of random letters and numbers. Never send credentials by email. See Sharing credentials with support safely.
Contact support at catalystgroup.gg/support.
