When cPanel email not receiving issues hit your hosting server, the clock is ticking. Clients are missing orders, support tickets, and business emails — and you need a diagnosis fast. The frustrating part is that "email not arriving" can mean five different things: a full mailbox, a misconfigured mail routing in WHM, broken MX records, a blocked port, or a spam filter gone rogue. Each has a different fix.
This guide covers every common reason cPanel email stops receiving messages, with the exact WHM and cPanel menu paths, commands, and fixes for each scenario.
💡 None of these worked? Skip the guesswork.
Get Expert Help →Step 1: Confirm the Problem — Check Webmail Directly First
Before touching any server settings, verify the issue isn't with the email client:
Go to https://yourdomain.com/webmail or https://mail.yourdomain.com and check whether emails arrive there. If they do, the issue is in the desktop or mobile email client setup (IMAP/POP3 settings), not the server.
Spam filters on the server side or the email client may silently redirect incoming mail. Check all folders — inbox, spam, junk, and trash — before assuming non-delivery.
Ask the sender to try from a Gmail or Outlook account. If only emails from a specific domain aren't arriving, the issue is likely SPF/DKIM/DMARC authentication or a blacklisted sending IP.
In cPanel: go to Email → Email Accounts. The "Storage Used" column shows usage for each account.
Click Manage on the affected account, then Edit Settings. Set a higher quota or choose Unlimited. Changes take effect immediately.
Have the user log into Webmail and delete emails in Trash, Spam, and Sent folders. Critical: emptying Trash is not automatic in most clients — you must click "Empty Trash" for space to be reclaimed.
If the quota percentage looks wrong after you updated it, the maildirsize file may be corrupt. In File Manager, navigate to the account's mail folder and delete the maildirsize file — it will be automatically recreated with accurate counts.
In WHM: go to Home → DNS Functions → Edit DNS Zone or Home → Email → MX Entry. The Email Routing option per domain has four choices:
- Automatically Detect Configuration — WHM uses MX records to decide (usually the right choice)
- Local Mail Exchanger — Deliver mail locally to this server. Use when MX points here.
- Backup Mail Exchanger — Accept mail as a secondary/backup server
- Remote Mail Exchanger — Forward all mail to the lowest-priority MX (use when migrating to Google Workspace or Office 365)
If a domain's MX records point to this server but Email Routing is set to Remote Mail Exchanger, incoming email is routed away from this server and never delivered. Set it to Local Mail Exchanger.
Conversely, if you've migrated email to Google Workspace or Microsoft 365 but routing is still Local, messages sent to that domain are delivered locally rather than forwarding to Google/Microsoft. Set to Remote in this case.
dig MX yourdomain.com
# or
nslookup -type=MX yourdomain.com
The output should show your mail server (e.g. mail.yourdomain.com or your hosting server's hostname). If it shows Google or Microsoft servers but you host email here, that's your problem.
Go to WHM → Edit DNS Zone for the domain. Locate the MX entry and update it to point to your server's hostname (check WHM → Server Configuration → Basic WebHost Manager Setup for the hostname).
DNS changes take 24-48 hours to propagate globally. After updating, use dig @8.8.8.8 MX yourdomain.com to check Google's DNS specifically — if it shows the correct record, propagation is complete for most users.
# From an external server or your local machine:
telnet yourmailserver.com 25
# Expected: "220 yourserver.com ESMTP Exim..."
# If it hangs or connection refused — port 25 is blocked
In WHM: go to Plugins → ConfigServer Security & Firewall (if CSF is installed). Under Firewall Configuration, verify port 25 is in the TCP_IN list. If using iptables directly:
iptables -L INPUT -n | grep 25
If port 25 is blocked at the network level (not the server's firewall), you'll need to open a support ticket with your VPS provider requesting port 25 unblocking for mail server use.
Go to cPanel → Email → Email Deliverability. This shows the current status of SPF, DKIM, and DMARC records for your domain. Fix any items marked with a warning.
A correct SPF record for a standard cPanel server looks like:
v=spf1 +a +mx +ip4:YOUR.SERVER.IP ~all
Using -all (hard fail) at the end means your server will reject emails from any IP not listed. If you're using a third-party service to send on your behalf (like Mailchimp or Zoho), their IP ranges must be included.
BoxTrapper is cPanel's challenge-response spam filter. It sends a verification request to every new sender — if they don't respond, their email never arrives. Go to cPanel → Email → BoxTrapper, click Manage, and either Disable it or whitelist known senders.
Advanced: Check Exim Mail Logs for the Exact Error
If none of the above fixes the issue, the Exim mail logs show exactly what happened to each inbound message:
# In WHM, go to: Home → Email → Mail Delivery Reports
# Or via SSH:
grep "[email protected]" /var/log/exim_mainlog | tail -20
Look for entries with rejected, bounced, or failed — the log line will include the reason code (e.g. quota exceeded, host lookup failed, relay not permitted) that tells you exactly which fix applies.
Prevention: Keep cPanel Email Running Reliably
- Monitor mailbox quotas monthly — set a calendar reminder to check usage, or configure quota warning emails in WHM
- Always verify mail routing after domain migrations — check WHM Email Routing for every domain you add or migrate
- Keep SPF, DKIM, and DMARC records configured — use cPanel Email Deliverability to verify and auto-repair
- Test incoming mail after any server or DNS change — send a test email from Gmail immediately after making changes
- Check your server's IP against spam blacklists — use MXToolbox Blacklist Check (
mxtoolbox.com/blacklists.aspx) if you suspect IP reputation issues
cPanel email issues are almost always fixable within minutes once you know which of these five causes you're dealing with. For servers with dozens of domains or clients where email uptime is critical, CloudHouse Technologies' managed server support provides 24/7 monitoring and rapid response so email issues are caught and fixed before your clients even notice.
