Setting up Mautic Cron Jobs manually on cPanel

Last update: May 5, 2025
Setting up Mautic Cron Jobs manually on cPanel

If you have installed Mautic using Softaculous, you will need to configure Mautic’s cron jobs manually. We have already written an article about how to do this, which could be useful if that’s your case, or even just to double-check if you completed all the steps correctly.

What is a Cron Job?

Without getting too technical, a cron job is a scheduled task that runs automatically at a predefined time or interval. It is used to automate repetitive actions like backups, system updates, report generation, and, in Mautic’s case, to send emails, trigger campaign automations, and much more. Essentially, cron jobs allow systems to perform regular tasks without manual intervention.

What if I don’t configure Mautic’s Cron Jobs?

Basically, all the campaigns you create will not work because they require cron jobs to be triggered and to send your emails. You can still use Mautic without them for building landing pages, forms (which don’t depend on cron jobs), and campaigns, but the automation will not function. Even if you are just testing the platform, it is recommended to set up cron jobs – it’s not hard to do and it ensures everything works properly!

What are the essential crons?

If you have a fresh Mautic instance, these are the essential cron jobs you will need:

  • Segment update (mautic:segments:update) – updates dynamic segments.
  • Campaign update (mautic:campaigns:update) – assigns contacts to campaigns based on their segment membership.
  • Campaign trigger (mautic:campaigns:trigger) – executes actions and decisions within campaigns.
  • Email send (mautic:emails:send) – sends scheduled emails (broadcasts).
  • Fetch email (mautic:email:fetch) – fetches and processes contact replies automatically.
  • Campaign rebuild (mautic:campaigns:rebuild) – processes and updates contact statuses inside campaigns to ensure they are correctly matched to current conditions.
  • Maintenance (mautic:maintenance:cleanup) – maintains your instance clean by removing old operational data, preventing database bloating. It’s recommended to run this once a day.

Setting up crons on cPanel

1. Folder check

  1. In your cPanel, go to File Manager.
  2. You need to identify your home directory. On the left, you’ll see a folder structure list. At the top, there should be a home icon with a structure, for example: /home/user1803. Take note of it.
  3. If you installed Mautic on a subdomain, you should have a folder with that subdomain’s name, for example: mkt.yourwebsite.com.
  4. In this case, your folder structure would be:/home/user1803/mkt.yourwebsite.com

2. Setting up Cron Jobs

  1. Go back to cPanel and open Cron Jobs.
  2. You will need to repeat this process for every cron job mentioned above.
  3. After filling the details, click on “Add New Cron Job” button.
    Important: Adjust the folder paths according to your actual installation.

Segment Update

  • Minute: 1,6,11,16,21,26,31,36,41,46,51,56
  • Hour: *
  • Day: *
  • Month: *
  • Weekday: *
  • Command: /usr/local/bin/php home/user1803/mkt.yourwebsite.com/bin/console mautic:segments:update

Campaign Update

  • Minute: 0,5,10,15,20,25,30,35,45,50,55
  • Hour: *
  • Day: *
  • Month: *
  • Weekday: *
  • Command: /usr/local/bin/php home/user1803/mkt.yourwebsite.com/bin/console mautic:campaigns:update

Campaign Trigger

  • Minute: 2,7,12,17,22,27,32,37,42,47,52,57
  • Hour: *
  • Day: *
  • Month: *
  • Weekday: *
  • Command: /usr/local/bin/php home/user1803/mkt.yourwebsite.com/bin/console mautic:campaigns:trigger

Email Send

  • Minute: 3,8,13,18,23,28,33,38,43,48,53,58
  • Hour: *
  • Day: *
  • Month: *
  • Weekday: *
  • Command: /usr/local/bin/php home/user1803/mkt.yourwebsite.com/bin/console mautic:emails:send

Fetch Email

  • Minute: 4,9,14,19,24,29,34,39,44,49,54,59
  • Hour: *
  • Day: *
  • Month: *
  • Weekday: *
  • Command: /usr/local/bin/php home/user1803/mkt.yourwebsite.com/bin/console mautic:emails:fetch

Campaign Rebuild

  • Minute: */15
  • Hour: *
  • Day: *
  • Month: *
  • Weekday: *
  • Command: /usr/local/bin/php home/user1803/mkt.yourwebsite.com/bin/console mautic:campaigns:rebuild

Maintenance

  • Minute: *
  • Hour: 0
  • Day: *
  • Month: *
  • Weekday: *
  • Command: /usr/local/bin/php home/user1803/mkt.yourwebsite.com/bin/console mautic:maintenance:cleanup

Final Steps

Although not mandatory, it is recommended to create and activate a simple campaign where you send an email to your own email address to confirm that everything is working correctly.

Important notes:

  • Mautic cron jobs should not run all at the same time. Spacing them out by 5-minute intervals, avoids server overload and ensures system stability.
  • If you are working with webhooks or scheduled reports, you will need to create additional cron jobs for those features. Always check Mautic’s official documentation for new cron job requirements as your usage grows.
  • Don’t be afraid to add more cron jobs, it means you are using the full potential of Mautic – and that’s great!

Written by

<a href="https://github.com/ricfreire" target="_blank">Ricardo Freire</a>

Ricardo Freire

Email Designer & Developer