I scheduled an email to send at 9.40am and it actually sent at 9.49am which I assume is to do with how often the send mail cron job runs.

Is there a way of actually getting an email to send at the time you specify?

EDIT my cron job for the above said that it triggered at 11.48am. Why is that? Is there a setting in civi which I need to change?



If this is a one off thing, you can run the Send Scheduled Mailings as a one off directly from the user interface from Administer >> System Settings >> Scheduled Jobs. Select More and then Execute Now against Send Scheduled Mailings.

I don't think that tinkering with the cron jobs to do this is a sensible way to do this, though it would work. Some environments (externally hosted) will not want cron jobs to run too frequently as it wastes resources. Personally, I would try and set the time for emails to fit the cron schedule.

I agree with Lars SG about the 11:48 entry. If you look back at the Log for the Send Scheduled Mailings job you will also see 09:48 (and I expect 10:48 at least depending on the frequency.

  • Thanks for your answer - sorry I got distracted by other tasks! There does appear to be a 2 hour discrepancy. My server is is in Bulgaria which is 2 hours head. My drupal instance is set with correct time (British summer time). I have just created a mail job and it says created at 11.05 despite the fact that it is 9.05. The scheduled job says that the last job was run at 11.03 (despite the fact that it was 9.03). I feel like I'm missing something like a localised setting in civicrm to overide the server time. Is there anything like that? THANKS!
    – Caroline B
    Apr 21 '21 at 8:07
  • Not really sure what is going on, but looking for timezone in SE suggests that it might not be set properly in PHP.
    – Mick Kahn
    Apr 21 '21 at 9:37
  • Thanks I will look into that. Caroline
    – Caroline B
    Apr 21 '21 at 12:15

How close to the exact time does it need to be? You can change the frequency of the cron job within reason, perhaps temporarily if you need a specific mailing to go out at a very specific time. You need to do that on your server, as you can't change this within CiviCRM. Your send scheduled mailings scheduled job is set to run Always, right?

11:48am sounds like it was the last time it was triggered.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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