Posted by: Matt Lewis
Last updated: August 17, 2026

Marketing automation has a deserved reputation for being finicky. Mautic is one of the most capable self-hosted platforms available, but it’s more than happy to let you build a confusing mess if you jump in without a plan.
Vague naming is one of the fastest ways to make your life miserable. It starts innocently enough with an email called Test Email. Five weeks later, you have duplicated it three times and no longer know which version does what.
Do not name things Campaign 1, Newsletter Form, or Test Email and assume you will remember what they are later. You will not.
Use naming patterns that tell you the purpose at a glance. For example:
This sounds small, but it saves a ton of time once you have more than a handful of assets. Use whatever naming template feels natural to you. The important part is sticking to it.
Don’t go overboard with your first funnel. Keep it simple and confirm that Mautic’s core components work together before building out branching campaigns.
Once this works, you have confirmed the entire basic flow is functioning correctly:
Mautic relies on server cron jobs for pretty much everything useful it does. Unlike something like WordPress, these jobs do not run simply because someone visits the Mautic dashboard.
A standard Softaculous installation DOES NOT create Mautic’s required cron jobs for you. After installing Mautic, check that they exist and create them manually if they don’t.
At a minimum, Mautic requires these commands:
The following example runs each job every 15 minutes while staggering their start times to reduce the chance of them competing for server resources:
0,15,30,45 * * * * /usr/local/bin/php /home/USERNAME/public_html/mautic/bin/console mautic:segments:update --no-interaction --no-ansi >/dev/null 2>&1
5,20,35,50 * * * * /usr/local/bin/php /home/USERNAME/public_html/mautic/bin/console mautic:campaigns:update --no-interaction --no-ansi >/dev/null 2>&1
10,25,40,55 * * * * /usr/local/bin/php /home/USERNAME/public_html/mautic/bin/console mautic:campaigns:trigger --no-interaction --no-ansi >/dev/null 2>&1Create these as three separate cron jobs. Replace USERNAME and the example Mautic directory with the correct path for your account. The PHP executable may also differ depending on the PHP version assigned to your website.
These three jobs are enough for basic campaigns such as the one covered in this guide. Some optional features (such as queued email delivery, scheduled broadcasts, and bounce processing) will require additional cron entries.
Much like the naming conventions mentioned above, segments are where you can turn things messy in a hurry.
At the start you will likely be tempted to create many clever, overlapping lists. Boring segments are usually easier to understand and actually use.
Good segment examples:
Messier segment examples:
It’s not that these names are completely meaningless. The problem is that six months from now you’ll have to stop and figure out what they actually mean.
Not every email should feel the same. A welcome email should feel completely different from a newsletter or promotional campaign.
Mautic supports both broadcast emails and emails used inside campaigns. They serve different purposes, and you should write them differently.
Broadcast email is best for:
Campaign email is best for:
If you write every email like a mass newsletter, your automations will feel robotic and impersonal. Messages such as welcome emails, download deliveries, and gentle follow-ups often work better when they sound like they were written by one person directly to another.
It is very easy to build a campaign with too many branches, delays, tags, and scoring rules before you know what is actually working.
Before adding more complexity, ask yourself:
Does this campaign have one clear goal?
Can I explain the full customer journey in a few sentences?
Can I easily tell why a contact received each message?
Can I test every variation without creating a spreadsheet?
Will the reporting clearly show what worked?
Every extra branch gives you another thing to test and another place for something to go wrong. Get the simple version working first.
Start simple. Once you have a reliable baseline, begin adding more advanced rules where they serve a clear purpose, or answer a useful question (e.g. Do mobile visitors buy faster with a second follow-up email?).
The best automation in the world is useless if your emails land in spam.
Mautic handles the sending, but deliverability depends on good content, solid infrastructure, and strict list hygiene.
Helpful habits:
Mautic can handle a lot, but that does not mean every part of your marketing and sales process belongs inside it.
Use Mautic for the things it is good at:
Don’t try to turn it into your entire business stack just because a feature technically exists.
Your sales team may still be better served by a dedicated CRM. Support tickets usually belong in a help desk. Detailed reporting will be easier in a dedicated analytics tool.
The goal is not to cram everything into one dashboard. The goal is to let Mautic handle the automation work without making the rest of your workflow harder.
On the technical side, it’s definitely forgetting to set up your cron jobs. Without them, Mautic basically sits there and does nothing.
On the strategy side, it’s overcomplicating your very first campaign. Trying to build a massive, web-like workflow right out of the gate is a fast track to broken logic and burnout. Keep your first few campaigns dead simple, get them running, and scale up from there.
No, hold off on that. Hyper-niche lists sound great on paper, but creating a bunch of tiny segments without clear purpose makes your setup more complex for no payoff.
When you’re first getting a campaign off the ground, stick to broad, high-volume groups like “recently engaged” or “newsletter subscribers”. They give you enough data right away to make quick, real decisions. You can always carve out smaller, specific segments later once your audience grows.