Email archiving in SuiteCRM sometimes misses certain inbound/outbound emails. What could be possible reasons and where should I check the logs? Is there any quick fix?
Make sure your cron job for EmailArchiver is also running frequently (every 5–10 minutes) to avoid missing emails in the future.
Hello Sophie,
what’s your current version of SuiteCRM?
I had a similar issue once with icons / special character in the subject and encoding on the database side.
Since it’s only sometimes not working, I assume your cron job, your inbound accounts etc. are all setup and functioning most of the time.
Look into the missed emails specifically, and see whether you see any patterns?
(multiple addresses in the to field, very long / large emails, and similar).
Mostly check you suitecrm.log file.
Depending on the version it’s in either of the folders:
/
/public/legacy
/logs/legacy
and double check the other logs afterwards:
and for newer 8.x installations in /log/prod
Hello @Sophie_g,
A common reason why some emails don’t get archived in SuiteCRM is “IMAP/SMTP connection issues”.
If the mail server connection is unstable or if the mailbox credentials have expired, SuiteCRM won’t be able to fetch/archive those messages.
Please check your settings here:
“Admin → Inbound Email”(for IMAP accounts)
“Admin → Email Settings”(for Outbound SMTP)
Make sure the credentials are correct and run the connection test to confirm everything is working.
You can check logs in a few places to troubleshoot missed email archiving in SuiteCRM:
“SuiteCRM log” → Found in the root of your SuiteCRM install (e.g. /suitecrm.log).
"You can increase the log level to debug in config.php for more detailed info.
"Web server/PHP logs"→ Depending on your setup, usually in:
/var/log/apache2/error.log (Apache)
/var/log/nginx/error.log (Nginx)
php_error.log (location depends on your PHP config).
"Mail server logs"→ Useful if the issue is connection/authentication related (check your mail server for IMAP/SMTP connection attempts).
These logs together will give you a full picture of why emails might be skipped.
Hi Sophie,
Missed email archiving usually comes down to one of these issues:
- Cron job not running (SuiteCRM depends on it).
- Scheduler jobs like Check Inbound Mailboxes failing.
- IMAP/SMTP misconfiguration or “Only fetch unread” enabled.
- Large emails/attachments timing out.
- Mailbox quota/limits on the server.
Where to check:
suitecrm.log(root folder) for IMAP/SMTP/Email errors.- PHP error log.
- Admin > Schedulers → check job status.
Quick fixes:
- Verify cron is active:
* * * * * cd /var/www/html/suitecrm; php -f cron.php > /dev/null 2>&1
- Test inbound email connection in Admin.
- Enable “Archive Sent Emails” in profile/system settings.
- Run Quick Repair and Rebuild.
- Increase PHP limits if large emails fail.
In most cases, it’s a cron or scheduler issue, so start there.
For more details, you can go through this blogs:
Hi @Sophie_g ,
This issue usually occurs when SuiteCRM intermittently fails to fetch or archive emails due to background job, mailbox, or configuration issues. Here’s a structured way to troubleshoot it.
Check Scheduler and Cron Setup
SuiteCRM’s email archiving depends entirely on the background scheduler.
Verify that the cron job is running every few minutes:
cd /var/www/html/suitecrm && php -f cron.php > /dev/null 2>&1
Go to Admin → Schedulers and confirm that:
“Check Inbound Mailboxes” and related jobs are Active and show recent successful runs.
No jobs are marked as failed or overdue.
If the scheduler isn’t running, SuiteCRM will simply skip email fetching.
Review Inbound Email Configuration
Go to Admin → Inbound Email and run the Test Connection.
Confirm:
IMAP hostname, port, and SSL options are correct.
“Only Fetch Unread” is disabled (messages marked read before SuiteCRM fetches them will be skipped).
The correct folder (usually INBOX) is selected.
If the mailbox was recently migrated or credentials updated, delete and recreate the inbound account to reset IMAP pointers.
Validate Outbound / Sent Archiving Settings
In Admin → Email Settings and each user’s Profile → Email Settings, ensure “Archive Sent Emails” is enabled if you need sent emails archived.
Confirm SMTP credentials are valid.
Examine Logs (Enable Debug Temporarily)
Set log_level to “debug” in config.php and reproduce the issue.
SuiteCRM 7.x Logs:
suitecrm.log (root) or /public/legacy or /logs/legacy
SuiteCRM 8.x Logs:
/var/log/prod.log or /log/prod
Web/PHP Logs:
Apache → /var/log/apache2/error.log
Nginx → /var/log/nginx/error.log
PHP → php_error.log
Look for keywords like IMAP, archiver, inbound, or timeout.
If you see “job succeeded but no fetch,” the scheduler may be skipping due to message flags or size limits.
Common Root Causes
Cron/scheduler not executing
Mailbox authentication or SSL certificate expired
PHP memory/timeout limits too low for large messages
Special characters or emojis in subjects (encoding issue)
Mailbox quota reached or IMAP server throttling requests
UIDVALIDITY change after mailbox migration (requires re-adding mailbox)
Quick Fixes
Confirm cron and scheduler are working
Re-test inbound connection and re-save credentials
Temporarily disable “Only Fetch Unread”
Increase PHP limits (max_execution_time, upload_max_filesize, etc.)
Run Quick Repair and Rebuild after config changes
Recreate inbound mailbox record if IMAP index mismatch is suspected
Related Community Threads
If you can share your SuiteCRM version (7.x or 8.x) and a short excerpt from suitecrm.log around the missed email timestamp, we can help pinpoint the exact cause.
In most cases, ensuring the cron and “Check Inbound Mailboxes” scheduler are running reliably resolves this behavior.