back to

Sending out emails chokes to only 10% output


I’m sending out an email to a large group of people and the output has gradually reduced to only 10% (actually less than that at the moment).

[Tue 18 Dec 2018 05:58] [CL] Script stage: 5
[Tue 18 Dec 2018 05:58] [CL] 250 messages sent in 525.38 seconds (1713 msgs/hr)
[Tue 18 Dec 2018 05:58] [CL] 230 failed (will retry later)

I enabled more detailed logging

define(‘VERBOSE’, 1);

and from what I can see the reason is the throttle limit. is currently over throttle limit of 1 per 10 seconds

I understand the issue and over the years email addresses have gradually been replaced to ‘all’,, instead of the more diversity of the past.

I realize that I can change the throttle setting in config but before I do I would like to know what your experiences are, since I can only assume you also see the shift to less and bigger email provider domains.

Any idea what an ideal throttle limit is ?
I certainly want to make it shorter than 10 seconds.

Or are there other ways around this issue ?



This is the ‘domain_throttle’ that is limiting the sending to

# Domain Throttling
# You can activate domain throttling, by setting USE_DOMAIN_THROTTLE to 1
# define the maximum amount of emails you want to allow sending to any domain and the number
# of seconds for that amount. This will make sure you don't send too many emails to one domain
# which may cause blacklisting. Particularly the big ones are tricky about this.
# it may cause a dramatic increase in the amount of time to send a message, depending on how
# many users you have that have the same domain (eg
# if too many failures for throttling occur, the send process will automatically add an extra
# delay to try to improve that. The example sends 1 message every 2 minutes.


My limited experience with using domain_throttle is that it slows the sending way down, for the reasons you listed in your question… lots of email addresses with the ‘big guys’ that are mostly waiting in the system for the throttling to let them go out.


So … are you saying you don’t use domain throttling at all ?

PS. I just realize I interpreted the stats wrongly. The fail rate due to domain throttling is more like 50%, not 90% (looked at the wrong value).


@ibPeter What Gmail will accept varies day to day, IP to IP. Your throttle settings need to reflect Gmail behaviour in response to your sending. So my throttle settings won’t have the same effect on your server for your IP.

One suggestion is to monitor the bounce and greylisting behaviour of recipient mail hosts like Gmail closely, via SMTP logs. You can inch throttles upwards seeking the recipients threshold, then when you hit it and mail starts being rejected, reduce way back down and repeat more cautiously. This is assuming that you’ve already taken all other usual steps for improving your deliverability, which you can test using various third party tools.