I'm using AutomateWoo plugin to send some email marketing automation such as win back customer (sending discount coupon code to customers who did not make any purchase for XX days).
It works like a charm, except when I have a lot of customers who meets the criteria of the workflow's logic. For example, if I have 300 orders on my website in one day, and none of those customers made any new purchase for 300 days, then AutomateWoo will create a 200 emails queue for those customers. Then, the email will start to send out in a really fast/quick rate.
The bunch of emails sent out by AutomateWoo in a short period of time causing problems because:
- I'm still using my hosting SMTP email service with a limit of 200 emails per hour. Meanwhile, AutomateWoo trying to send those 300 emails in minutes! This result in SMTP blocking and my emails did not sent out to the end customer.
- I'm using this email to trigger Webhook (Mail Hook) on Integromat for some other automation, with a free plan I only got 10 queue capacity in the mail hook. When the queue is full (more than 10 email coming in a short period of time), rest of the emails will get ignored.
My main goal is to "slow down" the rate of email triggered by AutomateWoo to 1 - 3 emails per minute. Because I don't need all the email delivered at the same time. I don't care if it took 3 hours to send out 200 emails as long as it gets delivered and my integromat could catch all of them as a trigger.
I tried to google and did not find any solution, the only thing that I found is how to increase the queue batch size. And I tried to modify it to reduce the batch size from the default 50 to 10 by inserting this code in my function.php as follow:
function eg_increase_aw_batch_size( $default_batch_size ) {
return 10;
}
add_filter( 'automatewoo_queue_batch_size', 'eg_increase_aw_batch_size' );
But it doesn't seem to work as I still get my SMTP blocked (I'm not quite sure on how to test this quantitatively).
Anybody gives me some advice on what to try?