@gmail.com sitting frozen or marked as retry-pending. When you inspect the failure message, Exim does not show a permanent rejection like a 550 mailbox unavailable error. Instead, it logs an SMTP 421 temporary deferral mentioning that Gmail has restricted traffic from your server IP or domain due to unusual sending rates or missing authentication.
A 421 status code is a temporary failure, not a permanent bounce. It tells your Mail Transfer Agent (MTA)—in this case, Exim—that Google's incoming MX servers are currently unwilling to accept the connection or transaction, but Exim should hold the message in its local queue and retry delivery later according to its retry rules. When administrators see these deferrals, the first instinct is often to assume the server IP landed on a public anti-spam blacklist. In reality, modern Gmail 421 deferrals are almost always triggered by automated bulk sender protection systems reacting to incomplete authentication records or sudden surges in message volume.
Checking the Exim Log for the Exact Error String
exigrep or a read-only grep against /var/log/exim_mainlog targeting the recipient domain or a specific deferred message ID:
BASH
grep -E 'gmail-smtp-in.l.google.com.*421' /var/log/exim_mainlog | tail -n 10421 4.7.0 or 421 4.7.28. A representative log line looks like this illustrative example:
TEXT
2026-03-29 10:14:22 1tABCd-000123-XY H=gmail-smtp-in.l.google.com [142.250.153.26]: SMTP error from remote mail server after end of data: 421-4.7.28 [203.0.113.10] Our system has detected an unusual rate of unsolicited mail originating from your IP address. To protect our users from spam, mail sent from your IP address has been temporarily rate limited.Why Google Enforces Bulk Sender Throttling
@gmail.com and @googlemail.com). While these standards apply across the internet, Google enforces non-negotiable thresholds for anyone sending close to 5,000 or more messages per day. On a shared cPanel server hosting dozens or hundreds of accounts, reaching 5,000 daily messages sent to Gmail addresses across all hosted domains is common.
Under these rules, three core requirements dictate whether Gmail accepts your mail smoothly or begins deferring it:
First, sender authentication via SPF (Sender Policy Framework) and DKIM (DomainKeys Identified Mail) must be valid and verifiable. For bulk senders, relying on only one of the two is no longer acceptable; both must be present, and your domain must also publish a DMARC (Domain-based Message Authentication, Reporting, and Conformance) policy record. If an account sends transactional emails or marketing blasts without these records, Google's filters treat the traffic as suspicious.
Second, the sending domain must maintain alignment. DMARC alignment requires that the domain visible in the user-facing From: header matches the domain authenticated by SPF (the envelope sender domain) or the domain signing the email via DKIM (d=domain.com). When web scripts like WordPress send email using generic PHP mail wrappers, the envelope sender often defaults to [email protected], breaking alignment with the From: [email protected] header.
Third, spam complaint thresholds must remain exceptionally low. If recipients mark your messages as spam at a rate exceeding Google's acceptable baseline (typically targeted below 0.10% and never consistently exceeding 0.30%), automated rate limits trigger immediately. The result is the exact 421 deferral error recorded in your Exim logs.
Inspecting DNS Records for the Deferred Domain
-
Check the SPF record for the sender domain:
Look for a TXT record starting with
v=spf1. Ensure it includes the public IP address of your cPanel server (for example,+ip4:203.0.113.10) or includes your mail host record. If there is no SPF record, or if multiple SPF records exist, receiving servers will fail SPF evaluation. -
Check the DKIM public key record:
cPanel typically stores DKIM keys under the selector
default._domainkey.yourdomain.com. Verify that a TXT record exists for that selector and contains a validp=public key block. If cPanel generates a DKIM signature in the email headers but the public DNS zone lacks the matching key, Gmail treats the signature as invalid. -
Check the DMARC policy record:
Query
_dmarc.yourdomain.comfor a TXT record. At minimum, a domain should publish an initial monitoring record:v=DMARC1; p=none; sp=none;. Without this base record, domains sending higher volumes fail Google's bulk sender validation.
Fixing Authentication Within cPanel and WHM
- The DKIM record name must be
default._domainkey(or the specific selector shown in cPanel), and the type must beTXT. - The SPF record must be created at the root (
@) as aTXTrecord, containing the validv=spf1 ... ~allsyntax. - The DMARC record must be created at
_dmarcas aTXTrecord with at leastv=DMARC1; p=none;.
Clearing the Deferred Queue Safely
/etc/exim.conf, but users may become impatient if urgent emails are delayed.
Do not force-flush the entire Exim queue at once if you have hundreds of queued messages for Gmail. Attempting to blast 500 queued messages immediately to gmail-smtp-in.l.google.com will re-trigger the exact same 421 rate limit, extending Google's temporary ban for several more hours.
Instead, let Exim's native retry schedule handle the queue gradually, or retry messages in small, deliberate batches. Once Google detects that newly connecting connections carry verified SPF, valid DKIM signatures, and legitimate DMARC alignment, the 421 deferrals will decrease and normal queue delivery will resume automatically.
Understanding that a 421 error is an automated throttle—not a permanent ban—keeps your troubleshooting focused where it matters: verifying DNS records, checking message alignment, and ensuring that outbound volume from shared accounts meets modern recipient standards.