# How to make triggering campaigns faster?

**URL:** <https://forum.mautic.org/t/how-to-make-triggering-campaigns-faster/24424>\
**Category:** Product Support\
**Created:** [June 10, 2022, 7:10am UTC](https://forum.mautic.org/t/how-to-make-triggering-campaigns-faster/24424 "2022-06-10T07:10:28Z")\
**Posts on this page:** 15\
**Page:** 1

<div class="post-metadata">

**Author:** ![sun123](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.mautic.org/sun123/32/6931_2.png) [@sun123](https://forum.mautic.org/u/sun123)\
**Post date:** [June 10, 2022, 7:10am UTC](https://forum.mautic.org/t/how-to-make-triggering-campaigns-faster/24424/1 "2022-06-10T07:10:28Z")

</div>

Hi there,

It takes about 10 seconds to complete triggering campaigns which has 1000 emails in default it is processing 100 per batch  
mautic:campaigns:trigger

I want to make it faster because in production there will be lots of emails to be triggered so I tried using max-threads=5 and batch-limit=500  
But this is not working and taking same amount of time as before  
mautic:campaigns:trigger --max-threads=10 --batch-limit=1000

Can you please help?

---

<div class="post-metadata">

**Author:** ![joeyk](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.mautic.org/joeyk/32/11164_2.png) [@joeyk](https://forum.mautic.org/u/joeyk)\
**Post date:** [June 10, 2022, 5:25pm UTC](https://forum.mautic.org/t/how-to-make-triggering-campaigns-faster/24424/2 "2022-06-10T17:25:24Z")

</div>

Hi,  
It sounds like your problem is with Email sending part of the campaigns, right?

---

<div class="post-metadata">

**Author:** ![sun123](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.mautic.org/sun123/32/6931_2.png) [@sun123](https://forum.mautic.org/u/sun123)\
**Post date:** [June 10, 2022, 10:58pm UTC](https://forum.mautic.org/t/how-to-make-triggering-campaigns-faster/24424/3 "2022-06-10T22:58:01Z")

</div>

@joeyk here, I want to speed up the triggering of campaigns so that it can put a lot of emails in queue in a minute. How is this possible? Any idea?

---

<div class="post-metadata">

**Author:** ![sun123](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.mautic.org/sun123/32/6931_2.png) [@sun123](https://forum.mautic.org/u/sun123)\
**Post date:** [June 10, 2022, 11:13pm UTC](https://forum.mautic.org/t/how-to-make-triggering-campaigns-faster/24424/4 "2022-06-10T23:13:29Z")

</div>

I was able to send 100 emails per second with 27 threads running concurrently however trigger campaign should match sends as that will put emails in queue. I tried using max thread option with trigger, but it’s not working

---

<div class="post-metadata">

**Author:** ![joeyk](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.mautic.org/joeyk/32/11164_2.png) [@joeyk](https://forum.mautic.org/u/joeyk)\
**Post date:** [June 11, 2022, 5:29am UTC](https://forum.mautic.org/t/how-to-make-triggering-campaigns-faster/24424/5 "2022-06-11T05:29:09Z")

</div>

What do you mean by not working?  
How fast you wanna send?

If you want to so fast I think you should look for another software. Its hurting you more then helping.

If you use the campaign action to send email rather then segment email - you will end up in blacklist since Mautic doesnt apply unsub header for campign emails

---

<div class="post-metadata">

**Author:** ![joeyk](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.mautic.org/joeyk/32/11164_2.png) [@joeyk](https://forum.mautic.org/u/joeyk)\
**Post date:** [June 11, 2022, 5:54am UTC](https://forum.mautic.org/t/how-to-make-triggering-campaigns-faster/24424/6 "2022-06-11T05:54:08Z")

</div>

In order to really understand how to speed up your Mautic sending and what the pitfalls are, check these videos:

1. The 1 minute cronjob

[![](https://us1.discourse-cdn.com/flex020/uploads/mautic/original/2X/0/0bc9562b34af41025814bc4c8090ea55addd7d17.jpeg "Smart Segment Processing Script for Mautic") ](https://www.youtube.com/watch?v=Ui-zGW7mYhE)

1. What should you send? Transactional or segment emails?

[![](https://us1.discourse-cdn.com/flex020/uploads/mautic/original/2X/2/29d7294e2d68f2606e7474e01052ec21ae63019d.jpeg "Marketing Automation Show: Transactional vs Marketing emails in Mautic") ](https://www.youtube.com/watch?v=HPpTXb9o9V8)

1. This is how emil sending works (queue explained)

[![](https://us1.discourse-cdn.com/flex020/uploads/mautic/original/2X/4/44af713b74f2b3072d1812a03cfd5a2d33b32c8f.jpeg "This Is How Email Sending Works In Mautic") ](https://www.youtube.com/watch?v=fJcen6XDuEc)

---

<div class="post-metadata">

**Author:** ![sun123](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.mautic.org/sun123/32/6931_2.png) [@sun123](https://forum.mautic.org/u/sun123)\
**Post date:** [June 12, 2022, 10:40am UTC](https://forum.mautic.org/t/how-to-make-triggering-campaigns-faster/24424/7 "2022-06-12T10:40:11Z")

</div>

Thank you very much @joeyk. Very helpful videos to understand Mautic, really good work there.

I am also using queue as per your advice for huge emails and I have cron job for email sending which is working great as I have used multiple threads and email sending from queue is pretty fast.

Now I also need to speed cron job of campaign triggers. But problem is I dont know how to use multi-threading here. Can you give some examples how we can use maxthread argument for cron job of campaign trigger?

Example when I use two commands simultaneously for cron job campaign trigger, the second one gives error as below

 ![image](https://us1.discourse-cdn.com/flex020/uploads/mautic/original/2X/8/81e339122f4f2cce88904bc69b314e995f02cd19.png)

Below are two commands I am using  
mautic:campaigns:trigger --thread-id=2 --max-threads=5  
&  
mautic:campaigns:trigger --thread-id=1 --max-threads=5

Many thanks

---

<div class="post-metadata">

**Author:** ![joeyk](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.mautic.org/joeyk/32/11164_2.png) [@joeyk](https://forum.mautic.org/u/joeyk)\
**Post date:** [June 12, 2022, 4:57pm UTC](https://forum.mautic.org/t/how-to-make-triggering-campaigns-faster/24424/8 "2022-06-12T16:57:06Z")

</div>

You can separate the contacts by ID. minID and maxID.  
How many contacts you have?

---

<div class="post-metadata">

**Author:** ![sun123](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.mautic.org/sun123/32/6931_2.png) [@sun123](https://forum.mautic.org/u/sun123)\
**Post date:** [June 13, 2022, 9:10am UTC](https://forum.mautic.org/t/how-to-make-triggering-campaigns-faster/24424/9 "2022-06-13T09:10:25Z")

</div>

@joeyk there are 10k contacts as of now and soon going to be 30-40k

I tried following but gives error that other process is running

mautic:campaigns:trigger --min-contact-id=1 --max-contact-id=400 & mautic:campaigns:trigger --min-contact-id=405 --max-contact-id=900

 ![image](https://us1.discourse-cdn.com/flex020/uploads/mautic/original/2X/d/d919245131eaaee299dc449f5594b74a8387d462.png)

---

<div class="post-metadata">

**Author:** ![carlosatfongo](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.mautic.org/carlosatfongo/32/10223_2.png) [@carlosatfongo](https://forum.mautic.org/u/carlosatfongo)\
**Post date:** [September 20, 2023, 2:33pm UTC](https://forum.mautic.org/t/how-to-make-triggering-campaigns-faster/24424/10 "2023-09-20T14:33:12Z")

</div>

Hi there, did you end up figuring out how to multi-thread this scenario?

---

<div class="post-metadata">

**Author:** ![zero477](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.mautic.org/zero477/32/10873_2.png) [@zero477](https://forum.mautic.org/u/zero477)\
**Post date:** [May 21, 2024, 2:59pm UTC](https://forum.mautic.org/t/how-to-make-triggering-campaigns-faster/24424/11 "2024-05-21T14:59:55Z")

</div>

Great Post Joeyk!! Thank you.

---

<div class="post-metadata">

**Author:** ![ansb26](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.mautic.org/ansb26/32/13547_2.png) [@ansb26](https://forum.mautic.org/u/ansb26)\
**Post date:** [August 22, 2025, 6:31am UTC](https://forum.mautic.org/t/how-to-make-triggering-campaigns-faster/24424/12 "2025-08-22T06:31:30Z")

</div>

Hi Joeyk, thanks for your help,

I am running Mautic 6.0.0 on docker and using RabbitMQ, I am able to manage 160 email sent out from RabbitMQ using multiple worker thread but my problem is campaign trigger process where i want super fast speed like 85-100 queue per second, because I want to send 3 lacks email in 1 hour.  
Can you suggest best approach to achieve this if possible or maximum Mautic limits to create queue?

---

<div class="post-metadata">

**Author:** ![joeyk](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.mautic.org/joeyk/32/11164_2.png) [@joeyk](https://forum.mautic.org/u/joeyk)\
**Post date:** [August 23, 2025, 4:38pm UTC](https://forum.mautic.org/t/how-to-make-triggering-campaigns-faster/24424/13 "2025-08-23T16:38:56Z")

</div>

Sure you can do it. Are you using amazon SES to send emails?

---

<div class="post-metadata">

**Author:** ![ansb26](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.mautic.org/ansb26/32/13547_2.png) [@ansb26](https://forum.mautic.org/u/ansb26)\
**Post date:** [August 27, 2025, 11:12am UTC](https://forum.mautic.org/t/how-to-make-triggering-campaigns-faster/24424/14 "2025-08-27T11:12:46Z")

</div>

Thanks for your reply, i am using mandrill, the problem was I have created a custom plug-in which would fetch a placeholder defined by me in email template when preparing the queue the event I used is onEmailGenerate, once I extracted the url from placeholder then I am making a curl request to external api and appending the response back to email template. The external api average response time is 1 sec and this can not be changed, So how can we achieve speed in this scenario. If I remove this external api then i am getting expected speed and it’s seems in control with thread and batch size parameter in campaign trigger command.

---

<div class="post-metadata">

**Author:** ![ansb26](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.mautic.org/ansb26/32/13547_2.png) [@ansb26](https://forum.mautic.org/u/ansb26)\
**Post date:** [September 2, 2025, 4:09am UTC](https://forum.mautic.org/t/how-to-make-triggering-campaigns-faster/24424/15 "2025-09-02T04:09:22Z")

</div>

Can anyone help me here?
