Why am I getting a Domain has exceeded the max defers and failures per hour error?
As of the release of cPanel 11.32, to which we upgraded in early March 2012, a new feature intended to limit the ability of exploited or hacked sites to send out spam has been implemented. A few customers who send out mass mailings have been triggering this feature, due to the number of bad/undeliverable email addresses on their lists.
If you encounter this problem, you'll receive a bounce message with an error similar to the following:
Domain has exceeded the max defers and failures per hour (5/5 (26%)) allowed. Message discarded.
cPanel will regularly monitor the emails sent through all email accounts on your domain, and if, over the past hour, more than 25% of the attempted deliveries have failed, outbound email will temporarily be limited.
The "(5/5)" portion of the error indicates that the measurement of bounces kicked in once 5 bounces were detected during the hour. In other words, if you have 4 bounces in an hour during which you sent 16 emails, even though 25% of your emails have bounced, nothing will happen because you are under 5 bounces. Once you reach five bounces in an hour, the bounce percentage measurement is taken and a sending restriction is enforced if you're over the bounce percentage limit.
Because there are clients who fail to keep their PHP scripts updated with newest versions, some sites are vulnerable to exploits by spammers. Sites get hacked and mail accounts hijacked for spam purposes. Because spam campaigns have a high bounce rate, this feature can quickly limit the damage that can be done by these exploits, and prevent our servers from ending up on dns blacklists, and then being unable to deliver legitimate email properly.
If you send mass mail and haven't kept your mailing list clean by removing invalid email addresses, you may generate enough bounces to have your mailings limited. The only way to work around this is to clean up your list and remove any invalid email addresses.
Use of a good maling list manager, properly configured to process bounces, will help. Systems such as phpList, which can be installed via Softaculous in the control panel. It is also worth mentioning that our authorized usage policy requires that ALL mass mailing (meaning any email sent to more than one recipient) must have an easy one-click unsubscribe link to allow recipients to easily opt out. This pretty much requires you to use an automated mail system of some kind that will handle unsubscribes.
Determining the precise cause of this error
If you're not sure exactly what is causing this, you can probably figure it out by using the Email Trace icon in your hosting control panel. When you click the Email Trace icon, you'll see a field where you can enter a recipient's email address and then click a "Run Report" button to get information about email sent to that recipient. If you enter nothing for the recipient email address, you'll get back data for all email traffic, and as you look through it you should see groups of bounced messages which can help you determine what sender caused the problem, and why.