I'm having an issue with CiviMail. When the cron runs to send the scheduled mail it only sends 30 emails at a time. I have it set up to send through Office365 SMTP Relay, so its not the 30 messages a minute limit that Office365 has. I have the batch limit set to unlimited, so its not that either.

I can't find anything in the files that would be limiting it to only 30 messages per cron run.

My mailing list has about 5000 people in it, and I need to be able to send them all quickly. At 30 a minute it takes 3 hours, which isn't going to work. I even set up my cron to run every 20 secs to speed it up to an hour for all the messages. I can speed it up even more if I lower the time between runs, but I shouldn't have to. I should be able to either send them all to Office365 or in large batches and have them send quicker than it is allowing me too.

Any ideas?

  • 2
    In my experience, 5000 is high to be sending via your regular email provider. I would seriously consider a third party SMTP or mail distribution service.
    – choster
    May 4, 2016 at 0:21

2 Answers 2


I'm not familiar with Office365 Relay, a quick search indicates it's for devices to send emails via Office365. It was a quick search so I may be wrong.

Given that you are only able to send 30 emails at a time and that Office365 has a 30 emails/minute limit sounds like it is something to do with Office365 not a CiviCRM setting issue.

You may want to look at a SMTP service, here's a blog post that compares some services that work with CiviCRM.

  • The reason I don't think it is the 30/minute limit is because if I set the cron to run every 20 seconds, it sends 90/minute.
    – Sebastian
    May 4, 2016 at 14:04

Sanjay is right to suggest a SMTP service. That said, you mentioned the Mailer Batch Limit in Administer > CiviMail > Mailer Settings. That will limit each cron run to only sending that number of emails. A site might have a batch limit of 200, for example; that would mean that 200 messages go out on each run of the scheduled job.

If you were setting up CiviCRM to stay within Office365's limit of 30 emails per minute, you might want to set that batch limit to 30.

Running cron multiple times a minute may defeat Office365's limit, but there are two risks:

  • you may have cron double up on itself (it's not unrealistic for cron to take over 20 seconds)
  • you might get summarily dumped by Office365 for violating their terms of service, causing a big disruption

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.