Campaigns allow automated interaction with contacts through dripflows based on series of actions and decisions. For example, you can schedule a follow up email if the contact opens an email already sent to them! Or give the contact 10 points if they click through to a specific landing page.
Campaigns are central to creating an automated workflow to assist with your marketing efforts. Campaigns consist of various external points of contact which will engage your contacts. These engagements can be created to occur on predefined time intervals or in response to specific contact actions.
Time Driven Campaigns
The concept of time driven campaigns implies a form of campaign which centers around specific timed events. These events are most usually in the form of emails. These email events can be defined to be triggered after a delay of a predefined number of days or on a specific date in the future.
Contact Driven Campaigns
A second type of campaign is the contact driven campaign. These are campaigns which trigger events based on interactions from the contact. These can occur as a result of the contact landing on a certain page, opening an email, spending a specified amount of time on a website, or any number of other activities. The response to these actions would be an email sent either immediately or at some point in the future.
Obviously you are not limited to creating either one kind of campaign or another separately. Mautic allows you to create campaigns which consist of both time driven items as well as contact driven actions. This powerful mixed campaign means actions will be driven by both specific dates or after specific timeframes as well as actions taken by a contact directly (as mentioned above).
Email actions have been mentioned specifically as a particular use case, however there are many other responses the system can take. Other actions can include automatic assignment to a new segment, assigning a new point value, or an integration into a CRM or other system.
One of the main benefits of this campaign workflow process is the ability to predefine these workflows and have them respond automatically to your contacts and timelines. This automation minimizes the amount of time required for manual contact activity and improves reliability of contact nurturing through consistent contact.
The Mautic campaign builder gives you a blank canvas upon which to build your campaign workflow. The overall interface is clean and simple with easy to use events. These actions, decisions, or conditions can be added through clicking the “anchors” of events.
The first thing to be selected is where the campaign will pull in contacts from or contact sources. There are currently two options for contact sources: segments and forms. One or both can be added to the campaign.
After selecting one or more sources, the next step will be to add one or more actions (most likely), decisions and/or conditions:
Campaign actions are those items which are initiated by you. These are items which you will control and which affect your contacts involved in the campaign. Examples of these actions are adjusting a contact’s point totals, moving a contact to a different campaign, modifying the segments a particular contact is a part of, and lastly but perhaps most importantly sending of an email.
When you create a campaign you will select one of these actions to begin the workflow. In most cases this initial step will be an email sent to your segments.
You will notice that when you add an email to a campaign you will be able to select a potential delay for when the email is delivered. If the action is attached to a decision’s non-action initiated decision path, the delay becomes how long the contact has to take action before the campaign progresses down the non-action path.
After you have added an action you will more than likely place a decision on the campaign.
Decisions are actions which are initiated by the contact. These decisions can be either directly initiated or implied based on non-action. Samples of these decisions are downloading an asset, opening an email, submitting a form, or visiting a landing page.
Decisions are taken in response to an action and as such a decision has two outcomes.
These two options are demonstrated by the green and red decision points on the decision. Each path can then be handled by your campaign. This process is typically referred to as a decision tree.
It is important to note that a contact must already be part of the campaign in order for it to recognize the decision executed. Therefore, campaigns should never start with a decision unless you are manually managing the contacts assigned to it and the decision is expected to be executed at a later time.
Contact-initiated Decision Path (Green Points)
Actions attached to the green point of a decision are considered contact-initiated points.
The contact-initiated decision path is taken as a result of a contacts direct action such as opening an email or submitting a form. Connected actions will be executed (or scheduled if a delay is set) at the time the contact took the action.
Non-action Initiated Decision Path (Red Points)
Actions attached to the red point of a decision are considered non-action points. This path is taken as a result of a contact NOT taking some direct action.
Use an action’s delay settings to define at what point the campaign should send the contact down this path.
To trigger these events, see executing campaign actions.
To provide a simple example of a decision tree consider an email where the decision is to open an email. There are two outcomes, if the contact chooses to open the email then the green decision point connects to the next action to be taken in the campaign workflow. If, however, the contact does not open the email then you may desire a different action to be taken (e.g. a delay of 30 days then a second email sent).
Conditions can be used to execute different actions based on a contact’s data. For example, a condition can be configured to execute an action if a contact has an email or do something else if they do not.
The delay you set is ran before checking the condition no matter the delay you add on the connected actions. It will not wait the delay on the connected action to check the status of the condition to qualify the contact into the positive or negative path of the condition.
Currently there are 2 types of conditions
- Conditions based on Contact Field Value.
- Conditions based on Form Field Value.
Positive status Condition Path (Green Points)
Actions attached to the green point of a condition are considered as positive status points. The status condition path is taken as a result of the condition at the end of the delay set (trigger, delay or specific date).
Negative status Condition Path (Red Points)
Actions attached to the red point of a condition are considered as negative status points. This path is taken as a result of negative status for the condition at the end of the delay set (trigger, delay or specific date).
Below are notes on some of the specific campaign events.
Send Email – Marketing vs Transactional
In the send email action, there is an option to select Transaction or Marketing. A transactional email is one that can be sent to the contact multiple times. A marketing email is one that can only be sent to the contact once across multiple sources (e.g. another campaign). If the contact has already received this email from another source or the current campaign, the email will not be sent again and the contact simply progresses on through the campaign.
Send email to user
This action will allow you to send email to:
- any Mautic user
- contact’s owner
- any email addresses (TO, CC, BCC).
Emails sent through this action will not generate any statistics for contacts nor emails.
The email tokens will get populated with the real values including contact field values. But the email hash is bogus so the links like unsubscribe won’t work correctly. It’s similar behaviour like when a user sends itself a test email.
Send a Webhook
Action Send a Webhook with GET, POST, PUT, PATCH, DELETE, TRACE request support (curl). It was created based on GitHub discussion. Return true if page status code is 200/201. Data and headers values support contact field tokens (
Mautic 2.15.0 adds possibility to use contact’s IP address as a token
This action will permanently delete the contact who will trigger this action in your campaign flow, together with all the information Mautic knows about that contact. See in the segment docs about how to use this action to delete all contacts in a segment.
The Delete contact action is special for 2 reasons:
- It will also delete the campaign event log record about that contact so this action will always show 0% progress in the campaign detail page. Even though it could have deleted some contacts. There is no record about it.
- This action doesn’t allow to connect other campaign events to it. There is no point in doing so since the contact won’t exist after this action is triggered.
See the documentation on Focus items for an in-depth walk through
Update contact’s primary company
A campaign action was added in Mautic 2.14 which allows you to edit a contact’s primary company via a campaign. Read also about Mautic’s companies support.
Action update contact’s primary company based on company custom fields.
If you try update company name, then action will add new or existed company with same name to contact and mark it as primary.
The opens email decision can only be attached to a send email action. Whatever email is sent through the action is the email used by the decision.
Visits a page
Note: The decision uses the OR operator between fields (Limit to Pages, URL, Referrer).
Using a custom date field to trigger a campaign
In the condition based on a contact field value, select the required date field. After selecting it, select “date” as operator. Then select the required value from drop-down.
Note: In “Anniversary” option only day and month value of the field is considered.
One thing to remember is that campaign conditions are evaluated immediately. So if the date in the field matches the condition, then the positive action is executed. If the date doesn’t match, the negative action is executed. The contact doesn’t kind of “hang around” waiting for the condition to be true.
In order to run campaigns based on a particular date where a contact may or may not be “included” today:
- create a segment with a filter where the date field = TODAY.
- initiate the campaign based on that segment.
- as people move in and out of the segment, the campaign will run.
- you can elimiate the condition since the segment is changing daily.
- note: this will NOT work for an anniversary – only an actual date.
Of course if someone appears again at a later date in that segment because the value of the date is changed, they’ll still only go through the campaign once and hence will NOT be included in the campaign again.