In this series of articles, we are considering how your organisation can implement a successful marketing automation strategy and in particular, using Unica Campaign. Today we turn our attention to building the campaign, enabling you to quickly set up your campaign and help minimise disruption when things don’t work out quite as planned.
Strategic segments are a key starting point for your
campaign selections. They provide a way to centralise the (sometimes complex) logic
behind your campaign definitions so that users can simply refer by name without
running the risk of making an error. Additionally, you need only run a lengthy
CreateSeg process once to then reap the benefit of multiple fast reads. For
regularly running campaigns you can use them to pass your audience ID’s between
flowcharts, if you do not require the overhead of storing contact history or
snapshotting to files or tables. One interesting use of Strategic Segments is
the ability to generate further delta segments. Immediately before running the
CreateSeg to generate the new content you can retrieve the results of the
previous iteration in a Select. Then using Merge processes, you can get:
Old Not New = IDs that have left the segment
New not Old = IDs that have joined the segment
These in turn can be written as new strategic segments and
used to trigger further processing or campaigns.
Templates allow the storage of reusable sections of
flowchart logic. Potential uses include:
Start points for standard campaign selections (typical
inclusions and exclusions to provide your starting universe or audience)
MailList only templates to provide a quick start
for each of your channel requirements
Backup of flowchart logic before making changes
Often used sections of flowchart logic such as
key decision points
Adoption of best practice or optimised selection
processes – why keep reinventing the wheel?
The content is stored in the template folder in
the Unica file system which is easily transferable to other Unica Campaign
environments you may have.
As with a lot of the component creation in Unica, having a well-defined
storage approach will make life a lot easier for other users, particularly
during handover or onboarding new starters. Using templates means that most
campaigns will be able to be rapidly developed.
Take care as templates do carry around their own version of
table mappings that can overwrite definitions already existing in the
destination flowchart – many of us have seen the datasource authentication
Derived Fields also help with definition
standardisation. This does not just have to be for calculation of new data but
can be used for example to store banks of SMS message templates in a pseudo
content library. When importing a stored derived field into a flowchart the
original definition remains untouched so the final output can be easily
adapted. The name of a derived field, as already mentioned, can be assigned the
form UserVar.NAME which will dynamically populate the content of the user
variable called NAME.
The Segment process can be used to create decision points within a flowchart. Normally this process will be used to split your ID list based on some property, calculation or field value. As an example, you could construct a derived field that is independent of customer attributes such as “IsWeekend”. Create two segments, Weekend and Weekday using the result of this derived field, make the segments mutually exclusive if necessary and even prevent downstream processes from running if a segment contains no IDs. The end result is that depending on the type of day, the entire set of IDs will pass down the required flowchart branch.
Segment processes can also be useful for error trapping. If you know that there are a finite number of exclusive conditions at any point, you can put a mutually exclusive segment process in place with a “Remainder” (All remaining records) cell. Anyone appearing in this segment might indicate some sort of error which could be written to error tables or used to notify users via a trigger (see below).
User Variables allow for definition a single value flowcharts attribute (compared to a derived field which is usually set for every individual in an audience). You can assign values via derived field calculations, change the entire focus of a flowchart by changing one value (want to run your flowchart on a particular sales region for example) and can be used to change the process flow within the flowchart (see above Switch example). You can even change the value of user variables when setting up a schedule definition meaning that one flowchart can be called more than once by different schedules to do very different things (but not simultaneously – that’s what Unica Distributed Marketing is/was for!).
They can even be referenced in output file names (todays
date for example) or passed as parameters to batch triggers as anyone who has
run the accelerator scripts to integrate to Acoustic (previously WCA/Silverpop)
will attest to.
Stored (Batch) Triggers are not to be confused with the scheduling trigger tokens set up in the Marketing Platform Scheduler. You can set up scripting files to run external processing such as email alerts, adding entries to database files, file housekeeping, moving files to an SFTP server etc. They can be called from within a MailList or Schedule process or on flowchart Success or Fail in the Admin > Advanced Settings functionality of a flowchart. You can even pass parameters into the script via user variables. We will be covering Scheduler (Email) notifications later.
On any Unica implementation I am involved with, I like to
put in place a simple flowchart processing audit table. This will contain
fields such as Who, Start/End Date-Time, What Process, Which Campaign or
session and flowchart etc. I would then template a snapshot process to append to
this table and use at the end of every important flowchart I run. Auditing
capability within Unica Campaign is improving all the time but I find it useful
to be able to see exactly when a process was run. Importantly though you can
set up a custom macro to retrieve the last run date-time of a particular
process and then use this to filter only new transactions to be processed for
an input table or file (via Extract) in the next selection cycle.
Another interesting bi-product of the table is that you use
End – Start to calculate the run time for a flowchart and then view over time.
In providing support we often hear that the system is slowing down – this
provides the evidence!
Finally, it makes good sense to ensure that your flowchart
or campaign build caters for two special cases:
Runs that do not happen. This could be because of a
Schedule failure, system outage or key data being unavailable. Try to look at
date-dependent qualifying criteria for your campaign being over a range. The
length of the date range will be dependent on the situation but for example, if
instead of looking for a transaction that happened yesterday, look for
transactions that happened in the last 7 days. Secondly, ensure that you are
excluding from your campaign, anyone who has already been selected. This now
means that you will only pick up the genuine new individuals but if processing
is delayed for up to 7 days, you’ll not have to make any further changes and
just simply run at the first available opportunity.
Runs that happen too frequently. We will be looking
at test runs vs production runs later but sometimes a campaign will be run more
than once in a given schedule cycle. This usually happens when you are
debugging a flowchart and accidentally run a second time. To prevent any recovery
effort required, as with the previous case, always make sure that your
flowcharts are excluding people already processed by those flowcharts. Of
course, if you do accidentally put contacts into your Contact History you can
always clear down in the MailList process itself. Sending out a repeating file
to a channel partner might need some bespoke recovery though!
Putting all the above together, you should be able to quickly create flowcharts that are robust, quick to run and versatile. Building your campaign flowcharts is just part of the processes though. Applying the brief, sequencing the schedules and interacting with internal teams and external partners all need to be successfully negotiated to deliver the automation process. If you wish to learn more about Unica Campaign, Marketing automation or help on how to optimise your campaign flowchart build, please get in touch.