When emails stop sending from your cPanel server, it can cripple your business communication. Whether you're getting bounce-back errors, emails stuck in the queue, or complete silence — this guide covers every common cause and fix.
cPanel uses Exim as its mail transfer agent (MTA). Most sending failures trace back to Exim configuration, DNS issues, or server-level restrictions.
Quick Fix Checklist
- ✅ Check if Exim is running:
systemctl status exim - ✅ Review the mail queue:
exim -bpc(count) andexim -bp(list) - ✅ Check Exim logs:
/var/log/exim_mainlog - ✅ Verify MX records point to your server
- ✅ Confirm port 25/465/587 is not blocked by firewall
- ✅ Ensure SPF record is set correctly
- ✅ Check disk space:
df -h
Common Causes
1. Exim Service Not Running
If Exim has crashed or failed to start, no emails can be sent or received.
# Check status
systemctl status exim
# Restart Exim
systemctl restart exim
# Check for errors
journalctl -u exim -n 50
2. Mail Queue Frozen or Full
A large or frozen mail queue can prevent new emails from being processed:
# Count messages in queue
exim -bpc
# View queue
exim -bp | head -50
# Force delivery of all queued messages
exim -qff
# Delete all frozen messages
exiqgrep -z -i | xargs exim -Mrm
3. Port 25 Blocked
Many VPS providers block outbound port 25 by default to prevent spam. Check:
# Test port 25 connectivity
telnet gmail-smtp-in.l.google.com 25
# If blocked, use port 587 with SMTP relay
# Or contact your provider to unblock port 25
4. DNS / MX Record Issues
Emails can't send if your server can't resolve DNS properly:
# Check MX records
dig MX yourdomain.com +short
# Check if server can resolve DNS
dig google.com +short
# Check /etc/resolv.conf
cat /etc/resolv.conf
5. Disk Space Full
Exim needs disk space to process the mail queue:
# Check disk space
df -h
# Find large files
du -sh /var/log/* | sort -rh | head -10
# Rotate logs if needed
truncate -s 0 /var/log/exim_mainlog
Step-by-Step Fix
Check the Exim Log
The Exim log is your best friend for diagnosing email issues:
# View recent log entries
tail -100 /var/log/exim_mainlog
# Search for specific domain
grep "yourdomain.com" /var/log/exim_mainlog | tail -20
# Search for errors
grep -i "error\|fail\|reject" /var/log/exim_mainlog | tail -20
Fix Authentication Issues
In WHM, go to Service Configuration → Exim Configuration Manager and verify:
- SMTP authentication is enabled
- Allow SMTP relay for authenticated users
- TLS/SSL is configured for ports 465 and 587
Test Sending Manually
# Send test email via command line
echo "Test email body" | mail -s "Test Subject" [email protected]
# Check if it was queued
exim -bpc
Common Mistakes
- Wrong SMTP port: Use 587 (STARTTLS) or 465 (SSL), not 25 for authenticated sending
- Firewall blocking: CSF/iptables may block outgoing SMTP ports
- SPF not including server IP: Causes receiving servers to reject your emails
- Exceeding send limits: cPanel accounts have hourly send limits (default: 500/hour)
- Corrupted Exim config: Rebuild with
/scripts/buildeximconf && systemctl restart exim
🚀 Need Help With Email Deliverability?
QIW Host can configure SPF, DKIM, DMARC, PTR and SMTP correctly on your server — so your emails land in the inbox, not the spam folder.
Get Reliable Hosting →Frequently Asked Questions
How do I check the Exim mail queue in cPanel?
In WHM, go to Email → Mail Queue Manager. Via command line: exim -bp lists all queued messages and exim -bpc shows the total count.
Why are my cPanel emails bouncing back?
Common reasons include: incorrect MX records, recipient's server rejecting due to missing SPF/DKIM, disk quota exceeded, or your IP being blacklisted. Check /var/log/exim_mainlog for the specific bounce reason.
How do I increase the email send limit in cPanel?
In WHM, go to Server Configuration → Tweak Settings → Mail and adjust "Max hourly emails per domain" and "Max hourly emails per account."
Can I use an external SMTP relay with cPanel?
Yes. In WHM, go to Exim Configuration Manager → Basic Editor and configure a smarthost. This routes all outgoing mail through a service like SendGrid or Amazon SES.