Your software
My Mautic version is: v5.2.4
My PHP version is:8.2
My Database type and version is: MySQL 8.0.46
Your problem
Environment
- Mautic 5.2.4
- Twilio SMS integration
- Campaign-triggered SMS
- Symfony Messenger enabled
Campaign Design
The campaign is relatively simple:
Decision (Email Clicked?)
↓
Wait 2 days
↓
Send Text Message
↓
Continue campaign
The SMS action is configured to:
- Execute 2 days after the previous event
- Only send between 09:00 and 17:00
- Weekdays only
The campaign contains:
- no loops
- no multiple paths back to the SMS action
- no duplicate SMS actions
Problem
One contact received more than 20 duplicate SMS messages over several days from what appears to be the same campaign event.
The SMS seemed to be sent approximately every time mautic:campaigns:trigger executed.
The repeated sends only stopped after we manually enabled Do Not Contact (SMS) for that contact.
Cron Schedule
Our cron jobs are currently:
mautic:segments:updateevery 30 minutesmautic:campaigns:updatethree times per hourmautic:campaigns:triggerthree times per hourmautic:campaigns:rebuildthree times per hour (I’ve since learned this may not be a recommended production schedule.)
Investigation
Twilio
Twilio confirms the SMS messages were actually sent.
This is not simply duplicated contact history.
SMS Statistics
The table mautic_sms_message_stats contains multiple successful SMS records (20+) for the same contact.
All rows have the same values:
sms_id = 21
source = campaign.event
source_id = 7673
is_failed = 0
This suggests every SMS originated from the same campaign event.
However, the campaign event log contains only one record for that event:
event_id = 7673
campaign_id = 228
lead_id = (redacted)
date_triggered = 2026-06-25 06:26:02
is_scheduled = 0
system_triggered = 0
I also ran:
SELECT event_id, COUNT(*)
FROM mautic_campaign_lead_event_log
WHERE lead_id = ?
GROUP BY event_id;
Every event returned a count of 1, so I couldn’t find evidence that the campaign event itself was repeatedly logged.
What I’ve Ruled Out
Based on the investigation so far:
- Twilio is not independently duplicating messages.
- The campaign does not contain loops or duplicate SMS actions.
- The contact does not appear to have repeatedly re-entered the campaign.
- The SMS statistics clearly show Mautic generated each SMS (
source = campaign.event). - Enabling Do Not Contact (SMS) immediately stopped any further sends.
Questions
-
Has anyone experienced a scheduled campaign SMS repeatedly sending from the same campaign event?
-
Is this a known issue in Mautic 5.2.x?
-
Could running
mautic:campaigns:rebuildon a recurring cron schedule contribute to this behaviour? -
Is there a known workaround that does not require upgrading Mautic immediately? Unfortunately, upgrading isn’t feasible for us in the short term due to resource constraints.
-
Is there another database table, log, or debugging approach that could help explain why one
campaign.event(source_id = 7673) generated multiple successful SMS records while the campaign event log only shows a single execution?I’d appreciate any suggestions, similar experiences, or recommendations on additional troubleshooting steps.