If you run email marketing campaigns and send to large lists through Zoho Campaigns, or similar platforms, you may have come across a cryptic SMTP error in your bounce message starting with 421 4.7.28. This is Google temporarily blocking delivery to Gmail recipients because something about the campaign's sending pattern looked like unsolicited mail. This guide explains what triggers it, what each error message means in full, and how to get your campaigns back on track.
What is rate limiting?
Rate limiting is when a receiving mail server temporarily restricts how many messages it will accept from a given source. Gmail uses a 421 SMTP response code to signal this, which means "try again later." Messages are not permanently rejected. The server is telling your sending platform to slow down and retry after some time.
The 4.7.28 sub-code specifically means Gmail has detected an unusual rate of mail it considers unsolicited, and has temporarily throttled the sending of mails to protect its users.
Why does Google rate limit marketing emails?
Gmail's spam filters watch for high-volume sending that users are not engaging with. When a campaign lands in inboxes and recipients consistently ignore it, delete it without opening, or mark it as spam, Gmail treats those signals as a sign of abuse and starts restricting delivery.
This is especially relevant for marketing campaigns because they tend to involve:
Large recipient lists sent in a short window
Cold or outdated contacts who never opted in
URL tracking links that Gmail may have seen in flagged campaigns before
Google tracks sending behavior at four distinct levels, each with its own quota:
Exceeding any one of these triggers a 421 4.7.28 error.
Commonly occurring 4.7.28 errors
There are four types of this error, one for each quota Gmail tracks. Below is the two most commonly occurring errors and their message in full, along with what causes it, we come across in Zoho Campaigns.
IP address rate limited
- 421-4.7.28 [x.x.x.x] 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. Please visit https://support.google.com/mail/?p=UnsolicitedRateLimitError to review our Bulk Email Senders Guidelines. [message-id] - gsmtp
Why it happens: Gmail tracks the volume of unsolicited mail coming from your sending IP. One main reason can be due to shared IP pool, which means the activity of other senders on the same IP affects your delivery too. If the IP (or the pool it belongs to) has sent a large volume of campaigns in a short period, or has built up a poor reputation over time, Gmail applies a temporary throttle to all traffic from it.
DKIM domain rate limited
- 421-4.7.28 Gmail has detected an unusual rate of unsolicited mail originating from your DKIM domain. To protect our users from spam, mail sent from your domain has been temporarily rate limited. Please visit https://support.google.com/mail/?p=UnsolicitedRateLimitError to review our Bulk Email Senders Guidelines. [message-id] - gsmtp
Why it happens: The domain used in your DKIM signature has hit its quota. If you have not configured a custom DKIM key for your sending domain in your email marketing platform, the platform signs outgoing messages with its own domain. In that case, Gmail is tracking the platform's domain, not yours. A volume spike across the platform's user base can trigger this for your campaign even if your own domain reputation is clean.
Troubleshooting steps
Note: If the error does not specify whether the limit applies to your IP, SPF domain, or DKIM domain, assume all three are affected and apply the same recovery to each.Step 1: Stop sending for at least 10 minutes
Pause your campaign sending. Do not retry or resume sending while the rate limit is active. Continuing to push mail through will not clear the block and may worsen your domain's standing with Gmail. Wait a minimum of 10 minutes before taking any further action.
Step 2: Identify which quota was hit
Read the bounce message to find out which signal triggered the limit – IP, SPF domain, DKIM domain, or URL domain. Check your campaign logs for the send volume and timing. A campaign sent to a large list all at once is far more likely to trigger rate limiting than one sent gradually over several hours.
Step 3: Resume with a single SMTP connection
After 10 minutes, attempt delivery using one connection only. If that single connection also fails, wait another 10 minutes before trying again. Do not open multiple connections at this stage.
Step 4: Add connections one at a time
Once a single connection succeeds, increase concurrency one connection at a time until you reach your desired volume. Do not jump back to your normal sending rate in one go.
Step 5: Grow campaign volume gradually going forward
Gmail's limits are sensitive to both total send volume and how quickly it rises. For ongoing campaigns:
Avoid sudden volume spikes, especially if your domain does not have a history of sending at that scale
Set up a custom DKIM record for your sending domain in your ESP to separate your reputation from the platform's shared domain
Conclusion
A 421 4.7.28 is a temporary block, not a permanent rejection. Gmail is signaling that your campaign's sending pattern crossed a threshold it associates with unsolicited mail. The fastest way to recover is to pause, check which of the four quotas was triggered, then ramp back up from a single connection. In the longer run, consistent sending volumes, proper authentication, a clean and engaged list, and custom DKIM setup will significantly reduce the chances of hitting these limits during a campaign.