Cron jobs¶
Mautic relies on special tasks called "cron jobs" that run in the background on a regular schedule to keep your Mautic system operating smoothly. These cron jobs perform important functions like:
- Updating your contact segments/lists based on the filters you've set up
- Advancing contacts through the steps of your campaigns and triggering campaign actions at the right times
- Sending out marketing emails that you've queued up
- Cleaning up old data to keep Mautic running quickly
→ See the list of the cron jobs that exist for Mautic production environments
Warning
Without them, key parts of Mautic wouldn't work properly.
Success
The developer sets these jobs to run a few minutes apart so they don't slow down your server by running all at once. This is why it may take a few minutes for the automatic emails to be sent.
But how to they work?¶
Cron jobs are set up by our web developer on the server where Mautic is installed. The developer tells the server what Mautic tasks to run and how often to run them (usually every 5-15 minutes).
Info
Their work is really hard even for the top-tier equipment we use to run your servers. We always monitor and apply the best settings.
Why this is part of the product, not just an infrastructure detail¶
It's tempting to file cron under "server stuff" — something humming along quietly while the real product lives in the browser. With Mautic, that's not quite right. Segments, campaigns, scheduled sends, message queues, and maintenance routines all lean on cron running in a coherent sequence. Get that sequence wrong, and the symptoms show up almost anywhere in the app — reports that look mysteriously off, campaigns that misbehave, or sends that just don't trigger when they should. None of that means Mautic is buggy. It usually means cron is running out of step with itself.
The order that keeps everything honest¶
Not every cron job cares about its place in the queue — but a handful of them do, because one job's output becomes the next job's input. Run them out of turn, and you're working with stale data. Here's the sequence worth respecting:
- Update segments — refreshes who belongs where, based on the latest contact activity.
- Update campaigns — rebuilds campaign membership using those freshly updated segments.
- Trigger campaigns — fires the timed events for contacts now sitting in the right place.
- Send queued messages — actually delivers what campaigns just queued up.
- Process webhooks and broadcasts — handles the follow-on integrations and bulk sends.
- Run maintenance routines — cleanup and housekeeping, timed to fit your environment.
Think of it like an assembly line: if the paint booth runs before the parts are even bolted together, speeding it up doesn't help — you just get a mess, sooner.
Note
To be clear, this ordering mostly matters for the jobs listed above, not every cron job Mautic runs. Most jobs are happily independent of each other.
Who actually needs to worry about this?¶
If you're on our managed hosting, the honest answer is: nobody. We've already built this sequencing into the hosting setup, so it runs correctly in the background without any effort on your side.
If you're self-managing your environment, though, this lands on your plate. You (or your infra team) need to make sure these specific jobs run in the order above, spaced out sensibly, so each step has fresh data by the time it starts.
For the exact default schedule and job names, see Cron jobs for Mautic production environments.