Download as pdf or txt
Download as pdf or txt
You are on page 1of 399

Marketing Cloud Journeys and

Automations
Salesforce, Winter ’23

@salesforcedocs
Last updated: November 10, 2022
© Copyright 2000–2022 salesforce.com, inc. All rights reserved. Salesforce is a registered trademark of salesforce.com, inc.,

as are other names and marks. Other marks appearing herein may be trademarks of their respective owners.
CONTENTS

MARKETING CLOUD JOURNEYS AND AUTOMATIONS . . . . . . . . . . . . . . . . . 1


Email Client Privacy and Non-Subscriber Activity in Marketing Cloud Email and Journeys . . . . . . 1
Automation Studio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Marketing Cloud Best Practices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
Journeys and Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
Behavioral Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388

INDEX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394
MARKETING CLOUD JOURNEYS AND AUTOMATIONS

Design and automate campaigns that guide customers through their journey with a brand. Execute simple or multi-step marketing and
data management activities on an immediate, triggered, or scheduled basis.

Email Client Privacy and Non-Subscriber Activity in Marketing Cloud Email and Journeys
Some email client providers are making privacy changes that can impact open metrics and calculations. Trust is the #1 Value at
Salesforce. Privacy and security continue to gain importance in our digital lives. Our top priority is to create the solutions that help
you respond, act, and succeed in these new environments. Marketers traditionally create automations, campaign engagement
strategies, and more based on email opens because opens can signal whether a customer or prospect is interested in your content.
But the privacy options available to customers can make email opens less reliable as engagement signals.
Automation Studio
Learn how Automation Studio makes Marketing Cloud email sends, queries, imports, and more happen automatically.
Marketing Cloud Best Practices
Looking for best practices and use cases to help you get the most out of Marketing Cloud? You’re in the right place.
Journeys and Messages
Marketing Cloud’s Journey Builder is a campaign planning tool that enables you to design and automate campaigns that guide
customers through their journey with a brand. Its foundation is the journey, which is the communication plan you design. Canvas
activities tell Journey Builder how to communicate to and direct contacts in the journey. Contacts enter from an entry source. The
journey then continually evaluates contacts to determine when to move them to the next activity.
Behavioral Triggers
Let Salesforce Marketing Cloud equip you to reach customers who abandon unpurchased items or services. Configure the flow of
this behavioral data into the data extensions for email sends and journeys. Using behavioral triggers this way is called Behavioral
Triggers.

Email Client Privacy and Non-Subscriber Activity in Marketing Cloud


Email and Journeys
Some email client providers are making privacy changes that can impact open metrics and calculations. Trust is the #1 Value at Salesforce.
Privacy and security continue to gain importance in our digital lives. Our top priority is to create the solutions that help you respond,
act, and succeed in these new environments. Marketers traditionally create automations, campaign engagement strategies, and more
based on email opens because opens can signal whether a customer or prospect is interested in your content. But the privacy options
available to customers can make email opens less reliable as engagement signals.
In the Marketing Cloud Email and Journey experiences, these changes are to assist you in identifying the most valuable metrics for your
campaigns.

1
Marketing Cloud Journeys and Automations Automation Studio

Marketing Cloud App Details


Journey Builder Open-related decisions such as Engagement Splits and Path
Optimizer winner selection can be less reliable. Open metrics for
active journeys can be artificially inflated.
Users are reminded on the Journey Analytics dashboard that
open-related metrics don’t always accurately reflect engagement.

Datorama Reports for Marketing Cloud Email engagement metrics, including Email Unique Opens, Email
Open Rate, and Email Click-to-Open Rate, can be artificially inflated.
Users are reminded that on Email dashboards, open-related metrics
don’t always accurately reflect engagement.

SEE ALSO:
Use Einstein to Improve Your Marketing Efforts
Clicks and Opens Behavior

Automation Studio
Learn how Automation Studio makes Marketing Cloud email sends, queries, imports, and more happen automatically.
Automation Studio is a Marketing Cloud application used to execute multi-step marketing and data management activities on an
immediate, triggered, or scheduled basis. Use Automation Studio's workflow canvas to build simple or multi-step automations.
Automation Studio includes an overview page to show each automation's status. Error information appears in line with the corresponding
automation to enable quick recovery. You can also use this page to run automations on an individual basis if necessary.
Build automations using automation activities such as Send Email, Import File, or SQL Query. Configure and manage automation activities
on the Activities page. You can also use this page to run automation activities on an individual basis.

Tip: To avoid unexpected behavior such as pages not rendering or unintentional object modification, do not open multiple tabs
in Automation Studio.

2
Marketing Cloud Journeys and Automations Automation Studio

The Automation Studio Overview Page


When you access Automation Studio in Marketing Cloud, view up to 50 automations in your account, a snapshot of automation
activities, run history, and folders. You can also run each automation once from the Overview page.
Automate Processes in Automation Studio
Use an automation to start a process when specific criteria are met. For example, when a file is uploaded to Marketing Cloud Enhanced
FTP, you can automatically run activities, like an import, a file transfer, or an email send.
Schedule an Automation
In a Marketing Cloud automation that’s in draft mode or already running, set the schedule on the Workflow tab.
Use An Automation's Tabs
Gain a more detailed understanding of how a Marketing Cloud automation's tabs work in Automation Studio.
Automation Studio Activities
Easily understand and use the Automation Studio Activities tab in the Marketing Cloud.
Pause an Automation
Stop an automation's schedule temporarily in Automation Studio. This action only pauses the automation's schedule for future
scheduled runs. An automation that is running when you click Pause continues to run even if the schedule is paused.
Skip an Automation
Indicate in Automation Studio that an automation's next run will not occur without stopping the automation's schedule.
Stop a Running Automation
When an automation is stopped in Automation Studio, activities in the step that is in progress complete, but subsequent steps do
not start.

3
Marketing Cloud Journeys and Automations The Automation Studio Overview Page

Copy an Automation
Create an exact copy of an automation to extend or modify it in Automation Studio.
Delete an Automation
Remove unneeded automations from Overview or the automation page in Automation Studio.
Automation Studio Errors
Use this page to find out what Automation Studio error messages mean, their implications, and how to resolve them.
Get Automation Studio Notifications
Add your email address to get notified when a Marketing Cloud automation run is skipped, encounters an error, or completes. You
can also enable Slack alerts through Digital Command Center for Slack.
Find Activity Configuration and Error Details
To access configuration details and run history for an Automation Studio activity, view the activity's object detail page. Use this page
to locate error information about the activity, too.

The Automation Studio Overview Page


When you access Automation Studio in Marketing Cloud, view up to 50 automations in your account, a snapshot of automation activities,
run history, and folders. You can also run each automation once from the Overview page.
When you access Automation Studio, an Overview page appears showing this information:
• Up to 50 automations in your account
• A snapshot view of the included activities
• The automation's run history

Folders
The Folders pane contains folders you created. Create folders without leaving the page.

4
Marketing Cloud Journeys and Automations The Automation Studio Overview Page

View Options
View your automations in two ways:
1. List View
2. Detail View
Sort these views by status as necessary.

List View displays a greater number of automations at once without activity-level detail.

Detail View shows fewer automations at once. However, this view includes an abbreviated view of the automation's design, including
error information shown in red.

Hover over each activity to view its activity type, progress, and activity name. When a single automation step includes multiple activities,
hovering over that step gives you the option to view the entire automation's setup.

5
Marketing Cloud Journeys and Automations The Automation Studio Overview Page

Error Messages
A specific error message shows on the activity that errored, including an activity detail link that takes you to the activity to fix the error.
When the automation step includes multiple activities, an indicator on the timeline references the point in the step where the error
occurred.

6
Marketing Cloud Journeys and Automations The Automation Studio Overview Page

Summary
The Summary displays your automations by day or by week, and by status. Filter results by status using the dropdown menu.

Tip: To filter results, click Update.

To view a daily summary, click Day. To view a weekly summary, Week.

Run an Automation from the Overview Page


Start an automation in Marketing Cloud directly from the Automation Studio Overview page with one click.
Delete an Automation from the Overview Page
Delete unneeded automations in Marketing Cloud without leaving the Automation Studio Overview page.

SEE ALSO:
Use Interactions from Automation Studio in Interaction Studio (Legacy)

Run an Automation from the Overview Page


Start an automation in Marketing Cloud directly from the Automation Studio Overview page with one click.
You can also start automations on each automation's individual page.
1. Hover over the name of the automation.

7
Marketing Cloud Journeys and Automations The Automation Studio Overview Page

2. Click Run Once.

3. Click Run.

Tip: To run a subset of activities only, use Advanced Run Once.

Delete an Automation from the Overview Page


Delete unneeded automations in Marketing Cloud without leaving the Automation Studio Overview page.
1. Hover over the name of the automation.
2. Click Delete.

A confirmation message appears.


3. Click Delete to finalize this action.

8
Marketing Cloud Journeys and Automations Automate Processes in Automation Studio

Automate Processes in Automation Studio


Use an automation to start a process when specific criteria are met. For example, when a file is uploaded to Marketing Cloud Enhanced
FTP, you can automatically run activities, like an import, a file transfer, or an email send.
To build an automation, you choose a starting source, which determines how the automation starts. Then you add the activities that
occur when the automation runs. These activities can run sequentially or simultaneously.
You can choose from these starting sources.
• The schedule starting source starts an automation at specific intervals.
• The file drop starting source starts an automation when a file is uploaded to the Enhanced FTP.
• The trigger starting source starts an automation when a file is uploaded to an external location, such as AWS, Azure, or Google Cloud,
and a Trigger API request fires.
For more information, review these topics.

Automation Starting Sources


A starting source defines how an automation starts. You can schedule an automation to run at specific intervals or start an automation
when a file is uploaded to Marketing Cloud Enhanced FTP. Or, use a trigger to start an automation when a file is uploaded to an
external location, such as to Amazon S3, Google Cloud, or Microsoft Azure.
Advanced Run Once
Automation Studio includes options to schedule an automation, run it automatically when a file is dropped, or run an automation
once. Use Advanced Run Once to run only a portion of an automation.
Run a Subset of Activities
To run only the Marketing Cloud automation activities you select, click Run Once in Automation Studio, then select the activities to
run.

Automation Starting Sources


A starting source defines how an automation starts. You can schedule an automation to run at specific intervals or start an automation
when a file is uploaded to Marketing Cloud Enhanced FTP. Or, use a trigger to start an automation when a file is uploaded to an external
location, such as to Amazon S3, Google Cloud, or Microsoft Azure.
This table compares starting sources.

Scheduled Automations File Drop Automations Trigger Automations


Automation Starts On the schedule you define. When a file is uploaded to a When a file is uploaded to an
designated Enhanced FTP folder. external location, such as
Amazon S3, Google Cloud
Storage, or Microsoft Azure Blob
Storage.

Notes You can click Run Once to start If you change a file name Requires a trigger API with
a scheduled automation without modifying the file relevant file criteria to start the
immediately. content, the automation doesn’t automation.
start.

9
Marketing Cloud Journeys and Automations Automate Processes in Automation Studio

Scheduled Automations File Drop Automations Trigger Automations


Typical Use Case You import and refresh your You use other processes that You use other processes that
birthday list daily, and then send update files in an FTP folder and update files in an external
an email to all contacts whose you want to create an location and you want to create
birthday is today. automation that starts when an automation that starts when
activity occurs in that folder. activity occurs in that location.

Scheduled Automations
When you create a scheduled automation, configure the start date, time, and time zone. Then choose the repeat frequency of the
automation and when it ends.
Here are other considerations when using scheduled automations.
• You must activate a scheduled automation.
• The automation’s duration must be compatible with its schedule. For example, an automation is scheduled to run every 24 hours,
but it has a duration of 36 hours. In this case, the running automation stops after 24 hours when the next schedule automation starts.
So the automation never reaches completion.

File Drop Automations


When you create a file drop automation, you provide a file name pattern or Enhanced FTP directory that Marketing Cloud monitors.
When a file matching the pattern is placed on the FTP or in the directory that you specify, the automation runs.
File drop automations are queued by default. When the running automation completes or encounters an error, the next file in the queue
starts the next automation. This process continues until the queue is empty. If you turn off queuing, additional files are ignored when
an automation is already running.
Here are other considerations when using file drop automations.
• You must configure Enhanced FTP before creating a file drop automation.
• If you use a folder for the file drop, any file placed in the folder triggers the associated automation.
• If you use a folder for file drop, don’t use it for other purposes. Each Enhanced FTP folder supports only one file drop automation.
This limitation doesn’t apply if you use a file name pattern.
• If you use a file name pattern for the file drop, the automation is associated with the pattern and isn’t associated with a specific FTP
folder. The automation isn’t affected if you change the FTP folder for upload, as long as you don’t change the file name pattern.
• To make your files easy to audit, use dynamic file names whenever possible. For example, use
example%%year%%%%month%%%%day.csv instead of example.csv.
• File drop automations don’t read file extensions. Any characters following the final dot (.) in a file name are ignored.
• You can’t use these file types to start a file drop automation.
– .bmp
– .eml
– .jpg
– .jpeg
– .pdf
– .png
– .xml

10
Marketing Cloud Journeys and Automations Automate Processes in Automation Studio

Trigger Automations
When you create a trigger automation, enter a file name pattern and choose a file location. Create a trigger API that monitors the external
file location. Marketing Cloud listens for the trigger API and runs the automation when a file that matches the pattern is placed in that
location.

Trigger automations are queued by default. When the running automation completes or encounters an error, the next file in the queue
starts the next automation. This process continues until the queue is empty. If you turn off queuing, additional files are ignored when
an automation is already running.
Here are other considerations when using trigger automations.
• You must set up a file location for the external location before creating a trigger automation.
• You must use a trigger API to check for files from external locations.
• To make your files easy to audit, use specific file names whenever possible. For example, use example_YYYY_MM_DD.csv
instead of example.csv.
• To easily identify the related file name in downstream file transfer activities and import activities, use the variable
%%FILENAME_FROM_TRIGGER%%.
• Trigger automations can read file extensions, but are required only if you use the Equals operator or the Ends With operator.
For more information on each starting source, review these topics.

Configure a Scheduled Automation


Set up an automation that runs on a schedule.
Configure a File Drop Automation
Set up an automation that starts when a file is uploaded to Marketing Cloud Enhanced FTP.
Configure a Trigger Automation
Set up an automation that starts when a file is placed in an external location, such as Amazon S3, Google Cloud Storage, Microsoft
Azure, or your own SFTP location.
FTP and File Drop Automation Example
In this use case, learn how to trigger an automation in Marketing Cloud by dropping a file in an FTP location.
Filename Patterns Reference
Review these guidelines for the design of a file naming pattern in Marketing Cloud’s Automation Studio.

Configure a Scheduled Automation


Set up an automation that runs on a schedule.
1. Click New Automation.
2. Select Schedule.
3. Drag an activity onto the canvas.

11
Marketing Cloud Journeys and Automations Automate Processes in Automation Studio

4. To view all activities of the selected type, click Choose.


All existing configured activities of that type appear.
• Search by keyword, name, or external key.
• Sort by columns.
• To see a summary, click an activity.

5. Select an activity or create one.


6. Add and configure more activities as needed.
7. Save the automation.
8. Schedule the automation, or click Run Once to run the automation immediately.
If you later edit the automation or the activities in it, any active runs are stopped. Future runs of the automation are paused until all
activities are defined and saved.

Configure a File Drop Automation


Set up an automation that starts when a file is uploaded to Marketing Cloud Enhanced FTP.
1. Click New Automation.
2. Select File Drop.
3. Click Configure.
4. Choose whether to use a file name pattern.
• If you’re using a file name pattern, select an operator and provide text for the pattern. Don’t include a file extension.
• If you select No Filename Pattern, assign a directory as a trigger for one automation at a time. If you select Contains, Automation
Studio reads all files dropped into the FTP folder. It then triggers the automation tied to the first file it parses with a file name
meeting the Contains criteria.

5. If you want Automation Studio to ignore new requests that occur when an automation is running, disable queuing.
6. Select the directory for the system to watch. When a file is dropped in this folder, the automation starts.
7. Click Save.
8. Drag an activity onto the canvas.
9. To view all activities of the selected type, click Choose.
All existing configured activities of that type appear.
• Search by keyword, name, or external key.
• Sort by columns.
• To see a summary, click an activity.

10. Select an activity or create one.


11. Add and configure more activities as needed.
12. Save and activate the automation.
13. To receive notifications about automation success or failure, on the Activity tab, select Notification Settings and enter an email
address.
If you later edit the automation or the activities in it, any active runs are stopped. Future runs of the automation are paused until all
activities are defined and saved.

12
Marketing Cloud Journeys and Automations Automate Processes in Automation Studio

Configure a Trigger Automation


Set up an automation that starts when a file is placed in an external location, such as Amazon S3, Google Cloud Storage, Microsoft Azure,
or your own SFTP location.
When you build a trigger automation, enter a file name pattern and choose a file location. Create a trigger API that monitors the external
file location. Marketing Cloud listens for the trigger API and runs the automation when a file that matches the pattern is placed in that
location.

1. Click New Automation.


2. Select Trigger.
3. Click Configure.
4. Create a file name pattern.
a. Select an operator, and provide text for the file name pattern.
b. You can include the file extension, but it isn’t required unless you use the Equals operator or the Ends With operator.

5. Enter a sample file name, including its file extension, that you expect to trigger the automation. Unlike a file name pattern, the sample
file name requires the file extension.
If the file name pattern doesn’t match the sample file name, a warning appears when you try to save the automation.

6. If you want Automation Studio to ignore new requests that occur when an automation is running, disable queuing.
7. Click Done.
8. Drag an activity onto the canvas.
9. To view all activities of the selected type, click Choose.
• Search by keyword, name, or external key.
• Sort by columns.
• To see a summary, click an activity.

10. Select an activity or create one.


11. Add and configure more activities as needed.
Activities in the same step can’t share a destination or target data extension.

12. Save and activate the automation.


13. To receive notifications about automation success or failure, on the Activity tab, select Notification Settings and enter an email
address.
14. At the external file location, configure an application to listen for file upload events and fire a trigger API request with the file’s details.
When a trigger API request matches an automation’s criteria, the automation starts.
You can check the status of the trigger API request using the check trigger status API.

13
Marketing Cloud Journeys and Automations Automate Processes in Automation Studio

If you later edit the automation or the activities in it, any active runs are stopped. Future runs of the automation are paused until all
activities are defined and saved.

SEE ALSO:
Create Trigger API Reference
Check Trigger API Reference
Set Up an Amazon Simple Storage Service File Location
Set Up a Google Cloud Storage File Location (Beta)
Set Up a Microsoft Azure Blob Storage File Location
Filename Patterns Reference

FTP and File Drop Automation Example


In this use case, learn how to trigger an automation in Marketing Cloud by dropping a file in an FTP location.
This high-level overview shows the key steps to set up a file drop automation. For more details on each step, such as how to create a
file transfer activity, see the relevant topic links.
1. On your Marketing Cloud FTP site, create a directory inside the Import directory. For this example, the new directory name is NEWDR.
2. In Marketing Cloud Setup, create a file location for the new directory.
• Name the file location and external key. For example, NEWDR File Location.
• Select the Relative location under FTP Site type.
• Enter the path to the new directory. In this example, it's Import\NEWDR. Don't use a leading backslash (\).

3. To import encrypted or compressed files, create a file transfer activity in Automation Studio. Otherwise, skip this step.
• Select the Manage File transfer type.
• Enter the file naming pattern. For example, %%BASEFILENAME_FROM_TRIGGER%%.
• Select the source file location. In this example, it's NEWDR File Location.

4. Create an import file activity.


• Select the new file location. In this example, it's NEWDR File Location.
• Enter the same file naming pattern that’s used in the file transfer activity, if applicable. In this example, it's
%%BASEFILENAME_FROM_TRIGGER%%.txt.

5. Use the new activities to create a file drop automation.


• Select the new directory as the trigger.
• Add the file transfer activity to the first step.
• Add the import activity to the second step.

14
Marketing Cloud Journeys and Automations Automate Processes in Automation Studio

• Save and activate the automation.

SEE ALSO:
Set Up a Marketing Cloud Enhanced FTP or Safehouse File Location
Create a File Transfer Activity in Automation Studio
Import File Activity
Configure a File Drop Automation

Filename Patterns Reference


Review these guidelines for the design of a file naming pattern in Marketing Cloud’s Automation Studio.
You can use filename patterns to set up a file drop automation. These patterns let you designate a naming convention for files dropped
into the Enhanced FTP folder tied to an automation. When you add a file to this folder, Automation Studio reads the filename and runs
the corresponding automation.
When you set up a filename pattern, select an operator to dictate how Automation Studio parses the filename. The available operators
are Contains, Begins With, and Ends With.

Note: Don’t include a file extension in the filename pattern.

Contains tells Automation Studio to look for files whose filename includes the filename pattern before the file extension.

Example: Filename pattern = AUG14


• Files named AUG14import.csv, Update_ AUG14.txt, and NewContactsAUG14profileupdates.zip start this automation.
• Files named AUG 14data.csv, CustomerFiles.AUG14, and DailyJob-Aug-14.txt don’t trigger this automation.

Example: Filename pattern = AUG14


• Files named AUG14import.csv, aug14files.zip, and Aug14098786.txt trigger this automation.
• Files named 1AUG14data.csv, 120814_ AUG14.zip, and _ AUG14.txt don’t trigger this automation.
Use Begins With when Automation Studio is looking for files whose filename starts with the filename pattern.

Example: Filename pattern = AUG14


• Files named ImportAUG14.csv, aug14_listpull_aug14.zip, and usersAug14.txt trigger this automation.
• Files named datapullAUG14_01.csv, listinfoAUG14.run.txt, and Aug14_.zip don’t trigger this automation.
Use Ends With when Automation Studio is looking for files whose filename ends with the filename pattern.

Advanced Run Once


Automation Studio includes options to schedule an automation, run it automatically when a file is dropped, or run an automation once.
Use Advanced Run Once to run only a portion of an automation.
Use Advanced Run Once to run only a portion of the automation, or to restart the automation from an activity that follows an errored
activity. Or fix a single activity that errors and run that activity only. Select an entire step, individual activities, or any combination of steps
and activities. Run a subset of activities you select by clicking Run Once in an automation, then selecting the activities to run.

Considerations
• Only scheduled automations support Advanced Run Once.

15
Marketing Cloud Journeys and Automations Automate Processes in Automation Studio

• The last run's result appears in the right pane. Select the activities to run, then confirm the activities that you want to run before the
automation's run begins.
• Users can select an entire step, individual activities, or any combination of steps and activities.
• To run an entire automation once without selecting or deselecting activities, hover over the automation's name on the Automation
Overview page and click Run Once.
• Notification settings are carried over from the automation-level notification settings.
• Notification Settings are edited on an automation’s Activity tab, not in the Run Once Confirmation modal. Notification email addresses
appear in the modal for reference only.

Note: The hierarchy of statuses is important. Not Selected is an option for Run Once automations only. So if a user sees Completed
status, that could mean that only the selected activities in the step completed. Activities that were not selected did not complete,
or run at all.

Run a Subset of Activities


To run only the Marketing Cloud automation activities you select, click Run Once in Automation Studio, then select the activities to run.
1. To run only the automation activities you select, click Run Once.

2. Select the activities to run.

16
Marketing Cloud Journeys and Automations Schedule an Automation

Tip: Click Select All Activities, then deselect the activities you want to exclude.

Selected activities are shown at left.


3. Click Run.
4. Confirm that the activities you selected are slated to run and that the desired email addresses appear in Notification Settings.
5. Click Run Now.

Schedule an Automation
In a Marketing Cloud automation that’s in draft mode or already running, set the schedule on the Workflow tab.
Setting a schedule is part of defining an automation and is included in new automation setup instructions, too.
1. Open an automation.
2. Click the Workflow tab.
3. If no schedule was set when creating the automation, drag Schedule into the first position on the canvas and click Configure.
4. If a schedule was set, click Edit.
5. After configuring a schedule, save the automation.

Note: After defining the schedule and saving, the automation is paused until you activate it. Run the automation at any time
by clicking Run Once.

6. Click Active.
7. Click Activate.

Automation Duration
When you schedule automations in Marketing Cloud Automation Studio, make sure that the duration and schedule are in sync to
prevent system stability issues.

Automation Duration
When you schedule automations in Marketing Cloud Automation Studio, make sure that the duration and schedule are in sync to prevent
system stability issues.
To ensure system stability, automations that run longer than 24 hours stop when interrupted by the next scheduled occurrence. Check
the expected duration before you schedule automations of this length.

Example:
• You schedule a daily automation to run for 36 hours. When the next instance starts, the previous automation stops and produces
no more data.
• You schedule a weekly automation to run for 36 hours. Because it only runs new instances every 2 days, this automation isn’t
stopped because there is enough time between occurrences.

Use An Automation's Tabs


Gain a more detailed understanding of how a Marketing Cloud automation's tabs work in Automation Studio.

17
Marketing Cloud Journeys and Automations Automation Studio Activities

An automation's tabs display when you define or edit a new automation.


• Defining a new automation prompts the Workflow tab to show.
• Editing an existing automation prompts the Summary tab to display.
• Use the Schedule and Activity tabs to plan and monitor your automations.
Gain a more detailed understanding of an automation's tabs.
• Summary - This tab shows you quick view of what information appears on the other three tabs. That view includes the automation's
scheduled status, if applicable, its activity sequence, and its recent activity. For new automations, click Go to Workflow to begin
creating your automation.
• Workflow - Define your automation in this tab by dragging activities onto the Workflow canvas.
• Schedule - Use this tab to schedule your automation and to see your schedule summary.
• Activity - This tab shows you all the details of the automation's activity, including the last run date and the progress or status of the
activities in each run of the automation. If an error occurs in the automation's run, this tab shows error details and a direct link to the
activity details.

Automation Studio Activities


Easily understand and use the Automation Studio Activities tab in the Marketing Cloud.
In Automation Studio, activities perform specific actions like transferring or extracting data, or sending an email. Activities are the building
blocks of an automation.

18
Marketing Cloud Journeys and Automations Automation Studio Activities

Reusability
Activities are reusable. When you define an activity, you provide information that the activity uses each time it runs.
The Activities page shows all configured activities in one place, including activities used in multiple automations and activities that are
not included in an automation.

Note: Enclose search terms in single quotation marks (') when the search term includes more than one word. For example, use
the search term 'Commercial Seat Data' instead of the search term Commercial Seat Data for best results.

Options
Each activity includes a set of options in its row. The options available depend on the activity type.

Create folders inline. Child folders include more options.

Clicking an activity name opens an expanded view that includes properties and other details about the activity. Use this option to edit
the activity, too.

19
Marketing Cloud Journeys and Automations Automation Studio Activities

For example, clicking an SQL Query activity shows the query itself, the activity properties, and the target data extension.

Start an Automation Studio Activity


Kick off an automation in Automation Studio using the Run Once option in Marketing Cloud.
Send Email Activity
Choose and configure an email message to be sent on its own or as part of one or more automations. You can put it in sequence
with other Automation Studio activities and schedule it for a particular date and time.
Retrieving and Segmenting Data with a SQL Query Activity
Retrieve and unify data across data extensions and system data views with SQL query activities. For example, you can prepare a
subscriber list, view open and send history, or review automation and journey health.
Import File Activity
Use an outside file to update a subscriber list or data extension in Automation Studio. During the process, you also create an import
definition, which establishes import file details and the import activity's behavior while running. The activity uses this import definition
each time it runs.
How to Use the File Transfer Activity in Automation Studio
In Marketing Cloud Automation Studio, you can unzip or decrypt a file found in the Marketing Cloud's Enhanced FTP directory. With
the File Transfer Activity, you can securely transfer files from the Marketing Cloud's secure file transfer location, the Safehouse, to a
selected FTP location.
Script Activity
A Server-Side JavaScript activity contains your Server-Side JavaScript and executes that script when started, either on its own or as
part of an automation in Automation Studio. You provide the Server-Side JavaScript, a name, external key, and description to identify
the activity within the application interface and for API calls.
Filter Activity
Apply the logic of a data filter you select to create a group or data extension in Automation Studio. Filtering subscribers or contacts
makes targeting specific subscribers or contacts based on their attributes and other conditions easier.

20
Marketing Cloud Journeys and Automations Automation Studio Activities

Data Extract Activity


The Automation Studio data extract activity creates one or more zipped files for your use outside the Marketing Cloud application.
It can also be used to convert an XML file into a comma-delimited, tab-delimited, or pipe-delimited file for import into your account.
Verification Activity
Avoid unintended outcomes by verifying the data used in an Automation Studio automation.
Mapping Contacts to Business Unit
Map existing Contacts to selected Business Units to maintain Brand and GEO boundaries while activating segments in Customer
Data Platform.
Automation Studio Activities Reference
Understand all activities available in Marketing Cloud Automation Studio at a glance.
Wait Activity
Wait activities in Automation Studio cause an automation to wait for a specific duration or until a specific time before performing
the next step. You can include one or multiple wait activities in a single automation.
Einstein in Automation Studio
Reach contacts when they’re most likely to engage by using Einstein Send Time Optimization in a Send Email activity. Help your
contacts avoid message fatigue by selecting the right message for each contact at the right time. Message recommendations are
based on saturation levels using Einstein Engagement Frequency in a Send Email activity.

Start an Automation Studio Activity


Kick off an automation in Automation Studio using the Run Once option in Marketing Cloud.
Start or run an activity from the Activities page.
1. In the activity's row, click the arrow to display options.
2. Click Run Once.

Note: This action could impact customers if the activity you start is included in a running automation.

Send Email Activity


Choose and configure an email message to be sent on its own or as part of one or more automations. You can put it in sequence with
other Automation Studio activities and schedule it for a particular date and time.

Tip: Configuring the Send Email Activity creates a Send Definition that can be used in one or more automations.

Note: Send Email activities that were created with classic email editor inside an automation are no longer editable. To edit the
activity, you must replace it. The send definition that each Send Email activity uses for sending is still valid.
1. Click Activities.
2. Click Create Activity.
3. Select Send Email.
4. Click Next.

21
Marketing Cloud Journeys and Automations Automation Studio Activities

5. Select a classic or Content Builder email. Use sorting options to change the order in which emails display.

6. Click Next.
7. Complete the define properties section:
• Activity Name - Enter a name for this email send definition.
• External Key - This unique key is for the API. If a unique key isn’t assigned, the system auto-assigns one.
• Folder - Select a folder in which the send definition resides.
• Description - Enter a brief explanation of the email's content or purpose for your internal use.
• Subject - The subject of the email message sent by this activity. Any changes made to the subject are reflected only in this send.
• Preheader - The text displayed after the subject when an email is previewed.
• From Options:
– Saved Send Classification - Sets a send classification to use for this activity.
– Sender Profile - Determines whether the send uses a different sender profile than indicated in the send classification.
– Overwrite Delivery Profile - Determines whether the send uses a different delivery profile than indicated in the send
classification.

8. Click Next.
9. Complete the select audience section. Audience folders are displayed in the left pane where the root folders represent different
audience types. When you select a folder on the left, individual audience objects appear in the grid. From there, drag your audiences
into the Targeted, Excluded, or Suppressed drop areas.

Note: Test audiences for user-initiated emails aren’t supported in Automation Studio. Editing a user-initiated email with a
test audience in Automation Studio automatically removes the test audience. This removal doesn’t affect the content of the
email. To perform a test send, navigate to Email Studio.

22
Marketing Cloud Journeys and Automations Automation Studio Activities

10. Click Next.


11. Complete the configure delivery section.
• To use Send Time Optimization, select Einstein Send Time Optimization. If your Einstein Send Time Optimization isn’t optimized
yet for your business unit or enterprise, you could have to wait up to 72 hours. If you don’t see information that the content isn’t
optimized, you’re ready to use Einstein Send Time Optimization.

Note: If your organization uses send throttling, you must choose either send throttling or Einstein Send Time Optimization.
You can’t use both. If you check the Einstein Send Time Optimization box, send throttling is automatically turned off for
this send.

• Delivery Window - Select a range of hours during which you want to send your email. A start and end time are required.
• Hourly Threshold - You can also specify how many emails you want to send per hour during that time.

Note: To mitigate performance issues, take processing time into account when you choose your time frame. Estimate
approximately 20 minutes processing time for every million subscribers. For example, if you’re sending to 6 million
subscribers, allow about 2 hours for Einstein to process the best send time for each subscriber.

• Track Clicks.
• Suppress From Send Report.
• Multipart MME - The system sends both HTML and Text version (including the text version you’ve created). The version that the
subscriber's email client accepts is delivered.

12. Click Next.


13. In the Activity Summary section, review configurations from the previous tabs and confirm that the information is correct and ready
to send.
14. Click Finish.

Edit an Inline Email Activity


You cannot edit Send Email activities that were created with classic email editor inside an automation, but you can replace them.
After replacing the email send definition, you can edit it within an automation.
Edit Emails in a Running Automation
To edit the subject line or content of a user-initiated email send in a running automation, update or recreate the email send activity.

SEE ALSO:
Email Messages
Select Audience
Configure Delivery
Review Send

Edit an Inline Email Activity


You cannot edit Send Email activities that were created with classic email editor inside an automation, but you can replace them. After
replacing the email send definition, you can edit it within an automation.
Configuring the Send Email activity creates a send definition that can be used in one or more automations. To edit an email send definition
that was created with the classic email editor, replace the email send definition.

23
Marketing Cloud Journeys and Automations Automation Studio Activities

Note: Email send definitions created with classic Email Studio within an automation continue to send as intended. To edit them,
replace them using these steps.
1. Hover over the Send Email activity in an automation.
2. Click Replace.
3. Locate the same email by name or external key.

Tip: To locate the email, search for the email by name or use sorting options.

4. Open the Send Email activity and save it. This action updates the email send definition so it is editable.
5. To edit the email after replacing it, hover over the Send Email activity, then click Edit.
The activity can be edited within an automation’s workflow.

SEE ALSO:
Email Messages

Edit Emails in a Running Automation


To edit the subject line or content of a user-initiated email send in a running automation, update or recreate the email send activity.

Update an Email Send Activity


1. Edit the email in Email Studio, then navigate to Automation Studio.
2. Find and pause the relevant automation.
The automation is paused and the activity opens on the Activity Summary tab.
3. To edit the Send Email Activity, select Edit/View.
4. Click Select Message.
5. Select a different email and click Next.
A message appears asking if you want to replace your current Subject and Preheader with the following Subject and Preheader from
your newly selected email.
6. Select Keep Existing, and then click Back to return to the email list.
7. Select the updated email and click Next.
A message appears asking if you want to replace your current Subject and Preheader with the following Subject and Preheader from
your newly selected email.
8. Select Replace and click Next until you reach the Activity Summary tab.
9. Confirm that the information is correct and click Finish
10. Save and reactivate the automation.

Recreate an Email Send Activity


1. In Automation Studio, recreate the email send activity with the updated email.
2. Select the relevant email activity in the automatic and click Replace.
The automation is paused.
3. Select the new email activity.
4. Save and reactivate the automation.

24
Marketing Cloud Journeys and Automations Automation Studio Activities

Retrieving and Segmenting Data with a SQL Query Activity


Retrieve and unify data across data extensions and system data views with SQL query activities. For example, you can prepare a subscriber
list, view open and send history, or review automation and journey health.
A query activity is ideal for clean, structured datasets where audiences have already been created. If you want to unify and segment a
large dataset, we recommend using your own internal data warehouse or an application such as Salesforce Customer Data Platform.

Planning Your SQL Query Activity


Consider the data that you want to collect and how you plan to use it. Review our query examples for ideas on how to get started.
• Data Views
• SQL Query Examples

Building Your SQL Query Activity


In Automation Studio, build a SQL query activity that retrieves the data that you’re interested in, and add it to an automation. Then
optimize your query so that it doesn’t time out and fail.
• Build a SQL Query Activity
• Optimizing a SQL Query Activity
• SQL Reference
• Trailhead: Query Data with SQL

Monitoring Query Health


Build SQL query activities and automations to review the health of all your automations, including SQL query activities. You can also set
up email or Slack notifications for automation errors so that you can react quickly to failures.
• Data View: Automation Instance
• Data View: Automation Activity Instance
• Get Automation Studio Notifications

Fixing Failed Queries


Understand why your query failed and then troubleshoot it. If the query timed out, optimize it.
• Automation Studio Errors
• Optimizing a SQL Query Activity
• Restart a Suspended SQL Query Activity

Resources
There are other ways to retrieve data from Marketing Cloud, such as data extracts and API calls. If you want to unify and segment a large
dataset, we recommend checking out Salesforce Customer Data Platform.
• Knowledge Article: Best Practices for Gathering Data in Marketing Cloud
• Data Extract Activity
• Intro to Marketing Cloud APIs
• Trailhead: Automation Studio Activities

25
Marketing Cloud Journeys and Automations Automation Studio Activities

• Build a Customer Data Platform with Salesforce

Build a SQL Query Activity


In Automation Studio, build a SQL query activity that retrieves the data that you’re interested in, and then add it to an automation.
Optimizing a SQL Query Activity
SQL query activities time out after 30 minutes. You can prevent timeouts and failures by optimizing your SQL query activities. If your
query consistently runs longer than 10 minutes, we recommend using a different tool, such as Salesforce Customer Data Platform,
to transform your data.
Use Intermediate Tables to Optimize a Query
Split large queries into smaller components to use with Automation Studio’s query activity.
Data Views
Query data views using Automation Studio for up to six months of Marketing Cloud subscriber and journey information.
SQL Query Examples
Learn how to build effective SQL queries in Automation Studio by following use cases.
SQL Reference
Get SQL query information for Automation Studio’s SQL Query activity at a glance.
Restart a Suspended SQL Query Activity
When a SQL Query activity encounters a system error or fails 24 consecutive times, we suspend it. To find out why your query is
suspended, check the action log.

Build a SQL Query Activity


In Automation Studio, build a SQL query activity that retrieves the data that you’re interested in, and then add it to an automation.
Before you begin, create a data extension to store the query results.
1. Click Activities.
2. Click Create Activity.
3. Select SQL Query.
4. Enter query properties, such as name, external key, and description.
5. Click Next.
6. Write a SQL query.
• To see data extensions in your account that you can query, click a folder.
• To add all columns from a data extension, double-click the data extension or drag it into the query. Remove the extra comma
that appears after the final column name.
• To add a single column, double-click the column name or drag it into the query. Remove the extra comma that appears after
the column name.
• You can’t include both a JOIN and a SELECT * statement. Instead, write a statement that specifies each column name,
even when there are multiple columns.

Important: Don’t enter column names manually, because the SQL query activity can’t identify the associated data extension.
Always double-click or drag columns from the data extension list.

7. To test the query, click Validate Syntax.


8. Click Next.

26
Marketing Cloud Journeys and Automations Automation Studio Activities

9. Choose a target data extension to store the query results. The target can’t be a data extension that you used in the query.
10. Select how the query activity writes data to the target data extension.
• Append—New data is added to the end of the target data extension. Existing data isn’t updated.
• Update—Matching data in the target data extension is updated. New data without a match is added to the end of the target
data extension.
• Overwrite—All existing data is deleted from the target data extension and replaced with new data.

11. Save the activity.


12. Start or run the activity from the Activities page or include it in an automation.
The query’s output is stored in the target data extension. You can view the results of each query’s run in the activity’s action log.

Optimizing a SQL Query Activity


SQL query activities time out after 30 minutes. You can prevent timeouts and failures by optimizing your SQL query activities. If your
query consistently runs longer than 10 minutes, we recommend using a different tool, such as Salesforce Customer Data Platform, to
transform your data.
Review these guidelines for tips, tricks, and general information that you can use to optimize your SQL queries.

Primary Keys
Use primary keys as unique identifiers for your dataset.
Field Length and Data Type
Consider the field length and the type of data that you’re retrieving.
Data Quantity and Retention
To improve performance, limit the quantity of data in your queries and data extensions.
Searchable Arguments (SARGable Queries)
Searchable arguments, also known as SARGable queries, are operators that can use indexes. To make your query run faster, use
searchable arguments when possible.
Concurrent Activities
Concurrent activity occurs when multiple processes attempt to access the same data at the same time, which can cause queries to
fail or time out. For example, two processes simultaneously attempt to write to the same dataset, or a process is actively writing to
a dataset that another process attempts to read.
Data Staging
You can stage your data by dividing a large query with multiple joins into small queries that are more performant. This method is
especially effective for long-running queries that could otherwise time out.

Primary Keys
Use primary keys as unique identifiers for your dataset.
• Be strategic when designating a field as a primary key. Having too many primary keys defeats the purpose of a unique identifier and
decreases performance.
• Marketing Cloud improves performance by automatically indexing primary keys, sendable relationship fields, and your other most-used
fields. But you don’t need to designate fields as primary keys to force indexing. Overusing primary keys slows inserts into data
extensions from queries, APIs, and other processes.

27
Marketing Cloud Journeys and Automations Automation Studio Activities

• To analyze multiple datasets, use the same primary key field in each data extension that you want to link. Then join the data extensions
using the primary key field.

Field Length and Data Type


Consider the field length and the type of data that you’re retrieving.
• When defining the field length, keep the length to how many characters are needed. For example, if the field is a two-digit state
code, limit the column length to 2 characters instead of the default 50.
• Avoid using the data types nvarchar (max) and varchar (max).
• When storing data, less is more. Only store data that’s critical to your process and to the specific table.
• We recommend limiting row widths to 4,000 characters or fewer.
• Only join columns of the same data type.
• Use the same data type for columns that match in the source and target data extensions.

Data Quantity and Retention


To improve performance, limit the quantity of data in your queries and data extensions.
• Use a SQL query when working with a clean, structured dataset where audiences have already been created. If you want to unify
and segment a large dataset, we recommend using your own internal data warehouse or an application, such as Salesforce Customer
Data Platform.
• Don’t use a SQL query for large tasks like copying data between data extensions. Instead, use a data extension extract with an import
activity in Automation Studio.
• If you have a data extension with a large quantity of data, divide it into multiple data extensions that are related through foreign
keys.
• Only query as much data as you need. For example, if you need only 24 hours of data, don’t retrieve 30 days of data.
• Only retrieve data that has changed since the last query. For example, use a Modified Date field to limit your query.
• Store frequently changing data in a separate data extension. When you make requests for this data or update the data extension,
avoid running other automations or requests at the same time.
• If you notice performance issues with a data extension in which several columns were previously deleted, rebuild the data extension.
To rebuild, create a new data extension and use a query activity to transfer data from the old extension to the new extension.
• Use data retention settings to specify how long your account retains data.
• When building a query, choose the most performant way to write data for your use case.
– Append is typically best for event logs and other use cases where you need only the most recent data.
– Overwrite is the most performant option for most other use cases.
– Update is typically the least performant option and can significantly extend your query time.

Searchable Arguments (SARGable Queries)


Searchable arguments, also known as SARGable queries, are operators that can use indexes. To make your query run faster, use searchable
arguments when possible.
• Don’t use these non-searchable arguments in a WHERE clause.
– OR
– NOT
– <

28
Marketing Cloud Journeys and Automations Automation Studio Activities

– >
– NOT EXISTS
– NOT IN
– NOT LIKE
– Intrinsic functions that operate on a column value
Here are some examples of non-searchable intrinsic functions that can be rewritten into searchable arguments.

Non-Searchable Argument Searchable Argument

AND datediff(day, convert(DATE, AND calculated_subscription_start_dtm >=


calculated_subscription_start_dtm), DATEADD(DAY, -26, CAST(GETDATE() AS DATE))
GetDate()) = 26 AND calculated_subscription_start_dtm <
DATEADD(DAY, -25, CAST(GETDATE() AS DATE))

WHERE convert(DATE, gsl.SendDate) >= WHERE gsl.SendDate >= DATEADD(DAY, -10,


convert(DATE, dateadd(dd, - 10, CAST(GETUTCDATE() AS DATE))
GETUTCDATE())) AND gsl.SendDate < DATEADD(DAY, -9,
CAST(GETUTCDATE() AS DATE))

• Use SELECT DISTINCT only when duplicate data exists in multiple data extensions.
• When using SELECT TOP, also use ORDER BY to avoid unpredictable results.
• Specify columns by name instead of using SELECT *. When using SELECT *, the query activity parser caches the columns
that exist when the query is saved. If you add another column in the future, it isn’t automatically included.
• SQL Server isn’t case-sensitive, so don’t use the LOWER function.

Concurrent Activities
Concurrent activity occurs when multiple processes attempt to access the same data at the same time, which can cause queries to fail
or time out. For example, two processes simultaneously attempt to write to the same dataset, or a process is actively writing to a dataset
that another process attempts to read.
• Prevent timeouts and performance issues by limiting query activities to one query per step of an automation.
• Prevent concurrent activity by staggering your automations and creating dedicated datasets for your processes.
• The majority of automations are scheduled on the hour. Improve performance by scheduling your automations at other times, such
as 8:30 instead of 8:00.

Data Staging
You can stage your data by dividing a large query with multiple joins into small queries that are more performant. This method is especially
effective for long-running queries that could otherwise time out.
• Use multiple small queries to gather data from different data extensions and write that data to holding tables.
• After all the small queries have run, use a final query to unite the data from the holding tables.
For an example, see Use Intermediate Tables to Optimize a Query.

29
Marketing Cloud Journeys and Automations Automation Studio Activities

Use Intermediate Tables to Optimize a Query


Split large queries into smaller components to use with Automation Studio’s query activity.
This page demonstrates how a single query can be divided into multiple more efficient queries. In the following example, a query
designed to find Opens in the last 30 days based on an EmailID consistently times out.

Note: The following code is an example of a poorly executing query. Do not copy and paste the following code to use in a query
activity.
Select
j.JobID,
j.EmailName,
j.DeliveredTime as SendTime,
o.EventDate as OpenTime,
s.EmailAddress,
s.SubscriberKey
from [_Job] j
join [_Open] o
on j.JobID = o.JobID
join [_Subscribers] s
on o.SubscriberID = s.SubscriberID
where
o.IsUnique = 1 and
j.EmailID = 123456

One likely reason this query times out is that it tries to retrieve data from multiple sources in one query. To ensure that this query
consistently returns data in a timely manner, divide it into four smaller queries on separate, consecutive steps of your automation. Use
these instructions to set up four data extensions and corresponding queries called Jobs, Opens, Subscriber and a Target Data Extension
to unite and store the data retrieved by the preceding queries.

Create a Jobs Table Data Extension


1. Create a data extension.
2. Select standard data extension.

Data Extension Name JobTable

External Key JobTable

Fields

Name Data Type Length Primary Key Nullable Default Value


JobID Number

EmailName Text 100

DeliveredTime Date

30
Marketing Cloud Journeys and Automations Automation Studio Activities

Create a Query Activity to Populate the Job Table

Query Name JobTable

External Key JobTable

Query Syntax
j.JobID,
j.EmailName,
j.DeliveredTime,
from [_Job] j
where
j.EmailID = 123456

Target Data Extension Name JobTable

Data Action Overwrite

Create an Opens Data Extension


1. Create a data extension.
2. Select standard data extension.

Data Extension Name OpenTable

External Key OpenTable

Fields

Name Data Type Length Primary Key Nullable Default Value


JobID Number

SubscriberID Number

OpenTime Date

Create an Opens Query Activity

Query Name OpenTable

External Key OpenTable

Query Syntax
o.JobID,
o.SubscriberID,

31
Marketing Cloud Journeys and Automations Automation Studio Activities

o.EventDate,
from [_Open] o
where
o.IsUnique = 1
and j.EmailID = 123456

TargetData Extension OpenTable

Data Action Overwrite

Create a Subscriber Data Extension


1. Create a data extension.
2. Select standard data extension.

Target Data Extension Name SubscriberTable

External Key SubscriberTable

Fields

Name Data Type Length Primary Key Nullable Default Value


SubscriberID Number

EmailAddress EmailAddress 100

SubscriberKey Text 100

Set Up a Subscriber Query Activity

Query Name SubscriberTable

External Key SubscriberTable

Query Syntax
s.SubscriberID,
s.EmailAddress,
s.SubscriberKey
from [_Subscribers] s

Target Data Extension SubscriberTable

Data Action Overwrite

32
Marketing Cloud Journeys and Automations Automation Studio Activities

Create a Data Extension to Store Opens Data


1. Create a data extension.
2. Select standard data extension.

Target Data Extension OpensIn30Days

External Key OpensIn30Days

Fields

Name Data Type Length Primary Key Nullable Default Value


JobID Number

EmailName Text 100

SendTime Date

OpenTime Date

EmailAddress EmailAddress 100

SubscriberKey Text 100

Create a Query to Send Opens Data to Target Data Extension

Query Name OpensIn30Days

External Key OpensIn30Days

Query Syntax
Select
j.JobID,
j.EmailName,
j.DeliveredTime as SendTime,
o.EventDate as OpenTime,
s.EmailAddress,
s.SubscriberKey
from [JobTable] j
join [OpenTable] o
on j.JobID = o.JobID
join [SubscriberTable] s
on o.SubscriberID = s.SubscriberID

Target Data Extension OpensIn30Days

Update Type Overwrite

33
Marketing Cloud Journeys and Automations Automation Studio Activities

Data Views
Query data views using Automation Studio for up to six months of Marketing Cloud subscriber and journey information.
When you create an SQL Query activity, you write the SQL statement that defines the query. You can write the query against a data
extension or the data views provided in the system. Click and open tracking data displays in Central Standard Time, does not observe
Daylight Savings Time, and is rounded to the nearest second.

Note: When profile attributes are created in Enterprise 2.0 accounts, new columns are added to the _EnterpriseAttribute table.
Data view queries in Enterprise 2.0 accounts can return results from profile attribute columns in addition to the columns listed
here.

Note: If Add subscribers to this list is not selected for a triggered send, some data is not available at the enterprise level.
Enterprise-level data views don't include sends, opens, clicks, unsubscribes, Forward To A Friend data, and bounces. You can find
this data by querying data views in the sender's Marketing Cloud account.

Note: Some data views allow you to retrieve more than six months’ data. However, queries returning large data sets can take
longer to process and can impact system performance.

Data View: Automation Instance


Get a big-picture view of all automations within a tenant, and improve the efficiency and success rate of your automations by
reviewing automation health. Query the _AutomationInstance data view in Automation Studio to prevent failures by identifying
long-running processes and fix failed automations by addressing the cause of failure.
Data View: Automation Activity Instance
Improve the efficiency and success rate of your automations by reviewing automation activity health. Query the
_AutomationActivityInstance data view in Automation Studio to prevent failures by identifying activities that often fail or run long.
Data View: Bounce
To view bounce data for emails from your Marketing Cloud account, query the _bounce data view in Automation Studio.
Data View: BusinessUnitUnsubscribes
To find subscribers in your account and their child business unit unsubscribe data, use the _BusinessUnitUnsubscribes data view in
Marketing Cloud Automation Studio. You can only run the data view on the parent account only and not on child business units.
Data View: Click
Query this data view in Automation Studio to view click data for emails from your Marketing Cloud account.
Data View: Complaint
Query this data view in Automation Studio to view complaints data related to emails from your Marketing Cloud account.
Data View: Coupon
View data regarding coupons used in your Marketing Cloud account by querying the _Coupon data view in Automation Studio.
Data View: EnterpriseAttribute
Query this data view in Automation Studio to view subscribers in your Enterprise Marketing Cloud account and their profile attributes.
Data View: FTAF
Query this data view in Automation Studio to view behavioral information related to email messages from your Marketing Cloud
account that were forwarded to friends.
Data View: GroupConnect Contact Subscriptions
To view active LINE followers and users who have blocked your brand, you can query GroupConnect data view in Automation Studio.
With Contact Subscriptions, customers can view their current subscribers each day.

34
Marketing Cloud Journeys and Automations Automation Studio Activities

Data View: GroupConnect MobileLineOrphanContactView


If an import has multiple ContactKeys for the same LINE Address ID in GroupConnect Contact Import, the system keeps one ContactKey.
The remaining ContactKeys are orphaned. To view orphaned contacts, you can query the MobileLineOrphanContactView data view
in Automation Studio.
Data View: Job
Query this data view in Automation Studio to find data on Marketing Cloud email send jobs.
Data View: Journey
Find a journey's status, created and last modified date, and other general journey information using this Journey Builder data view.
Data View: Journey Activity
Use this data view to join to the email tracking system data views. Also use it to identify the Triggered Send Definition associated to
an email activity in a Marketing Cloud journey and more.
Data View: ListSubscribers
Query this data view in Automation Studio to find subscribers on lists in your Marketing Cloud account. This view includes subscribers
found on the Triggered Send Managed List.
Data View: Open
Query this data view in Automation Studio to find email opens for your Marketing Cloud account.
Data View: Sent
Query this data view in Automation Studio to find the subscribers sent emails from your Marketing Cloud account.
Data View: SMSMessageTracking
Query this data view in Automation Studio to find message tracking information from Marketing Cloud MobileConnect SMS sends.
This data view allows customers to view their send and receive history. Information from this query relates to the owner of a private
short code or long code. Query information can also relate to a client using a shared short code to which the subscriber has opted
in.
Data View: Social Network Impressions
Query this data view in Automation Studio to find data on content shared from your Marketing Cloud sends via Social Forward.
Data View: Social Network Tracking
Query this data view in Automation Studio to find tracking data on content shared from your Marketing Cloud sends via Social
Forward.
Data View: Subscribers
Query this data view in Automation Studio to find subscribers in your Marketing Cloud account and their statuses.
Data View: SMSSubscriptionLog
Query this data view in Automation Studio to find subscription log information from Marketing Cloud MobileConnect SMS sends.
For example, view a history of all mobile numbers subscribed to a keyword.
Data View: SurveyResponse
Query this data view in Automation Studio to find responses to surveys sent from your Marketing Cloud account.
Data View: Undeliverable SMS
Query this data view in Automation Studio to find failed message deliveries to Marketing Cloud MobileConnect subscribers.
Data View: Unsubscribe
Query this data view in Automation Studio to find unsubscribes from email lists in your Marketing Cloud account.

35
Marketing Cloud Journeys and Automations Automation Studio Activities

Data View: Automation Instance


Get a big-picture view of all automations within a tenant, and improve the efficiency and success rate of your automations by reviewing
automation health. Query the _AutomationInstance data view in Automation Studio to prevent failures by identifying long-running
processes and fix failed automations by addressing the cause of failure.

What This Data View Shows


• Automations that ran recently
• When an automation ran
• The duration of an automation
• Whether an automation succeeded, skipped, or failed
• The reason an automation failed
• The file that was being processed when a triggered automation failed

What You Need to Know

How to activate the data view Available by default

When data is available Data in this view is on a 24-hour delay

How much data is available Data for automations that ran during the past 1 through 31 days

Data view scope Single business unit

Time zone UTC

Questions That You Can Answer


Which Automations Failed Yesterday?
Identify problems with your automations and prevent future failures by reviewing automations that failed yesterday.
SELECT automationcustomerkey
FROM [_automationinstance]
WHERE automationinstancestatus = 'Error'
AND automationinstanceendtime_utc >= Dateadd(day, -2, Getutcdate())

Which Automations Completed Yesterday?


Confirm that the automations that you expected to run yesterday successfully completed.
SELECT automationcustomerkey
FROM [_automationinstance]
WHERE automationinstancestatus = 'Complete'
AND automationinstanceendtime_utc >= Dateadd(day, -2, Getutcdate())

Which Automations Skipped Yesterday?

36
Marketing Cloud Journeys and Automations Automation Studio Activities

Skipped instances are a warning that an automation could be unhealthy, for example, there isn’t enough time between scheduled
automations. Or, there were multiple instances of the same file drop automation queued when a running instance was stopped. Use
this query to identify automations that were skipped yesterday, and decide whether to take action.
SELECT automationcustomerkey
FROM [_automationinstance]
WHERE automationinstancestatus = 'Skipped'
AND automationinstanceendtime_utc >= Dateadd(day, -2, Getutcdate())

What is the Average Duration of Each Automation?


Track the average performance of your automations to find trends and investigate problems before they impact critical processes. If an
automation is slowing down over time, you can investigate the root cause and take corrective action. Use this query to determine each
automation’s average duration over the past 1 through 31 days.
SELECT automationcustomerkey,
Avg(Datediff(minute, automationinstancestarttime_utc,
automationinstanceendtime_utc)) AS AvgDuration
FROM [_automationinstance] automation
GROUP BY automationcustomerkey

Data View Columns

Name Description DataType Data Nullable


Extension
Data Type
MemberID The unique ID of the business unit. BIGINT Number

AutomationName The automation name. NVARCHAR(400) Text

AutomationDescription The automation description. NVARCHAR(400) Text X

AutomationCustomerKey The unique ID of the automation. NVARCHAR(400) Text

AutomationType The automation’s starting source. Possible VARCHAR(9) Text


values are Schedule, File Drop, or Trigger.

AutomationNotificationRecipient_Complete The email address where notifications NVARCHAR(500) Text X


about completed automations are sent.

AutomationNotificationRecipient_Error The email address where notifications NVARCHAR(500) Text X


about automation errors are sent.

AutomationNotificationRecipient_Skip The email address where notifications NVARCHAR(500) Text X


about skipped automations are sent.

AutomationStepCount The number of steps in the automation. INT Number

AutomationInstanceID The unique ID of the automation run. UNIQUEIDENTIFIER Text

AutomationInstanceIsRunOnce Whether the automation was set to run BIT Boolean


once. 1 = true, 0 = false.

FilenameFromTrigger For file drop and trigger automations, the NVARCHAR(4000) Text X
file that started the automation.

37
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description DataType Data Nullable


Extension
Data Type
AutomationInstanceScheduledTime_UTC For scheduled automations, the time that DATETIMEOFFSET Date X
the run was scheduled to begin.

AutomationInstanceStartTime_UTC The time that the automation run started. DATETIMEOFFSET Date X
This value is null if the automation was
skipped.

AutomationInstanceEndTime_UTC The time that the automation run ended. DATETIMEOFFSET Date X
This value is null if the automation was
skipped or is still running.

AutomationInstanceStatus The status of the automation run when NVARCHAR(400) Text


the data view is queried. Possible values
are QueuedFile, Initialized, Executing,
Stopped, Complete, or Error.

AutomationInstanceActivityErrorDetails The message from the error log, if NVARCHAR(4000) Text X


applicable. If a system or unclassified error
occurs, the value is System Error. If
multiple errors occur, only the first
message is displayed. To get details on
multiple errors, use the
_AutomationActivityInstance view.

Data View: Automation Activity Instance


Improve the efficiency and success rate of your automations by reviewing automation activity health. Query the
_AutomationActivityInstance data view in Automation Studio to prevent failures by identifying activities that often fail or run long.

What This Data View Shows


• Activities that ran in an automation
• When an activity ran
• The duration of an activity
• Whether an activity succeeded or failed
• The reason an activity failed

What You Need to Know

How to activate the data view Available by default

When data is available Data in this view is on a 24-hour delay

How much data is available Data for automations that ran in the last 1 through 31 days

Data view scope Single business unit

38
Marketing Cloud Journeys and Automations Automation Studio Activities

Time zone UTC

Questions That You Can Answer


Which Automations Are Failing and Why?
Identify the cause of automation errors to prevent future failures. An automation error can be categorized as a configuration error or
system error.
• A configuration error occurs because an activity or dependency isn’t set up correctly. For example, if a file transfer activity is looking
for a file named test.csv and the file doesn’t exist. Modify your automation or its dependencies to solve a configuration error.
• A system error is more general and often temporary. For example, if a server runs out of memory or a connection fails. In many cases,
you don’t need to change your automation to solve a system error, and you can run the automation again.
Use this query to find activities that failed because of a configuration error. Check the error message to learn how you can address the
error.
SELECT activitycustomerkey
FROM [_automationactivityinstance]
WHERE activityinstancestatus = 'Error'
AND activityinstancestatusdetails LIKE 'System Error occurred%'

Use this query to find activities that failed because of a system error. Retry the associated automation.
SELECT activitycustomerkey
FROM [_automationactivityinstance]
WHERE activityinstancestatus = 'Error'
AND activityinstancestatusdetails NOT LIKE 'System Error occurred%'

Which Activities Are at Risk of Timing Out?


Proactively identify long-running activities that are approaching the 30-minute time limit.
Use this query to find query activities with an average duration greater than 20 minutes. Optimize the query activity, or break it up into
multiple steps.
SELECT activitycustomerkey,
avgduration
FROM (SELECT activitycustomerkey,
Avg(Datediff(minute, activityinstancestarttime_utc,
activityinstanceendtime_utc)
) AS AvgDuration
FROM [_automationactivityinstance] activity
WHERE activity.activitytype = 300
GROUP BY activitycustomerkey) durations
WHERE avgduration > 20

Use this query to find SSJS activities with an average duration greater than 20 minutes. Optimize the SSJS activity, or break it up into
multiple steps.
SELECT activitycustomerkey,
avgduration
FROM (SELECT activitycustomerkey,
Avg(Datediff(minute, activityinstancestarttime_utc,
activityinstanceendtime_utc)
) AS AvgDuration

39
Marketing Cloud Journeys and Automations Automation Studio Activities

FROM [_automationactivityinstance] activity


WHERE activity.activitytype = 150
GROUP BY activitycustomerkey) durations
WHERE avgduration > 20

What is the Average Duration of Each Activity?


Track the average performance of your activities to find trends and investigate problems before they impact critical processes. Use this
query to determine each activity’s average duration over the past 1 through 31 days.
SELECT activitycustomerkey,
Avg(Datediff(minute, activityinstancestarttime_utc,
activityinstanceendtime_utc)
) AS AvgDuration
FROM [_automationactivityinstance] activity
GROUP BY activitycustomerkey

Data View Columns

Name Description DataType Data Nullable


Extension
Data Type
MemberID The unique ID of the business unit. BIGINT Number

AutomationName The automation name. NVARCHAR(400) Text

AutomationCustomerKey The unique ID of the automation. NVARCHAR(400) Text

AutomationInstanceID The unique ID of the automation run. UNIQUEIDENTIFIER Text

ActivityType The activity type. Possible values are listed INT Number
in the Activity Type IDs table.

ActivityName The activity name. NVARCHAR(400) Text

ActivityDescription The activity description. NVARCHAR(400) Text X

ActivityCustomerKey The unique ID of the activity. NVARCHAR(400) Text

ActivityInstanceStep Where the activity occurs in the VARCHAR(25) Text


automation. For example, 3.2 is step 3,
activity 2.

ActivityInstanceID The unique ID of the activity run. UNIQUEIDENTIFIER Text

ActivityInstanceStartTime_UTC The time that the activity run started. This DATETIMEOFFSET Date X
value is null if the automation was
skipped.

ActivityInstanceEndTime_UTC The time that the activity run ended. This DATETIMEOFFSET Date X
value is null if the automation was
skipped, is still running, or wasn’t selected
as part of an Advanced Run Once.

40
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description DataType Data Nullable


Extension
Data Type
ActivityInstanceStatus The status of the activity run when the NVARCHAR(256) Text
data view is queried. Possible values are
Initialized, Executing, Complete, Error, or
NotSelected.

ActivityInstanceStatusDetails The message from the error log, if NVARCHAR(4000) Text X


applicable. If a system or unclassified error
occurs, the value is System Error.

Activity Type IDs

Activity Type ID Activity Name


33 SMS Activity

42 Send Email

43 Import File

45 Refresh Group

53 File Transfer

73 Data Extract

84 Report Definition

300 SQL Query

303 Filter

423 Script

425 Data Factory Utility Activity

426 Refresh Segment Template

427 Publish Audience

467 Wait

724 Refresh Mobile Filtered List

725 Send SMS

726 Import Mobile Contacts

733 Journey Builder Event Activity

736 Send Push

749 Fire Event

771 Salesforce Email Send

41
Marketing Cloud Journeys and Automations Automation Studio Activities

Activity Type ID Activity Name


772 Mobile Connect Send Salesforce Sync Subscriber

783 Send GroupConnect

952 Journey Builder Event Activity

1000 Verification

1010 Interaction Studio Data

1101 Interactions

1701 Batch Personalization

3700 Contact to Business Unit Mapping

Data View: Bounce


To view bounce data for emails from your Marketing Cloud account, query the _bounce data view in Automation Studio.
View bounce data for emails from your account by querying the _bounce data view. Records dating back six months from the day the
query runs are available.
Dates and times are stored in Central Standard Time. Daylight Savings Time isn’t observed. To view time-related data in your time zone,
set time zone user preferences.

Note: When profile attributes are created in Enterprise 2.0 accounts, new columns are added to the _EnterpriseAttribute table.
Data view queries in Enterprise 2.0 accounts can return results from profile attribute columns in addition to the columns listed
here.

Note: Data returned for some fields exceeds their character limit. When querying nvarchar fields, use left() function to limit the
number of characters to fit the field length in the target data extension.

Example: left(smtpbouncereason, 4000) left(smtpbouncereason, 4000)

Columns

Name Description DataType Data Nullable


Extension
Data Type
AccountID Your account ID number int Number

OYBAccountID The account ID number for any related int Number X


On-Your-Behalf accounts. This field
applies to enterprise accounts only.

JobID The job ID number for the email send bigint Number

ListID The list ID number for the list used in the int Number
send

BatchID The batch ID number for any batches bigint Number


used in the send

42
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description DataType Data Nullable


Extension
Data Type
SubscriberID The subscriber ID for the affected int Number
subscriber. This number represents the
unique ID for each subscriber record.

SubscriberKey The subscriber key for the affected nvarchar(254) Text


subscriber. This serves as the primary key.

EventDate The date the bounce took place datetime Date

IsUnique Whether the event is unique or repeated bit Boolean

Domain The domain at which the bounce varchar(128) Text


occurred

BounceCategoryID The ID number for the bounce category smallint Number

BounceCategory The category of the bounce nvarchar(50) Text X

BounceSubcategoryID The ID number for the bounce smallint Number X


subcategory

BounceSubcategory The subcategory of the bounce nvarchar(50) Text X

BounceTypeID The ID number for the bounce type smallint Number

BounceType The type of bounce that occurred nvarchar(50) Text X

SMTPBounceReason The reason for the bounce relayed by the nvarchar(max) Text X
mail system

SMTPMessage The message regarding the bounce from nvarchar(max) Text X


the mail system

SMTPCode The error code for the bounce from the smallint Number X
mail system

TriggererSendDefinitionObjectID The object ID for the triggered send varchar(36) Text X


definition

TriggeredSendCustomerKey The customer key for the triggered send nvarchar(36) Text X

Data View: BusinessUnitUnsubscribes


To find subscribers in your account and their child business unit unsubscribe data, use the _BusinessUnitUnsubscribes data view in
Marketing Cloud Automation Studio. You can only run the data view on the parent account only and not on child business units.
Marketing Cloud stores the dates and times in Central Standard Time. Daylight Savings Time isn’t observed. To view time-related data
in your time zone, set time zone user preferences.

Columns
SubscriberID and SubscriberKey columns are indexed.

43
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description DataType Data Nullable


Extension
Data
Type
BusinessUnitID The Account ID for the Business Unit (BU). bigint Number

SubscriberID The subscriber ID for the affected bigint Number


subscriber. This number represents the
unique ID for each subscriber record.

SubscriberKey A potential alternate identifier for varchar(254) Text


subscribers. Defaults to the value of Email
Address.

UnsubDateUTC The date the subscriber unsubscribed from smalldatetime Date X


messages sent by BU.

UnsubReason The reason listed is a custom value varchar(100) Text X


configured by your administrator.

Data View: Click


Query this data view in Automation Studio to view click data for emails from your Marketing Cloud account.
View clicks for links in emails sent from your account by querying the _Click data view. Records dating back six months from the day
the query runs are available.
Dates and times are stored in Central Standard Time. Daylight Savings Time is not observed. To view time-related data in your time zone,
set time zone user preferences.

Note: When profile attributes are created in Enterprise 2.0 accounts, new columns are added to the _EnterpriseAttribute table.
Data view queries in Enterprise 2.0 accounts can return results from profile attribute columns in addition to the columns listed
here.

Name Description DataType Data Nullable


Extension
Data
Type
AccountID The account ID number of the Marketing int Number
Cloud account.

OYBAccountID The account ID number for any related int Number X


On-Your-Behalf (OYB) accounts. This field
applies to enterprise accounts only.

JobID The job ID number for the email send bigint Number

ListID The list ID number for the list used in the int Number
send

BatchID The batch ID number for any batches used bigint Number
in the send

44
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description DataType Data Nullable


Extension
Data
Type
SubscriberID The subscriber ID for the affected int Number
subscriber. This number represents the
unique ID for each subscriber record.

SubscriberKey The subscriber key for the affected nvarchar(254) Text


subscriber

EventDate The date the click took place datetime Date

Domain The domain at which the click occurred varchar(128) Text

URL The URL for the link clicked. No AMPscript varchar(900) Text X
or variables are populated in this column,
for example,
www.example.com?%%attribute%%

LinkName The link name assigned in the email send varchar(1024) Text X

LinkContent The link content assigned in the email send. varchar(max) Text X
AMPscript and variables are populated in
this column, such as
www.example.com?12345

IsUnique Whether the event is unique or repeated

Note: The IsUnique value is true


when any link is first clicked in a
JobID by a subscriber. Any clicks
afterwards are false even if different
URLs.

TriggererSendDefinitionObjectID The object ID for the triggered send uniqueidentifier Text X


definition

TriggeredSendCustomerKey The customer key for the triggered send varchar(36) Text X

SEE ALSO:
External Link: Add Subscribers to an On-Your-Behalf Account

Data View: Complaint


Query this data view in Automation Studio to view complaints data related to emails from your Marketing Cloud account.
View data regarding spam complaints from subscribers about email sends from your account by querying the _Complaint data view.
Records dating back six months from the day the query runs are available.
Dates and times are stored in Central Standard Time. Daylight Savings Time isn’t observed. To view time-related data in your time zone,
set time zone user preferences.

45
Marketing Cloud Journeys and Automations Automation Studio Activities

Note: When profile attributes are created in Enterprise 2.0 accounts, new columns are added to the _EnterpriseAttribute table.
Data view queries in Enterprise 2.0 accounts can return results from profile attribute columns in addition to the columns listed
here.

Columns

Name Description DataType Data Nullable


Extension
Data Type
AccountID Your account ID number int Number

OYBAccountID The account ID number for any related int Number X


On-Your-Behalf (OYB) accounts. This field
applies to enterprise accounts only.

JobID The job ID number for the email send bigint Number

ListID The list ID number for the list used in the int Number
send

BatchID The batch ID number for any batches bigint Number


used in the send

SubscriberID The subscriber ID for the affected int Number


subscriber. This number represents the
unique ID for each subscriber record.

SubscriberKey The subscriber key for the affected nvarchar(254) Text


subscriber

EventDate The date the complaint took place datetime Date

IsUnique Whether the event is unique or repeated bit Boolean

Domain The domain at which the complaint varchar(128) Text


occurred

Data View: Coupon


View data regarding coupons used in your Marketing Cloud account by querying the _Coupon data view in Automation Studio.

Note: To use this data view, you must use live content in Content Builder Block SDK. Learn more in the Trailhead Module: Content
Builder Block SDK.
Dates and times are stored in Central Standard Time. Daylight Savings Time isn’t observed. To view time-related data in your time zone,
set time zone user preferences.

Note: When profile attributes are created in Enterprise 2.0 accounts, new columns are added to the _EnterpriseAttribute table.
Data view queries in Enterprise 2.0 accounts can return results from profile attribute columns in addition to the columns listed
here.

46
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description DataType Data Nullable


Extension
Data Type
Name Name of your coupon nvarchar(128) Text

ExternalKey The external key used to refer to your nvarchar(36) Text


coupon via the API

Description Description of your coupon varchar Text

BeginDate The date the coupon becomes valid datetime Date

ExpirationDate The date the coupon becomes invalid datetime Date

Data View: EnterpriseAttribute


Query this data view in Automation Studio to view subscribers in your Enterprise Marketing Cloud account and their profile attributes.
View subscribers in your Enterprise account and their profile attributes by querying the _EnterpriseAttribute data view.

Note: This data view is for Enterprise 2.0 clients only. When profile attributes are created in Enterprise 2.0 accounts, new columns
are added to the _EnterpriseAttribute table. Data view queries in Enterprise 2.0 accounts can return results from profile attribute
columns in addition to the columns listed here.

Note: This data view is only available in the Parent account and can't be used in a business unit.

Note: Preference attributes, such as HTML Email, aren't available in this data view

Columns
The _subscriberID field is an indexed field.

Name Description DataType Data Nullable


Extension
Data Type
_SubscriberID The subscriber ID for the affected bigint Number
subscriber. This number represents the
unique ID for each subscriber record
stored.

Data View: FTAF


Query this data view in Automation Studio to view behavioral information related to email messages from your Marketing Cloud account
that were forwarded to friends.
View behavioral information related to email messages from your account that were forwarded to friends (FTAF) by querying the _FTAF
data view. Records dating back six months from the day the query runs are available.
Dates and times are stored in Central Standard Time. Daylight Savings Time is not observed. To view time-related data in your time zone,
set time zone user preferences.

47
Marketing Cloud Journeys and Automations Automation Studio Activities

Note: When profile attributes are created in Enterprise 2.0 accounts, new columns are added to the _EnterpriseAttribute table.
Data view queries in Enterprise 2.0 accounts can return results from profile attribute columns in addition to the columns listed
here.

Name Description DataType Data Nullable


Extension
Data
Type
AccountID Your account ID number int Number

OYBAccountID The account ID number for any related int Number X


On-Your-Behalf accounts and applies to
enterprise accounts only.

JobID The job ID number for the email send int Number

ListID The list ID number for the list used in the int Number
send

BatchID The batch ID number for any batches used int Number
in the send

SubscriberID The subscriber ID for the affected int Number


subscriber. This number represents the
unique ID for each subscriber record.

SubscriberKey The subscriber key for the affected nvarchar(254) Text


subscriber

TransactionTime The date the forward took place datetime Date

Domain The domain at which the forward occurred varchar(128) Text

IsUnique Whether the event is unique or repeated bit Boolean

TriggererSendDefinitionObjectID The object ID for the triggered send uniqueidentifier Text X


definition

TriggeredSendCustomerKey The customer key for the triggered send varchar(36) Text X

Data View: GroupConnect Contact Subscriptions


To view active LINE followers and users who have blocked your brand, you can query GroupConnect data view in Automation Studio.
With Contact Subscriptions, customers can view their current subscribers each day.
Prerequisites: Enable the business rule SYSTEM_DATA_VIEWS on your account and set it to 1. Your account is checked upon load of
the GroupConnect app, and if it doesn't exist, it’s created. To access this view for the first time, a user or admin within the Business Unit
must navigate to the GroupConnect channel app. This step triggers the creation of the view.
Follow these steps to view LINE follower information.
1. In Contact Builder, create a data extension with the fields in the data view and add a column of NowDate with type Date.
2. In Automation Studio, create an automation and add a SQL query.

48
Marketing Cloud Journeys and Automations Automation Studio Activities

3. Within the SQL Query activity, query the _MobileLineAddressContactSubscriptionView data view and select the target data extension
you created in the first step. Example: Select convert(varchar, getDate(), 20) as NowDate,* from
_MobileLineAddressContactSubscriptionView.

Tip: All times listed are Central Standard Time.

Tip: To track LINE followers who have blocked your channel, compare daily lists to look for users who are no longer listed.

Columns

Name Description DataType Data Nullable


Extension
Data Type
ChannelID Channel ID of LINE account nvarchar Text

ContactID Marketing Cloud ContactId (system bigint Number


generated) linked to LINE UID

ContactKey Marketing Cloud contact key (system nvarchar Text


generated) linked to LINE UID

AddressID LINE UID nvarchar Text

IsActive Active flag: (1 = true, 0 = false) bit Number

CreatedDate Date and time record created (CST). datetime Date


Date the customer started following
LINE account.

ModifiedDate Date and time record modified (CST) datetime Date X

Data View: GroupConnect MobileLineOrphanContactView


If an import has multiple ContactKeys for the same LINE Address ID in GroupConnect Contact Import, the system keeps one ContactKey.
The remaining ContactKeys are orphaned. To view orphaned contacts, you can query the MobileLineOrphanContactView data view in
Automation Studio.
1. In Contact Builder, create a data extension with the fields in the data view and add a column of NowDate with type Date.
2. In Automation Studio, create an automation and add a SQL query.
3. Within the SQL Query activity, query the _MobileLineOrphanContactView data view and select the target data extension you created
in the first step. Example: Select convert(varchar, getDate(), 20) as NowDate, * from
_MobileLineOrphanContactView..

49
Marketing Cloud Journeys and Automations Automation Studio Activities

Columns

Name Description DataType Data Nullable


Extension
Data Type
ContactID Marketing Cloud ContactId (system bigint Number
generated) linked to LINE UID

ContactKey ContactKey is either nvarchar Text


system-generated or provided by user
during import. Linked to LINE UID

AddressID LINE UID nvarchar Text

CreatedDate Date and time record created (CST). datetime Date


Date the customer started following
LINE account.

Data View: Job


Query this data view in Automation Studio to find data on Marketing Cloud email send jobs.
View email send jobs from your account by querying the _Job data view.
Dates and times are stored in Central Standard Time. Daylight Savings Time isn’t observed. To view time-related data in your time zone,
set time zone user preferences.

Note: When profile attributes are created in Enterprise 2.0 accounts, new columns are added to the _EnterpriseAttribute table.
Data view queries in Enterprise 2.0 accounts can return results from profile attribute columns in addition to the columns listed
here.

Note: The Job data view provides results for all email send jobs in your current business unit. The data view doesn’t categorize
the results by send method.
JobID is an indexed field.

Name Description DataType Data Nullable


Extension
Data
Type
JobID The job ID number for the email send int Number

EmailID The email ID for the job int Number X

AccountID The ID number for the account that int Number X


performed the job

AccountUserID The ID number for the account user that int Number X
performed the job

FromName The from name in the email send nvarchar(130) Text X

FromEmail The from email address in the email send varchar(100) Email X

SchedTime The time the job was scheduled smalldatetime Date X

50
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description DataType Data Nullable


Extension
Data
Type
PickupTime The time the Marketing Cloud application smalldatetime Date X
started the job

DeliveredTime The time the email was delivered smalldatetime Date X

EventID The ID for the job event varchar(50) Text X

IsMultipart Whether the job was sent as multipart bit Boolean


MIME or not

JobType The type of job varchar(50) Text X

JobStatus The status of the job varchar(50) Text X

ModifiedBy If modified, the user who modified the job int Number X

ModifiedDate The date the job was modified datetime Date X

EmailName The name of the email sent by the job char(100) Text X

EmailSubject The subject of the email send nchar(200) Text X

IsWrapped Whether the links in the email were bit Boolean


wrapped for tracking

TestEmailAddr The test email address used in the job varchar(128) Email X

Category The job category varchar(100) Text

BccEmail Any email address send in the BCC field varchar(100) Email X

OriginalSchedTime The original scheduled time for the job smalldatetime Date X

CreatedDate The date the job was created smalldatetime Date

CharacterSet The character set used in the job varchar(30) Text X

IPAddress This value is always null. varchar(50) Text X

SalesForceTotalSubscriberCount The total number of Salesforce subscribers int Number


included in the job

SalesForceErrorSubscriberCount The total number of Salesforce subscribers int Number


included in the job that received errors

SendType The type of send used in the job varchar(128) Text

DynamicEmailSubject The dynamic email subject included in the ntext Text X


job

SuppressTracking If tracking information for this job was bit Boolean


suppressed

SendClassificationType The send classification type for the job nvarchar(32) Text X

51
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description DataType Data Nullable


Extension
Data
Type
SendClassification The send classification for the job nvarchar(36) Text X

ResolveLinksWithCurrentData If the job resolved links with current data bit Boolean

EmailSendDefinition The email send definition used in the job nvarchar(36) Text X

DeduplicateByEmail Whether the email addresses in the job are bit Boolean
used to deduplicate subscribers

TriggererSendDefinitionObjectID The object ID for the triggered send uniqueidentifier null X


definition

TriggeredSendCustomerKey The customer key for the triggered send varchar(36) Text X

Data View: Journey


Find a journey's status, created and last modified date, and other general journey information using this Journey Builder data view.
View data about your Journey Builder journeys using the _Journey System Data View.
Dates and times are stored in Central Standard Time. Daylight Savings Time is not observed. To view time-related data in your time zone,
set time zone user preferences.

Note: When profile attributes are created in Enterprise 2.0 accounts, new columns are added to the _EnterpriseAttribute table.
Data view queries in Enterprise 2.0 accounts can return results from profile attribute columns in addition to the columns listed
here.

Name Description DataType Data Nullable


Extension
Data
Type
VersionID The unique identifier for the version of the uniqueidentifier(36) Text
journey

JourneyID The unique identifier for the journey. There uniqueidentifier(36) Text
are one or more VersionID’s associated to
a JourneyID.

JourneyName The name of the journey nvarchar(200) Text

VersionNumber The version number of the version of the int Number


journey

CreatedDate The date that the version of the journey datetime Date
was created

LastPublishedDate The date that the version of the journey datetime Date X
was last published

52
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description DataType Data Nullable


Extension
Data
Type
ModifiedDate The date that the version of the journey datetime Date
was last edited

JourneyStatus The current running mode of the journey. nvarchar(100) Text


Possible values are Draft, Running,
Finishing, and Stopped.

Data View: Journey Activity


Use this data view to join to the email tracking system data views. Also use it to identify the Triggered Send Definition associated to an
email activity in a Marketing Cloud journey and more.
View data about activities included in your Journey Builder journeys using the _JourneyActivity data view.
Dates and times are stored in Central Standard Time. Daylight Savings Time is not observed. To view time-related data in your time zone,
set time zone user preferences.

Note: JourneyActivityObjectID corresponds to TriggererSendDefinitionObjectID in the _Sent, _Open, _Click, and _Bounce, data
views.

Note: When profile attributes are created in Enterprise 2.0 accounts, new columns are added to the _EnterpriseAttribute table.
Data view queries in Enterprise 2.0 accounts can return results from profile attribute columns in addition to the columns listed
here.

Name Description DataType Data Nullable


Extension
Data
Type
VersionID The unique identifier for the version of the uniqueidentifier(36) Text
journey

ActivityID The unique identifier for the activity. There uniqueidentifier(36) Text
are one or more ActivityID’s associated to
a VersionID.

ActivityName The name of the activity nvarchar(200) Text X

ActivityExternalKey The external key associated with the activity nvarchar(200) Text

JourneyActivityObjectID Use this unique identifier to join to email uniqueidentifier(36) Text X


tracking system data views to identify a
journey email’s Triggered Send Definition.

ActivityType The type of activity nvarchar(512) Text X

53
Marketing Cloud Journeys and Automations Automation Studio Activities

Data View: ListSubscribers


Query this data view in Automation Studio to find subscribers on lists in your Marketing Cloud account. This view includes subscribers
found on the Triggered Send Managed List.
View subscribers on lists in your account by querying the _ListSubscribers data view.
Dates and times are stored in Central Standard Time. Daylight Savings Time is not observed. To view time-related data in your time zone,
set time zone user preferences.

Note: When profile attributes are created in Enterprise 2.0 accounts, new columns are added to the _EnterpriseAttribute table.
Data view queries in Enterprise 2.0 accounts can return results from profile attribute columns in addition to the columns listed
here.
ListID and SubscriberID are indexed fields.

Name Description DataType Data Nullable


Extension
Data
Type
AddedBy The ID of the user who ran the process that int Number
added the subscriber

AddMethod The method by which the subscriber was varchar(17) Text


added, including Unspecified, Webcollect,
API, FTAF, Import, Move Copy, Application,
Salesforce, Segmentation, Generic
Extension, and Custom Object

CreatedDate The date the subscriber was added to the smalldatetime Date X
list

DateUnsubscribed The date the subscriber unsubscribed smalldatetime Date X

EmailAddress The subscriber's email address nvarchar(254) Text X

ListID The list ID number for the list used in the int Number X
send

ListName The name of the list containing the varchar(50) Text X


subscribers

ListType Shows whether the type is list or group varchar(16) Text


• Publication list
• Suppression list
• List
• Group
• FTAF list
• Unknown

Status The status of the subscriber varchar(12) Text X

54
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description DataType Data Nullable


Extension
Data
Type
SubscriberID The subscriber ID for the affected int Number X
subscriber. This number represents the
unique ID for each subscriber record.

SubscriberKey The subscriber key for the affected nvarchar(254) Text X


subscriber

SubscriberType The type of subscriber varchar(100) Text X

Data View: Open


Query this data view in Automation Studio to find email opens for your Marketing Cloud account.
View email opens for your account by querying the _Open data view. Records dating back six months from the day the query runs are
available.
Dates and times are stored in Central Standard Time. Daylight Savings Time is not observed. To view time-related data in your time zone,
set time zone user preferences.

Note: When profile attributes are created in Enterprise 2.0 accounts, new columns are added to the _EnterpriseAttribute table.
Data view queries in Enterprise 2.0 accounts can return results from profile attribute columns in addition to the columns listed
here.

Columns

Name Description DataType Data Nullable


Extension
Data
Type
AccountID Your account ID number int Number

OYBAccountID The account ID number for any related int Number X


On-Your-Behalf accounts. This field applies
to enterprise accounts only.

JobID The job ID number for the email send int Number

ListID The list ID number for the list used in the int Number
send

BatchID The batch ID number for any batches used int Number
in the send

SubscriberID The subscriber ID for the affected int Number


subscriber. This number represents the
unique ID for each subscriber record.

55
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description DataType Data Nullable


Extension
Data
Type
SubscriberKey The subscriber key for the affected nvarchar(254) Text
subscriber

EventDate The date the open took place datetime Date

Domain The domain at which the open occurred varchar(128) Text

IsUnique Whether the event is unique or repeated bool Boolean X

TriggererSendDefinitionObjectID The object ID for the triggered send varchar(36) Text X


definition

TriggeredSendCustomerKey The customer key for the triggered send varchar(36) Text X

Data View: Sent


Query this data view in Automation Studio to find the subscribers sent emails from your Marketing Cloud account.
View subscribers who were sent emails from your account by querying the _Sent data view. Records dating back six months from the
day the query runs are available.
Dates and times are stored in Central Standard Time. Daylight Savings Time is not observed.

Note: When profile attributes are created in Enterprise 2.0 accounts, new columns are added to the _EnterpriseAttribute table.
Data view queries in Enterprise 2.0 accounts can return results from profile attribute columns in addition to the columns listed
here.

Columns

Name Description DataType Data Nullable


Extension
Data Type
AccountID Your account ID number int Number

OYBAccountID The account ID number for any related int Number X


On-Your-Behalf accounts. This field
applies to enterprise accounts only.

JobID The job ID number for the email send int Number

ListID The list ID number for the list used in the int Number
send

BatchID The batch ID number for any batches int Number


used in the send

SubscriberID The subscriber ID for the affected int Number


subscriber. This number represents the
unique ID for each subscriber record.

56
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description DataType Data Nullable


Extension
Data Type
SubscriberKey The subscriber key for the affected nvarchar(254) Text
subscriber

EventDate The date the send took place datetime Date

Domain The domain at which the send occurred varchar(128) Text

TriggererSendDefinitionObjectID The object ID for the triggered send varchar(36) Text X


definition

TriggeredSendCustomerKey The customer key for the triggered send varchar(36) Text X

Data View: SMSMessageTracking


Query this data view in Automation Studio to find message tracking information from Marketing Cloud MobileConnect SMS sends. This
data view allows customers to view their send and receive history. Information from this query relates to the owner of a private short
code or long code. Query information can also relate to a client using a shared short code to which the subscriber has opted in.
View message tracking information about MobileConnect SMS sends in your business unit by querying the _smsmessagetracking data
view.

Tip: Dates and times are stored in Central Standard Time. Daylight Savings Time isn’t observed. To view time-related data in your
time zone, set time zone user preferences.

Note: When profile attributes are created in Enterprise 2.0 accounts, new columns are added to the _EnterpriseAttribute table.
Data view queries in Enterprise 2.0 accounts can return results from profile attribute columns in addition to the columns listed
here.

Note: Code and keyword values are currently represented as a static GUID.

Identify the name of the SMS message that you want to check on the MobileConnect Overview page.
1. To retrieve the MessageID, click the message name.
2. On the message Overview page, note the URL:
3. Copy the Base64 encoded text.
4. Use an online Base64 decoder to decode the Base64 encoded text.
5. The result appears in this format: 65:78:0 5. Based on this result,the MessageID for this message is 65.

Example: Sample URL: https://mc.s10.exacttarget.com/cloud/#app/MobileConnect/Mobile/%23!/message/view/NjU6Nzg6MA


Sample Base64 encoded text: NjU6Nzg6MA

Note: There are some cases where MobileConnect has no subscriber ID. For example, if a net new number texts STOP, a contact
isn’t created, but a record is logged.

Note: For shared codes, the delivery statuses shown in this data view only confirms delivery to the aggregator via the status code
of 2000. The shared codes delivery receipts are returned to the Marketing Cloud account that owns the code.

Note: Use the _SMSSubscriptionLog data view for Unsub, OptIn, and OptOut data.

57
Marketing Cloud Journeys and Automations Automation Studio Activities

Columns

Name Description Data Type Data Nullable


Extension
Data Type
MobileMessageTrackingID Unique ID for tracking information bigint Number
related to the sent message

EID Enterprise ID number for the sender bigint Number X

MID Member ID bigint Number X

Mobile Mobile number for the subscriber varchar(15) Phone

MessageID Mobile message ID int Number

KeywordID Unique identifier for the keyword unique Text X


identifier

CodeID Unique identifier for the SMS code unique Text X


identifier

ConversationID Unique identifier for the SMS unique Text X


conversation identifier

CampaignID The SMS campaign tied to the record int Number X

Sent If the message was sent (1 = true, 0 tinyint Boolean


= false)

Delivered If the message was delivered (1 = Boolean X


true, 0 = false)

Undelivered Whether the message was delivered bit Boolean X


successfully or not (1 = true, 0 = false)

Outbound If the message was outgoing (1 = bit Boolean X


true, 0 = false)

Inbound If the message was incoming (1 = bit Boolean X


true, 0 = false)

CreateDateTime The date and time the tracking record smalldatetime Date and
was created time

ModifiedDateTime The date and CST time the tracking smalldatetime Date and
record was modified time

ActionDateTime The actual date and time a delivery smalldatetime Date and
or non-delivery event was received Time
by the Marketing Cloud.

Note: Timestamps for


delivery receipts aren’t
indicative of when a message
was received on a handset.

58
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description Data Type Data Nullable


Extension
Data Type

The SMS industry doesn’t


support read receipts, and the
data returned in this view are
based on when a delivery
receipt is returned to our
system.

MessageText The text of the message nvarchar(160) Text X

IsTest If the message was a test message bit Boolean X

MobileMessageRecurrenceID The ID of the recurrence schedule for bigint Number X


the message. Can be used for
troubleshooting send issues.

ResponseToMobileMessageTrackingID The tracking ID of the response to the bigint Number X


message

IsValid If the message is valid bit Boolean X

InvalidationCode Invalidation code for the message smallint Number X

SendID The send ID number for the SMS send bigint Number X

SendSplitID If the message was split, the ID of the bigint Number X


split

SendSegmentID The ID of the segment tied to the bigint Number X


message

SendJobID The job ID for the SMS send bigint Number X

SendGroupID The group ID for the SMS send bigint Number X

SendPersonID The sendperson ID for the SMS send bigint Number X

SubscriberID The subscriber ID for the affected bigint Number X


subscriber. This number represents
the unique ID for each subscriber
record

SubscriberKey The subscriber key for the affected nvarchar(254) Text X


subscriber

SMSStandardStatusCodeId SFMC delivery status code int Number X

Description Detailed description of the status nvarchar Text X


code

Name The name of your message nvarchar Text X

59
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description Data Type Data Nullable


Extension
Data Type
ShortCode The short code or long code used to nvarchar Text X
send your message

Note: The ShortCode column


isn’t populated for inbound
and MT sends. View the
associated code in the CodeID
column instead.

SharedKeyword The keyword used in your message nvarchar Text X

Ordinal Represents the parts in a multi-part tinyint Number X


message. Represented in ascending
order starting at 0.

FromName From Name that an individual nvarchar Text X


message was deployed with.
Maximum length: 11 characters

JBActivityID Unique identifier for the journey unique Text X


activity the message was deployed identifier
from

JBDefinitionID Unique identifier for the journey a unique Text X


message was deployed from identifier

SEE ALSO:
Review Undelivered Messages
Data View: SMSSubscriptionLog
Knowledge Article: Description of the fields in _SMSMessageTracking dataview that return NULL values

Data View: Social Network Impressions


Query this data view in Automation Studio to find data on content shared from your Marketing Cloud sends via Social Forward.
View impression data on content shared from your sends via Social Forward by querying the _SocialNetworkImpressions data view.
Dates and times are stored in Central Standard Time. Daylight Savings Time is not observed. To view time-related data in your time zone,
set time zone user preferences.

Note: When profile attributes are created in Enterprise 2.0 accounts, new columns are added to the _EnterpriseAttribute table.
Data view queries in Enterprise 2.0 accounts can return results from profile attribute columns in addition to the columns listed
here.

60
Marketing Cloud Journeys and Automations Automation Studio Activities

Columns

Name Description Data Type Data Extension Type Nullable


JobID The job ID number for the bigint Number
email send

ListID The list ID number for the int Number


list used in the send

RegionTitle The title of the region varchar Text


shared via Social Forward

RegionDescription The description of the varchar Text X


region shared via Social
Forward

RegionHTML The HTML associated varchar Text


with the social forward
region

ContentRegionID The ID of the shared int Number


content region

SocialSharingSiteID The ID of the social int Number


network involved in the
sharing of the content
region

SiteName The name of the social varchar Text


network involved in the
sharing of the content
region

CountryCode The country code for the varchar Text


social network involved
in the sharing of the
content region

ReferringURL The referring URL used in varchar Text X


the Social Forward
activity

IPAddress The IP address for the URL varchar(50) Text X


from which the content
region was shared.

TransactionTime The time at which the datetime Date


content area was shared

PublishedSocialContentStatusID The status ID for the varchar Text


published social content

ShortCode The short code for the varchar Text


published social content

61
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description Data Type Data Extension Type Nullable


status, which is Active,
Inactive, or Deleted

PublishTime The time the social datetime Date


content area was
published

SEE ALSO:
Social Forward

Data View: Social Network Tracking


Query this data view in Automation Studio to find tracking data on content shared from your Marketing Cloud sends via Social Forward.
View tracking data on content shared from your sends via Social Forward by querying the _SocialNetworkTracking view.
Dates and times are stored in Central Standard Time. Daylight Savings Time is not observed. To view time-related data in your time zone,
set time zone user preferences.

Note: When profile attributes are created in Enterprise 2.0 accounts, new columns are added to the _EnterpriseAttribute table.
Data view queries in Enterprise 2.0 accounts can return results from profile attribute columns in addition to the columns listed
here.

Columns

Name Description Data Type Data Extension Type Nullable


SubscriberID The subscriber ID for the int Number
affected subscriber. This
number represents the
unique ID for each
subscriber record.

SubscriberKey The subscriber key for the nvarchar(254) Email


affected subscriber

ListID The list ID number for the int Number


list used in the send

BatchID The batch ID number for bigint Number


any batches used in the
send

SocialSharingSiteID The ID of the social int Number


network used to share
the content region

SiteName The name of the social varchar Text


network involved in the

62
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description Data Type Data Extension Type Nullable


sharing of the content
region

CountryCode The country code for the varchar Text


social network involved
in the sharing of the
content region

PublishedSocialContentID The ID number for the varchar Text


content area published
via Social Forward

RegionTitle The title of the region varchar Text


shared via Social Forward

RegionDescription The description of the varchar Text X


region shared via Social
Forward

RegionHTML The HTML associated varchar Text X


with the social forward
region

ContentRegionID The ID of the shared varchar Text X


content region

OYBMemberID The ID number for any int Number X


On-Your-Behalf (OYB)
account involved in the
sharing of the content
area

TransactionTime The time at which the datetime Date


content area was shared

IsUnique Whether the event is bit Boolean


unique or not

Domain The domain from which varchar Text


the content was shared

PublishedSocialContentStatusID The status ID for the varchar Text


published social content

ShortCode The short code for the varchar Text


published social content
status, which is Active,
Inactive, or Deleted

63
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description Data Type Data Extension Type Nullable


PublishTime The time the social datetime Date
content area was
published

SEE ALSO:
Social Forward

Data View: Subscribers


Query this data view in Automation Studio to find subscribers in your Marketing Cloud account and their statuses.
View email subscribers in your account and their statuses by querying the _Subscribers data view. Subscriber attributes aren’t available.
This data view only returns results at the Enterprise level, and not for business units.
Dates and times are stored in Central Standard Time. Daylight Savings Time isn’t observed. To view time-related data in your time zone,
set time zone user preferences.

Note: When profile attributes are created in Enterprise 2.0 accounts, new columns are added to the _EnterpriseAttribute table.
Data view queries in Enterprise 2.0 accounts can return results from profile attribute columns in addition to the columns listed
here.

Columns
The SubscriberID, EmailAddress, and SubscriberKey columns are indexed.

Name Description DataType Data Nullable


Extension
Data Type
SubscriberID The subscriber ID for the affected bigint Number
subscriber. This number represents the
unique ID for each subscriber record.

DateUndeliverable The date an email for the subscriber was smalldatetime Date X
returned as undeliverable

DateJoined The date the subscriber joined your list smalldatetime Date X

DateUnsubscribed The date the subscriber unsubscribed smalldatetime Date X


from your list

Domain The domain of the subscriber nvarchar(254) Text X

EmailAddress The subscriber's email address nvarchar(254) Email

BounceCount The total number of bounces accrued by smallint Number


the subscriber

SubscriberKey A potential alternate identifier for nvarchar(254) Text


subscribers. Defaults to the value of Email
Address.

64
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description DataType Data Nullable


Extension
Data Type
SubscriberType The subscriber type for the affected varchar(100) Text
subscriber
• 0 = ExactTarget (Marketing Cloud),
Salesforce Lead, Salesforce Contact
• 3 = Unknown External System
(Triggered Send Hidden Manage List)
• 4 = MS CRM Contact
• 5 = MS CRM Lead
• 6 = MS CRM Account

Status The status of the subscriber: active, held, varchar(12) Text X


unsubscribed, or bounced.

Locale The locale code for the subscriber int Locale X

Data View: SMSSubscriptionLog


Query this data view in Automation Studio to find subscription log information from Marketing Cloud MobileConnect SMS sends. For
example, view a history of all mobile numbers subscribed to a keyword.
View subscription log information about SMS sends in MobileConnect by querying the _SMSSubscriptionLog data view. Information
from this query relates to the owner of a private short code or long code or a client using a shared short code to which the subscriber
has opted in. This data view shows more than 6 months of data.

Tip: Dates and times are stored in Central Standard Time. Daylight Savings Time isn’t observed. To view time-related data in your
time zone, set time zone user preferences.

Note: When profile attributes are created in Enterprise 2.0 accounts, new columns are added to the _EnterpriseAttribute table.
Data view queries in Enterprise 2.0 accounts can return results from profile attribute columns in addition to the columns listed
here.
Code and keyword values are currently represented as a static GUID.
There are some cases where MobileConnect doesn’t have a subscriber ID. For example, if a net new number texts STOP, a contact
isn’t created, but a record is logged.

Columns

Name Description DataType Data Nullable


Extension
Data Type
LogDate The date the subscription is logged datetime Date X

SubscriberKey The subscriber key for the affected nvarchar Text


subscriber

65
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description DataType Data Nullable


Extension
Data Type
MobileSubscriptionID The unique ID of the subscription bigint Number
record

SubscriptionDefinitionID The unique keyword ID unique Text


identifier

MobileNumber Mobile number for the subscriber nvarchar Phone

OptOutStatusID Whether the subscriber has opted out tinyint Number X


of SMS messages. See key for values.

OptOutMethodID Method the subscriber used to opt tinyint Number X


out of SMS messages. See key for
values.

OptOutDate Date the subscriber opted out of SMS date Date X


messages

OptInStatusID Whether the subscriber has opted in tinyint Number


to SMS message. See key for values.

OptInMethodID Method the subscriber used to opt in bit Number X


to SMS messages. See key for values.

OptInDate Date the subscriber opted in to SMS date Date X


messages

Source The subscription source tinyint Number X

CreatedDate Date the message was created date Date

ModifiedDate Date the message was modified date Date

Note: The SubscriberKey field is populated if the MobileNumber matches a record in the All Contacts List in Contact Builder.

OptOutStatusID Key
NotOptedOut = 0
OptedOut = 1
DeletingNotOptedOut = 10
DeletingOptedOut = 11
OptOutMethodID Key

Note: The OptOutMethod ID tracks 4 (import), 6 (application), 14 (CustomStopKeyword), 15 (suppression), or 18


(GlobalStopKeyword) opt-out methods only, but can track other methods in the future.

Note: When a NULL value is returned, this value indicates that a subscriber texted an opt-out keyword

0 = Unspecified

66
Marketing Cloud Journeys and Automations Automation Studio Activities

1 = WebCollect
2 = API
3 = FTAF
4 = Import
5 = MoveCopy
6 = Application
7 = SalesForce
8 = Segmentation
9 = GenericExtension
10 = CustomObject
11 = RMM
13 = ServiceFeedback
14 = MobileOriginated (CustomStopKeyword)
15 = ContactsSuppression
18 = MobileOriginated (GlobalStopKeyword)
OptInStatusID Key
NotOptedIn = 0
OptInPending = 1
OptedIn = 2
DeletingNotOptedIn = 10
DeletingOptInPending = 11
DeletingOptedIn = 12
OptInMethodID Key
0 = Unspecified
1 = WebCollect
2 = API
3 = FTAF
4 = Import
5 = MoveCopy
6 = Application
7 = SalesForce
8 = Segmentation
9 = GenericExtension
10 = CustomObject
11 = RMM
12 = Mobile Opt-In

67
Marketing Cloud Journeys and Automations Automation Studio Activities

13 = DeviceRegistration
MobileAddressStatus Key
UNSPECIFIED = 0
1 = Webcollect
2 = API
3 = FTAF
4 = Import
5 = MoveCopy
6 = Manual
7 = SalesForce
8 = Segmentation
9 = GenericExtension
10 = CustomObject
11 = FacebookAPI
12 = SmartCapture
13 = MobileOptIn

SEE ALSO:
Review Undelivered Messages

Data View: SurveyResponse


Query this data view in Automation Studio to find responses to surveys sent from your Marketing Cloud account.
View responses to surveys sent from your account by querying the _SurveyResponse data view. Records dating back six months from
the day the query runs are available.
Dates and times are stored in Central Standard Time. Daylight Savings Time is not observed. To view time-related data in your time zone,
set time zone user preferences.

Note: When profile attributes are created in Enterprise 2.0 accounts, new columns are added to the _EnterpriseAttribute table.
Data view queries in Enterprise 2.0 accounts can return results from profile attribute columns in addition to the columns listed
here.

Columns

Name Description DataType Data Nullable


Extension
Data
Type
AccountID Your account ID number int Number

OYBAccountID The account ID number for any related int Number X


On-Your-Behalf accounts. This field applies
to enterprise accounts only.

68
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description DataType Data Nullable


Extension
Data
Type
JobID The job ID number for the email send int Number

ListID The list ID number for the list used in the int Number
send

BatchID The batch ID number for any batches used int Number
in the send

SubscriberID The subscriber ID for the affected int Number


subscriber. This number represents the
unique ID for each subscriber record.

SubscriberKey The subscriber key for the affected nvarchar(254) Text


subscriber

EventDate The date the survey response took place datetime Date

Domain The domain at which the survey response varchar(128) Text


occurred

SurveyID The ID of the survey int Number

SurveyName The name of the survey varchar(100) Text

IsUnique Whether the response is unique or not int Number

QuestionID The ID of the survey question int Number

QuestionName The name of the survey question varchar(50) Text

Question The survey question varchar(4000) Text

AnswerID The ID of the answer int Number

AnswerName The name of the answer varchar(4000) Text X

Answer The Boolean answer to the survey question varchar(4000) Text X

AnswerData The text content of the survey answer nvarchar(max) Text X

Data View: Undeliverable SMS


Query this data view in Automation Studio to find failed message deliveries to Marketing Cloud MobileConnect subscribers.
View information about failed message deliveries to MobileConnect subscribers by querying the _UndeliverableSms data view. Information
from this query relates to the owner of a private short code or long code, or a client using a shared short code to which the subscriber
has opted in.
Dates and times are stored in Central Standard Time. Daylight Savings Time isn’t observed. To view time-related data in your time zone,
set time zone user preferences.

69
Marketing Cloud Journeys and Automations Automation Studio Activities

Note: When profile attributes are created in Enterprise 2.0 accounts, new columns are added to the _EnterpriseAttribute table.
Data view queries in Enterprise 2.0 accounts can return results from profile attribute columns in addition to the columns listed
here.

Columns

Name Description DataType Data Nullable


Extension
Data
Type
MobileNumber Mobile number for the subscriber varchar(15) Phone

Undeliverable Indicates that the number is Held and that bit Boolean
MobileConnect discontinued sending
messages to the subscriber

BounceCount Number of bounced SMS messages for smallint Number


subscriber

FirstBounceDate The date when the first bounce occurred datetime Date

HoldDate The date when MobileConnect datetime Date X


discontinued sending messages to the
subscriber

SEE ALSO:
Bounced Messages and Held Numbers
Review Undelivered Messages

Data View: Unsubscribe


Query this data view in Automation Studio to find unsubscribes from email lists in your Marketing Cloud account.
View unsubscribes from email lists in your account by querying the _Unsubscribe data view. Records dating back six months from the
day the query runs are available.
Dates and times are stored in Central Standard Time. Daylight Savings Time is not observed. To view time-related data in your time zone,
set time zone user preferences.

Note: When profile attributes are created in Enterprise 2.0 accounts, new columns are added to the _EnterpriseAttribute table.
Data view queries in Enterprise 2.0 accounts can return results from profile attribute columns in addition to the columns listed
here.

Columns

Name Description DataType Data Nullable


Extension
Data Type
AccountID Your account ID number int Number

70
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description DataType Data Nullable


Extension
Data Type
OYBAccountID The account ID number for any related int Number x
On-Your-Behalf accounts. This field
applies to enterprise accounts only.

JobID The job ID number for the email send bigint Number

ListID The list ID number for the list used in the int Number
send

BatchID The batch ID number for any batches bigint Number


used in the send

SubscriberID The subscriber ID for the affected int Number


subscriber. This number represents the
unique ID for each subscriber record.

SubscriberKey The subscriber key for the affected nvarchar(254) Text


subscriber

EventDate The date the unsubscribe took place datetime Date

IsUnique Whether the event is unique or repeated bit Boolean

Domain The domain at which the unsubscribe varchar(128) Text


occurred

SEE ALSO:
Lists without Enhanced Subscriber Features in Marketing Cloud

SQL Query Examples


Learn how to build effective SQL queries in Automation Studio by following use cases.

Note:
• To use these examples, you need a working knowledge of SQL.
• These examples aren’t comprehensive. Be creative, combine use cases, and check out the Trailhead and Stack Exchange
communities for more ideas.
• You can copy and paste the code samples, but you must configure them for your setup.
• Data views are covered in a separate, adjacent section of the documentation.

Query: Bounce History


Find a history of individual bounce responses, and identify how to resolve them.
Query: Journey Builder Bounced Email Messages
Create a list of contacts to send direct mailers to, based on bounced email messages from Journey Builder.

71
Marketing Cloud Journeys and Automations Automation Studio Activities

Query: Journey Builder Sends by Email Across Versions


Aggregate all Journey Builder email sends across multiple versions of the same journey. Or, modify this query to find opens, clicks,
bounces, complaints, or unsubscribes across versions during a specific time frame.
Query: Journey Builder Sends in Last 24 Hours
Find subscribers who were sent an email from a journey in Journey Builder within the last 24 hours. Or, modify this query to find
opens, clicks, bounces, complaints, or unsubscribes for an email from Journey Builder during a specific time frame.
Query: Opens in Last 30 Days
Find all unique opens for a specific email over the last 30 days. Or, modify this query to find sends, clicks, bounces, complaints, or
unsubscribes for an email during a specific time frame.
Query: Subscriber Status
Find subscribers on a list and their statuses. Or, find only subscribers with a specific status, such as active or unsubscribed.
Query: Subscribers by Date or Time Frame
Find subscribers who were added within a specific date or range of dates.
Query: Subscribers in a Publication or Suppression List
Find subscribers who were placed on a publication or suppression List. Or, find only subscribers on the list with a specific status,
such as active or unsubscribed. If you have problems retrieving suppression list data, contact Salesforce Customer Support to activate
this feature.
Query: Subscribers with No Opens or Clicks
Find subscribers who haven’t opened or clicked an email. Use this query for jobs with fewer than 500,000 subscribers. For larger
jobs, use intermediate tables.
Query: Top Bounces for a Job
Find the top bounces by percentage for a specific job. Use this query for jobs with fewer than 5,000,000 subscribers.

Query: Bounce History


Find a history of individual bounce responses, and identify how to resolve them.

Before You Begin


To use this example, you need a working knowledge of SQL. You can copy and paste the code samples, but you must configure them
for your setup.

Create a Target Data Extension


In Contact Builder or Email Studio, create a standard data extension with these properties and fields. This data extension is the destination
for your query’s data output.

Target Data Extension BounceHistory

External Key BounceHistory

Retention Setting On

Delete Individual Records

Retention Period 180 Days

72
Marketing Cloud Journeys and Automations Automation Studio Activities

Note: If you create the data extension in Email Studio, the Nullable column replaces the Required column. If a field isn’t required,
select Nullable. If a field is required, don’t select Nullable.

Primary Key Name Data Type Required Length Default Value


X SubscriberID Number X

X JobID Number X

X ListID Number X

X BatchID Number X

EventDate Date

EmailAddress Email Address

SubscriberKey Text 254

EmailName Text 100

Domain Text 100

BounceCategory Text 50

SMTPBounceReason Text 4000

InsertedDate Date Select use the


current system
date

Create a Query Activity


In Automation Studio, create an SQL query with these properties.

Query Name BounceHistory

External Key BounceHistory

Sample Query
Copy and paste this query.
SELECT l.listname,
de.subscriberkey,
l.[status]
FROM [MY_DE_NAME] AS de
INNER JOIN [_listsubscribers] AS l
ON de.subscriberkey = l.subscriberkey
WHERE l.listname = 'MY_LIST_NAME'

Finalize the Query Activity


Link the query to the target data extension.

73
Marketing Cloud Journeys and Automations Automation Studio Activities

Target Data Extension BounceHistory

Data Action Update

Save your query activity, and then create and activate an automation that uses the activity. To continuously update your bounce history,
run the automation every 24 hours.

Query Variation: Capture Bounces for a Specific Email


To capture bounces for a specific email, add this line to the end of the query and replace MY_EMAIL_NAME with the name of the
email.
AND j.emailname = 'MY_EMAIL_NAME'

Query Variation: Capture Bounces for a Specific Job


To capture bounces for a specific job, add this line to the end of the query and replace MY_JOB_ID with the job ID.
AND j.jobid = 'MY_JOB_ID'

SEE ALSO:
Create a Data Extension in Contact Builder
Create a Data Extension in Email Studio (Enhanced)
Build a SQL Query Activity
Optimizing a SQL Query Activity
SQL Reference

Query: Journey Builder Bounced Email Messages


Create a list of contacts to send direct mailers to, based on bounced email messages from Journey Builder.

Before You Begin


To use this example, you need a working knowledge of SQL. You can copy and paste the code samples, but you must configure them
for your setup.

Create a Data Extension to Store Contact Data


In Contact Builder or Email Studio, create a standard data extension with these properties and fields.

Target Data Extension ContactProfileData

External Key ContactProfileData

Note: If you create the data extension in Email Studio, the Nullable column replaces the Required column. If a field isn’t required,
select Nullable. If a field is required, don’t select Nullable.

74
Marketing Cloud Journeys and Automations Automation Studio Activities

Primary Key Name Data Type Required Length Default Value


X ContactKey Text X 254

EmailAddress EmailAddress X 254

AddressLine1 Text X 500

AddressLine2 Text 500

City Text X 100

State Text X 2

Zip Text X 10

HomePhone Phone 50

MobilePhone Phone 50

Create a Target Data Extension for Journey Email Tracking


Create a standard data extension with these properties and fields. This data extension is the destination for your query's data output.

Target Data Extension EmailBouncesbyJourney

External Key EmailBouncesbyJourney

Primary Key Name Data Type Required Length Default Value


JourneyName Text X 100

VersionNumber Number X

EmailName Text X 100

SendTime Date X

BounceTime Date X

EmailAddress EmailAddress X 254

ContactKey Text X 254

X ContactID Number X

X JobID Number X

X ListID Number X

X BatchID Number X

AddressLine1 Text X 500

AddressLine2 Text 500

City Text X 100

75
Marketing Cloud Journeys and Automations Automation Studio Activities

Primary Key Name Data Type Required Length Default Value


State Text X 2

Zip Text X 10

HomePhone Phone 50

MobilePhone Phone 50

Create a Query Activity


In Automation Studio, create an SQL query with these properties. To ensure that bounce data is finalized, wait at least 72 hours after the
send to run this query.

Query Name EmailBouncesByJourney

External Key EmailBouncesByJourney

Sample Query
Copy and paste this query.
SELECT j.journeyname,
j.versionnumber,
ja.activityname AS 'EmailName',
s.eventdate AS 'SendTime',
b.eventdate AS 'BounceTime',
su.emailaddress,
su.subscriberkey AS 'ContactKey',
su.subscriberid AS 'ContactID',
s.jobid,
s.listid,
s.batchid,
cpd.addressline1,
cpd.addressline2,
cpd.city,
cpd.state,
cpd.zip,
cpd.homephone,
cpd.mobilephone
FROM [_sent] AS s
INNER JOIN [_journeyactivity] AS ja
ON s.triggerersenddefinitionobjectid = ja.journeyactivityobjectid
INNER JOIN [_journey] AS j
ON ja.versionid = j.versionid
INNER JOIN [_bounce] AS b
ON s.jobid = b.jobid
AND s.listid = b.listid
AND s.batchid = b.batchid
AND s.subscriberid = b.subscriberid
INNER JOIN [_subscribers] AS su
ON s.subscriberid = su.subscriberid

76
Marketing Cloud Journeys and Automations Automation Studio Activities

INNER JOIN contactprofiledata AS cpd


ON s.subscriberkey = cpd.contactkey
WHERE ja.activitytype IN ( 'EMAIL', 'EMAILV2' )
AND s.eventdate < Dateadd(hour, -72, Getdate())
AND j.journeyname = 'MY_JOURNEY_NAME'

Finalize the Query Activity


Customize the query. Use the line numbers in Automation Studio to identify which lines to modify.
• On the last line, replace MY_JOURNEY_NAME with the name of your journey.
• If you’re querying from the child business unit of an Enterprise 2.0 account, modify line 29 to add the ent. prefix.
– Original: INNER JOIN [_subscribers] AS su
– Modified: INNER JOIN ent.[subscribers] AS su

Link the query to the target data extension.

Target Data Extension EmailBouncesByJourney

Data Action Overwrite

Query Variation: Capture Bounces for All Journeys


To capture bounces for all journeys, remove the last line from the query.
AND j.journeyname = 'MY_JOURNEY_NAME'

SEE ALSO:
Create a Data Extension in Contact Builder
Create a Data Extension in Email Studio (Enhanced)
Build a SQL Query Activity
Optimizing a SQL Query Activity
SQL Reference

Query: Journey Builder Sends by Email Across Versions


Aggregate all Journey Builder email sends across multiple versions of the same journey. Or, modify this query to find opens, clicks,
bounces, complaints, or unsubscribes across versions during a specific time frame.

Before You Begin


To use this example, you need a working knowledge of SQL. You can copy and paste the code samples, but you must configure them
for your setup.

Create a Target Data Extension


In Contact Builder or Email Studio, create a standard data extension with these properties and fields. This data extension is the destination
for your query's data output.

77
Marketing Cloud Journeys and Automations Automation Studio Activities

Target Data Extension EmailSendsByJourney

External Key EmailSendsByJourney

Note: If you create the data extension in Email Studio, the Nullable column replaces the Required column. If a field isn’t required,
select Nullable. If a field is required, don’t select Nullable.

Primary Key Name Data Type Required Length Default Value


JourneyName Text X 100

Date Date X

EmailName Text X 100

ActivityExternalKey Text X 100

Sends Number X

Create a Query Activity


In Automation Studio, create an SQL query with these properties.

Query Name EmailSendsByJourney

External Key EmailSendsByJourney

Sample Query
Copy and paste this query.
SELECT j.journeyname,
Cast(s.eventdate AS DATE) AS 'Date',
ja.activityname AS 'EmailName',
ja.activityexternalkey,
Count(*) AS 'Sends'
FROM [_sent] AS s
INNER JOIN [_journeyactivity] AS ja
ON s.triggerersenddefinitionobjectid = ja.journeyactivityobjectid
INNER JOIN [_journey] AS j
ON ja.versionid = j.versionid
INNER JOIN [_subscribers] AS su
ON s.subscriberid = su.subscriberid
WHERE ja.activitytype IN ( 'EMAIL', 'EMAILV2' )
AND j.journeyname = 'MY_JOURNEY_NAME'
AND s.eventdate > Dateadd(day, -7, Getdate())
GROUP BY j.journeyname,
j.journeyid,
Cast(s.eventdate AS DATE),
ja.activityname,
ja.activityexternalkey

78
Marketing Cloud Journeys and Automations Automation Studio Activities

Finalize the Query Activity


Customize the query. Use the line numbers in Automation Studio to identify which lines to modify.
• On line 14, replace MY_JOURNEY_NAME with the name of your journey.
• If you’re querying from the child business unit of an Enterprise 2.0 account, modify line 11 to add the ent. prefix.
– Original: INNER JOIN [_subscribers] AS su
– Modified: INNER JOIN ent.[subscribers] AS su

Link the query to the target data extension.

Target Data Extension EmailSendsByJourney

Data Action Overwrite

Save your query activity, and then create and activate an automation that uses the activity.

Query Variation: Capture Sends for All Journeys


To capture sends for all journeys, remove line 14 from the query.
AND j.journeyname = 'MY_JOURNEY_NAME'

Query Variation: Capture a Different Time Frame


To capture data for a different time frame, use any number of days up to 180. For example, we modified line 15 in this query to retrieve
14 days of data.
SELECT j.journeyname,
Cast(s.eventdate AS DATE) AS 'Date',
ja.activityname AS 'EmailName',
ja.activityexternalkey,
Count(*) AS 'Sends'
FROM [_sent] AS s
INNER JOIN [_journeyactivity] AS ja
ON s.triggerersenddefinitionobjectid = ja.journeyactivityobjectid
INNER JOIN [_journey] AS j
ON ja.versionid = j.versionid
INNER JOIN [_subscribers] AS su
ON s.subscriberid = su.subscriberid
WHERE ja.activitytype IN ( 'EMAIL', 'EMAILV2' )
AND j.journeyname = 'MY_JOURNEY_NAME'
AND s.eventdate > Dateadd(day, -14, Getdate())
GROUP BY j.journeyname,
j.journeyid,
Cast(s.eventdate AS DATE),
ja.activityname,
ja.activityexternalkey

To pull a specific range, such as all activity from yesterday, use this code.
SELECT j.journeyname,
Cast(s.eventdate AS DATE) AS 'Date',

79
Marketing Cloud Journeys and Automations Automation Studio Activities

ja.activityname AS 'EmailName',
ja.activityexternalkey,
Count(*) AS 'Sends'
FROM [_sent] AS s
INNER JOIN [_journeyactivity] AS ja
ON s.triggerersenddefinitionobjectid = ja.journeyactivityobjectid
INNER JOIN [_journey] AS j
ON ja.versionid = j.versionid
INNER JOIN [_subscribers] AS su
ON s.subscriberid = su.subscriberid
WHERE ja.activitytype IN ('EMAIL','EMAILV2')
AND j.journeyname = 'MY_JOURNEY_NAME'
AND s.eventdate BETWEEN Dateadd(day,-1,Getdate()) AND Getdate()
GROUP BY j.journeyname,
j.journeyid,
Cast(s.eventdate AS DATE),
ja.activityname,
ja.activityexternalkey

Depending on how much data you’re retrieving, a query spanning more than 30 days can time out and fail. If your query times out, try
a shorter time frame.

Query Variation: Capture Opens


To capture opens instead of sends, use this code. You must also add fields for Opens and OpenDate to your target data extension.
SELECT j.journeyname,
Cast(o.eventdate AS DATE) AS 'OpenDate',
ja.activityname AS 'EmailName',
ja.activityexternalkey,
Count(*) AS 'Opens'
FROM [_open] AS o
INNER JOIN [_journeyactivity] AS ja
ON o.triggerersenddefinitionobjectid = ja.journeyactivityobjectid
INNER JOIN [_journey] AS j
ON ja.versionid = j.versionid
INNER JOIN [_subscribers] AS su
ON o.subscriberid = su.subscriberid
WHERE ja.activitytype IN ( 'EMAIL', 'EMAILV2' )
AND j.journeyname = 'MY_JOURNEY_NAME'
AND o.eventdate BETWEEN Dateadd(day, -1, Getdate()) AND Getdate()
GROUP BY j.journeyname,
j.journeyid,
Cast(o.eventdate AS DATE),
ja.activityname,
ja.activityexternalkey

Query Variation: Capture Clicks


To capture clicks instead of sends, use this code. You must also add fields for Clicks and ClickDate to your target data extension.
SELECT j.journeyname,
Cast(c.eventdate AS DATE) AS 'ClickDate',
ja.activityname AS 'EmailName',

80
Marketing Cloud Journeys and Automations Automation Studio Activities

ja.activityexternalkey,
Count(*) AS 'Clicks'
FROM [_click] AS c
INNER JOIN [_journeyactivity] AS ja
ON c.triggerersenddefinitionobjectid = ja.journeyactivityobjectid
INNER JOIN [_journey] AS j
ON ja.versionid = j.versionid
INNER JOIN [_subscribers] AS su
ON c.subscriberid = su.subscriberid
WHERE ja.activitytype IN ( 'EMAIL', 'EMAILV2' )
AND j.journeyname = 'MY_JOURNEY_NAME'
AND c.eventdate BETWEEN Dateadd(day, -1, Getdate()) AND Getdate()
GROUP BY j.journeyname,
j.journeyid,
Cast(c.eventdate AS DATE),
ja.activityname,
ja.activityexternalkey

Query Variation: Capture Bounces


To capture bounces instead of sends, use this code. You must also add fields for Bounces and BounceDate to your target data
extension.
SELECT j.journeyname,
Cast(b.eventdate AS DATE) AS 'BounceDate',
ja.activityname AS 'EmailName',
ja.activityexternalkey,
Count(*) AS 'Bounces'
FROM [_bounce] AS b
INNER JOIN [_journeyactivity] AS ja
ON b.triggerersenddefinitionobjectid = ja.journeyactivityobjectid
INNER JOIN [_journey] AS j
ON ja.versionid = j.versionid
INNER JOIN [_subscribers] AS su
ON b.subscriberid = su.subscriberid
WHERE ja.activitytype IN ( 'EMAIL', 'EMAILV2' )
AND j.journeyname = 'MY_JOURNEY_NAME'
AND b.eventdate BETWEEN Dateadd(day, -1, Getdate()) AND Getdate()
GROUP BY j.journeyname,
j.journeyid,
Cast(b.eventdate AS DATE),
ja.activityname,
ja.activityexternalkey

Query Variation: Capture Complaints


To capture complaints instead of sends, use this code. You must also add fields for Complaints and ComplaintDate to your
target data extension.
SELECT j.journeyname,
Cast(c.eventdate AS DATE) AS 'ComplaintDate',
ja.activityname AS 'EmailName',
ja.activityexternalkey,
Count(*) AS 'Complaints'

81
Marketing Cloud Journeys and Automations Automation Studio Activities

FROM [_complaint] AS c
JOIN [_sent] AS s
ON c.jobid = s.jobid
AND c.listid = s.listid
AND c.batchid = s.batchid
AND c.subscriberid = s.subscriberid
INNER JOIN [_journeyactivity] AS ja
ON s.triggerersenddefinitionobjectid = ja.journeyactivityobjectid
INNER JOIN [_journey] AS j
ON ja.versionid = j.versionid
INNER JOIN [_subscribers] AS su
ON c.subscriberid = su.subscriberid
WHERE ja.activitytype IN ( 'EMAIL', 'EMAILV2' )
AND j.journeyname = 'MY_JOURNEY_NAME'
AND c.eventdate BETWEEN Dateadd(day, -1, Getdate()) AND Getdate()
GROUP BY j.journeyname,
j.journeyid,
Cast(c.eventdate AS DATE),
ja.activityname,
ja.activityexternalkey

Query Variation: Capture Unsubscribes


To capture unsubscribes instead of sends, use this code. You must also add fields for Unsubscribes and UnsubscribeDate
to your target data extension.
SELECT j.journeyname,
Cast(u.eventdate AS DATE) AS 'UnsubscribeDate',
ja.activityname AS 'EmailName',
ja.activityexternalkey,
Count(*) AS 'Unsubscribes'
FROM [_unsubscribe] AS u
JOIN [_sent] AS s
ON u.jobid = s.jobid
AND u.listid = s.listid
AND u.batchid = s.batchid
AND u.subscriberid = s.subscriberid
INNER JOIN [_journeyactivity] AS ja
ON s.triggerersenddefinitionobjectid = ja.journeyactivityobjectid
INNER JOIN [_journey] AS j
ON ja.versionid = j.versionid
INNER JOIN [_subscribers] AS su
ON u.subscriberid = su.subscriberid
WHERE ja.activitytype IN ( 'EMAIL', 'EMAILV2' )
AND j.journeyname = 'MY_JOURNEY_NAME'
AND u.eventdate BETWEEN Dateadd(day, -1, Getdate()) AND Getdate()
GROUP BY j.journeyname,
j.journeyid,
Cast(u.eventdate AS DATE),

82
Marketing Cloud Journeys and Automations Automation Studio Activities

ja.activityname,
ja.activityexternalkey

SEE ALSO:
Create a Data Extension in Contact Builder
Create a Data Extension in Email Studio (Enhanced)
Build a SQL Query Activity
Optimizing a SQL Query Activity
SQL Reference

Query: Journey Builder Sends in Last 24 Hours


Find subscribers who were sent an email from a journey in Journey Builder within the last 24 hours. Or, modify this query to find opens,
clicks, bounces, complaints, or unsubscribes for an email from Journey Builder during a specific time frame.

Before You Begin


To use this example, you need a working knowledge of SQL. You can copy and paste the code samples, but you must configure them
for your setup.

Create a Target Data Extension


In Contact Builder or Email Studio, create a standard data extension with these properties and fields. This data extension is the destination
for your query's data output.

Target Data Extension JourneySends24Hours

External Key JourneySends24Hours

Note: If you create the data extension in Email Studio, the Nullable column replaces the Required column. If a field isn’t required,
select Nullable. If a field is required, don’t select Nullable.

Primary Key Name Data Type Required Length Default Value


JourneyName Text X 100

VersionNumber Number X

EmailName Text X 100

SendTime Date X

EmailAddress EmailAddress X 254

ContactKey Text X 254

X ContactID Number X

X JobID Number X

X ListID Number X

83
Marketing Cloud Journeys and Automations Automation Studio Activities

Primary Key Name Data Type Required Length Default Value


X BatchID Number X

Create a Query Activity


In Automation Studio, create an SQL query with these properties.

Query Name JourneySends24Hours

External Key JourneySends24Hours

Sample Query
Copy and paste this query.
SELECT j.journeyname,
j.versionnumber,
ja.activityname AS 'EmailName',
s.eventdate AS 'SendTime',
su.emailaddress,
su.subscriberkey AS 'ContactKey',
s.subscriberid AS 'ContactID',
s.jobid,
s.listid,
s.batchid
FROM [_sent] AS s
INNER JOIN [_journeyactivity] AS ja
ON s.triggerersenddefinitionobjectid = ja.journeyactivityobjectid
INNER JOIN [_journey] AS j
ON ja.versionid = j.versionid
INNER JOIN [_subscribers] AS su
ON s.subscriberid = su.subscriberid
WHERE ja.activitytype IN ( 'EMAIL', 'EMAILV2' )
AND s.eventdate > Dateadd(hour, -24, Getdate())
AND j.journeyname = 'MY_JOURNEY_NAME'

Finalize the Query Activity


Customize the query. Use the line numbers in Automation Studio to identify which lines to modify.
• On the last line, replace MY_JOURNEY_NAME with the name of your journey.
• If you’re querying from the child business unit of an Enterprise 2.0 account, modify line 16 to add the ent. prefix.
– Original: INNER JOIN [_subscribers] AS su
– Modified: INNER JOIN ent.[subscribers] AS su

Link the query to the target data extension.

Target Data Extension JourneySends24Hours

Data Action Overwrite

84
Marketing Cloud Journeys and Automations Automation Studio Activities

Save your query activity, and then create and activate an automation that uses the activity.

Query Variation: Capture Sends for All Journeys


To capture sends for all journeys, remove the last line from the query.
AND j.journeyname = 'MY_JOURNEY_NAME'

Query Variation: Capture a Different Time Frame


To capture data for a different time frame, use any number of hours or days up to 180 days. For example, we modified line 19 in this
query to retrieve 7 days of data.
SELECT j.journeyname,
j.versionnumber,
ja.activityname AS 'EmailName',
s.eventdate AS 'SendTime',
su.emailaddress,
su.subscriberkey AS 'ContactKey',
s.subscriberid AS 'ContactID',
s.jobid,
s.listid,
s.batchid
FROM [_sent] AS s
INNER JOIN [_journeyactivity] AS ja
ON s.triggerersenddefinitionobjectid = ja.journeyactivityobjectid
INNER JOIN [_journey] AS j
ON ja.versionid = j.versionid
INNER JOIN [_subscribers] AS su
ON s.subscriberid = su.subscriberid
WHERE ja.activitytype IN ( 'EMAIL', 'EMAILV2' )
AND s.eventdate > Dateadd(day, -7, Getdate())
AND j.journeyname = 'MY_JOURNEY_NAME'

To pull a specific range, such as all activity from yesterday, use this code.
SELECT j.journeyname,
j.versionnumber,
ja.activityname AS 'EmailName',
s.eventdate AS 'SendTime',
su.emailaddress,
su.subscriberkey AS 'ContactKey',
s.subscriberid AS 'ContactID',
s.jobid,
s.listid,
s.batchid
FROM [_sent] AS s
INNER JOIN [_journeyactivity] AS ja
ON s.triggerersenddefinitionobjectid = ja.journeyactivityobjectid
INNER JOIN [_journey] AS j
ON ja.versionid = j.versionid
INNER JOIN [_subscribers] AS su
ON s.subscriberid = su.subscriberid
WHERE ja.activitytype IN ( 'EMAIL', 'EMAILV2' )
AND j.journeyname = 'MY_JOURNEY_NAME'

85
Marketing Cloud Journeys and Automations Automation Studio Activities

AND s.eventdate BETWEEN Cast(Dateadd(day, -1, Getdate()) AS DATE) AND


Cast(
Getdate() AS DATE)

Depending on how much data you’re retrieving, a query spanning more than 30 days can time out and fail. If your query times out, try
a shorter time frame.

Query Variation: Capture Opens


To capture opens instead of sends, use this code. You must also add a field for OpenTime to your target data extension.
SELECT j.journeyname,
j.versionnumber,
ja.activityname AS 'EmailName',
o.eventdate AS 'OpenTime',
su.emailaddress,
su.subscriberkey AS 'ContactKey',
o.subscriberid AS 'ContactID',
o.jobid,
o.listid,
o.batchid
FROM [_open] AS o
INNER JOIN [_journeyactivity] AS ja
ON o.triggerersenddefinitionobjectid = ja.journeyactivityobjectid
INNER JOIN [_journey] AS j
ON ja.versionid = j.versionid
INNER JOIN [_subscribers] AS su
ON o.subscriberid = su.subscriberid
WHERE ja.activitytype IN ( 'EMAIL', 'EMAILV2' )
AND o.eventdate > Dateadd(hour, -24, Getdate())
AND j.journeyname = 'MY_JOURNEY_NAME'

Query Variation: Capture Clicks


To capture clicks instead of sends, use this code. You must also add a field for ClickTime to your target data extension.
SELECT j.journeyname,
j.versionnumber,
ja.activityname AS 'EmailName',
c.eventdate AS 'ClickTime',
su.emailaddress,
su.subscriberkey AS 'ContactKey',
c.subscriberid AS 'ContactID',
c.jobid,
c.listid,
c.batchid
FROM [_click] AS c
INNER JOIN [_journeyactivity] AS ja
ON c.triggerersenddefinitionobjectid = ja.journeyactivityobjectid
INNER JOIN [_journey] AS j
ON ja.versionid = j.versionid
INNER JOIN [_subscribers] AS su
ON c.subscriberid = su.subscriberid
WHERE ja.activitytype IN ( 'EMAIL', 'EMAILV2' )

86
Marketing Cloud Journeys and Automations Automation Studio Activities

AND c.eventdate > Dateadd(hour, -24, Getdate())


AND j.journeyname = 'MY_JOURNEY_NAME'

Query Variation: Capture Bounces


To capture bounces instead of sends, use this code. You must also add a field for BounceTime to your target data extension.
SELECT j.journeyname,
j.versionnumber,
ja.activityname AS 'EmailName',
b.eventdate AS 'BounceTime',
su.emailaddress,
su.subscriberkey AS 'ContactKey',
b.subscriberid AS 'ContactID',
b.jobid,
b.listid,
b.batchid
FROM [_bounce] AS b
INNER JOIN [_journeyactivity] AS ja
ON b.triggerersenddefinitionobjectid = ja.journeyactivityobjectid
INNER JOIN [_journey] AS j
ON ja.versionid = j.versionid
INNER JOIN [_subscribers] AS su
ON b.subscriberid = su.subscriberid
WHERE ja.activitytype IN ( 'EMAIL', 'EMAILV2' )
AND b.eventdate > Dateadd(hour, -24, Getdate())
AND j.journeyname = 'MY_JOURNEY_NAME'

Query Variation: Capture Complaints


To capture complaints instead of sends, use this code. You must also add a field for ComplaintTime to your target data extension.
SELECT j.journeyname,
j.versionnumber,
ja.activityname AS 'EmailName',
c.eventdate AS 'ComplaintTime',
su.emailaddress,
su.subscriberkey AS 'ContactKey',
c.subscriberid AS 'ContactID',
c.jobid,
c.listid,
c.batchid
FROM [_complaint] AS c
JOIN [_sent] AS s
ON c.jobid = s.jobid
AND c.listid = s.listid
AND c.batchid = s.batchid
AND c.subscriberid = s.subscriberid
INNER JOIN [_journeyactivity] AS ja
ON s.triggerersenddefinitionobjectid = ja.journeyactivityobjectid
INNER JOIN [_journey] AS j
ON ja.versionid = j.versionid
INNER JOIN [_subscribers] AS su
ON c.subscriberid = su.subscriberid

87
Marketing Cloud Journeys and Automations Automation Studio Activities

WHERE ja.activitytype IN ( 'EMAIL', 'EMAILV2' )


AND c.eventdate > Dateadd(hour, -24, Getdate())
AND j.journeyname = 'MY_JOURNEY_NAME'

Query Variation: Capture Unsubscribes


To capture unsubscribes instead of sends, use this code. You must also add a field for UnsubscribeTime to your target data
extension.
SELECT j.journeyname,
j.versionnumber,
ja.activityname AS 'EmailName',
u.eventdate AS 'UnsubscribeTime',
su.emailaddress,
su.subscriberkey AS 'ContactKey',
u.subscriberid AS 'ContactID',
u.jobid,
u.listid,
u.batchid
FROM [_unsubscribe] AS u
JOIN [_sent] AS s
ON u.jobid = s.jobid
AND u.listid = s.listid
AND u.batchid = s.batchid
AND u.subscriberid = s.subscriberid
INNER JOIN [_journeyactivity] AS ja
ON s.triggerersenddefinitionobjectid = ja.journeyactivityobjectid
INNER JOIN [_journey] AS j
ON ja.versionid = j.versionid
INNER JOIN [_subscribers] AS su
ON u.subscriberid = su.subscriberid
WHERE ja.activitytype IN ( 'EMAIL', 'EMAILV2' )
AND u.eventdate > Dateadd(hour, -24, Getdate())
AND j.journeyname = 'MY_JOURNEY_NAME'

SEE ALSO:
Create a Data Extension in Contact Builder
Create a Data Extension in Email Studio (Enhanced)
Build a SQL Query Activity
Optimizing a SQL Query Activity
SQL Reference

Query: Opens in Last 30 Days


Find all unique opens for a specific email over the last 30 days. Or, modify this query to find sends, clicks, bounces, complaints, or
unsubscribes for an email during a specific time frame.

Before You Begin


To use this example, you need a working knowledge of SQL. You can copy and paste the code samples, but you must configure them
for your setup.

88
Marketing Cloud Journeys and Automations Automation Studio Activities

Create a Target Data Extension


In Contact Builder or Email Studio, create a standard data extension with these properties and fields. This data extension is the destination
for your query's data output.

Target Data Extension OpensIn30Days

External Key OpensIn30Days

Note: If you create the data extension in Email Studio, the Nullable column replaces the Required column. If a field isn’t required,
select Nullable. If a field is required, don’t select Nullable.

Primary Key Name Data Type Required Length Default Value


JobID Number X

EmailName Text X 100

SendTime Date X

OpenTime Date X

EmailAddress EmailAddress X 254

SubscriberKey Text X 254

Create a Query Activity


In Automation Studio, create an SQL query with these properties.

Query Name OpensIn30Days

External Key OpensIn30Days

Sample Query
Copy and paste this query.
SELECT j.jobid,
j.emailname,
j.deliveredtime AS 'SendTime',
o.eventdate AS 'OpenTime',
s.emailaddress,
s.subscriberkey
FROM [_job] AS j
INNER JOIN [_open] AS o
ON j.jobid = o.jobid
INNER JOIN [_subscribers] AS s
ON o.subscriberid = s.subscriberid
WHERE o.isunique = 1
AND o.eventdate > Dateadd(day, -30, Getdate())
AND j.emailid = MY_EMAIL_ID

89
Marketing Cloud Journeys and Automations Automation Studio Activities

Finalize the Query Activity


Customize the query. Use the line numbers in Automation Studio to identify which lines to modify.
• On the last line, replace MY_EMAIL_ID with the ID of your email. If you don’t know your email ID, go to Content Builder, select
the email, and view its details.

• If you’re querying from the child business unit of an Enterprise 2.0 account, modify line 10 to add the ent. prefix.
– Original: INNER JOIN [_subscribers] AS s
– Modified: INNER JOIN ent.[subscribers] AS s

Link the query to the target data extension.

Target Data Extension OpensIn30Days

Data Action Overwrite

Save your query activity, and then create and activate an automation that uses the activity.

Query Variation: Capture a Different Time Frame


To capture data for a different time frame, use any number of days up to 180. For example, we modified line 13 in this query to retrieve
14 days of data.
SELECT j.jobid,
j.emailname,

90
Marketing Cloud Journeys and Automations Automation Studio Activities

j.deliveredtime AS 'SendTime',
o.eventdate AS 'OpenTime',
s.emailaddress,
s.subscriberkey
FROM [_job] AS j
INNER JOIN [_open] AS o
ON j.jobid = o.jobid
INNER JOIN [_subscribers] AS s
ON o.subscriberid = s.subscriberid
WHERE o.isunique = 1
AND o.eventdate > Dateadd(day, -14, Getdate())
AND j.emailid = MY_EMAIL_ID

To pull a specific range, such as 30–60 days ago, use this code.
SELECT j.jobid,
j.emailname,
j.deliveredtime AS 'SendTime',
o.eventdate AS 'OpenTime',
s.emailaddress,
s.subscriberkey
FROM [_job] AS j
INNER JOIN [_open] AS o
ON j.jobid = o.jobid
INNER JOIN [_subscribers] AS s
ON o.subscriberid = s.subscriberid
WHERE o.isunique = 1
AND o.eventdate BETWEEN Dateadd(day, -60, Getdate()) AND
Dateadd(day, -30, Getdate())
AND j.emailid = MY_EMAIL_ID

Depending on how much data you’re retrieving, a query spanning more than 30 days can time out and fail. If your query times out, try
a shorter time frame.

Query Variation: Capture Sends


To capture sends instead of opens, use this code.
SELECT j.jobid,
j.emailname,
se.eventdate AS 'SendTime',
s.emailaddress,
s.subscriberkey
FROM [_job] AS j
INNER JOIN [_sent] AS se
ON j.jobid = se.jobid
INNER JOIN [_subscribers] AS s
ON s.subscriberid = se.subscriberid
WHERE se.eventdate > Dateadd(day, -30, Getdate())
AND j.emailid = MY_EMAIL_ID

91
Marketing Cloud Journeys and Automations Automation Studio Activities

Query Variation: Capture Clicks


To capture clicks instead of opens, use this code. You must also add a field for ClickTime to your target data extension.
SELECT j.jobid,
j.emailname,
j.deliveredtime AS 'SendTime',
c.eventdate AS 'ClickTime',
s.emailaddress,
s.subscriberkey
FROM [_job] AS j
INNER JOIN [_click] AS c
ON j.jobid = c.jobid
INNER JOIN [_subscribers] AS s
ON c.subscriberid = s.subscriberid
WHERE c.isunique = 1
AND c.eventdate > Dateadd(day, -30, Getdate())
AND j.emailid = MY_EMAIL_ID

Query Variation: Capture Bounces


To capture bounces instead of opens, use this code. You must also add a field for BounceTime to your target data extension.
SELECT j.jobid,
j.emailname,
b.eventdate AS 'BounceTime',
s.emailaddress,
s.subscriberkey
FROM [_job] AS j
INNER JOIN [_bounce] AS b
ON j.jobid = b.jobid
INNER JOIN [_subscribers] AS s
ON s.subscriberid = b.subscriberid
WHERE b.eventdate > Dateadd(day, -30, Getdate())
AND j.emailid = MY_EMAIL_ID

Query Variation: Capture Complaints


To capture complaints instead of opens, use this code. You must also add a field for ComplaintTime to your target data extension.
SELECT j.jobid,
j.emailname,
c.eventdate AS 'ComplaintTime',
s.emailaddress,
s.subscriberkey
FROM [_job] AS j
INNER JOIN [_complaint] AS c
ON j.jobid = c.jobid
INNER JOIN [_subscribers] AS s
ON s.subscriberid = c.subscriberid
WHERE c.eventdate > Dateadd(day, -30, Getdate())
AND j.emailid = MY_EMAIL_ID

92
Marketing Cloud Journeys and Automations Automation Studio Activities

Query Variation: Capture Unsubscribes


To capture unsubscribes instead of opens, use this code. You must also add a field for UnsubscribeTime to your target data
extension.
SELECT j.jobid,
j.emailname,
u.eventdate AS 'UnsubscribeTime',
s.emailaddress,
s.subscriberkey
FROM [_job] AS j
INNER JOIN [_unsubscribe] AS u
ON j.jobid = u.jobid
INNER JOIN [_subscribers] AS s
ON s.subscriberid = u.subscriberid
WHERE u.eventdate > Dateadd(day, -30, Getdate())
AND j.emailid = MY_EMAIL_ID

SEE ALSO:
Create a Data Extension in Contact Builder
Create a Data Extension in Email Studio (Enhanced)
Build a SQL Query Activity
Optimizing a SQL Query Activity
SQL Reference

Query: Subscriber Status


Find subscribers on a list and their statuses. Or, find only subscribers with a specific status, such as active or unsubscribed.

Before You Begin


To use this example, you need a working knowledge of SQL. You can copy and paste the code samples, but you must configure them
for your setup.

Create a Target Data Extension


In Contact Builder or Email Studio, create a standard data extension with these properties and fields. This data extension is the destination
for your query's data output.
If the source data extension includes duplicate entries, deselect Primary Key for the SubscriberKey value.

Target Data Extension DataExtensionWithStatus

External Key DataExtensionWithStatus

Note: If you create the data extension in Email Studio, the Nullable column replaces the Required column. If a field isn’t required,
select Nullable. If a field is required, don’t select Nullable.

93
Marketing Cloud Journeys and Automations Automation Studio Activities

Primary Key Name Data Type Required Length Default Value


X SubscriberKey Text X 254

Status Text X 25

X ListName Text X 100

Create a Query Activity


In Automation Studio, create an SQL query with these properties.

Query Name DataExtensionWithStatus

External Key DataExtensionWithStatus

Sample Query
Copy and paste this query.
SELECT l.listname,
de.subscriberkey,
l.[status]
FROM [MY_DE_NAME] AS de
INNER JOIN [_listsubscribers] AS l
ON de.subscriberkey = l.subscriberkey
WHERE l.listname = 'MY_LIST_NAME'

Finalize the Query Activity


Customize the query. Use the line numbers in Automation Studio to identify which lines to modify.
• On line 4, replace MY_DE_NAME with the name of the source data extension.
• On the last line, replace MY_LIST_NAME with the name of your subscriber list.
• If the source data extension doesn’t include a SubscriberKey field, replace de.subscriberkey on lines 2 and 6 with
de.yourfield. For example, de.emailaddress or de.customerid.
Link the query to the target data extension.

Target Data Extension DataExtensionWithStatus

Data Action Overwrite

Save your query activity, and then create and activate an automation that uses the activity.

Query Variation: Return Other Fields


To return other fields from the source data extension, add those fields to the target data extension and the query.

94
Marketing Cloud Journeys and Automations Automation Studio Activities

For example, if your source data extension includes a PolicyNumber field, add a field for PolicyNumber to the target data extension.
Then in the query, insert de.policynumber in the select statement.
SELECT l.listname,
de.subscriberkey,
de.policynumber,
l.[status]
FROM [MY_DE_NAME] AS de
INNER JOIN [_listsubscribers] AS l
ON de.subscriberkey = l.subscriberkey
WHERE l.listname = 'MY_LIST_NAME'

Query Variation: Return Subscribers with a Specific Status


To return results for subscribers with a specific status, such as active, add this line to the end of the query. You can also replace active
with another status, such as bounced, held, or unsubscribed.
AND l.[status] = 'active'

SEE ALSO:
Create a Data Extension in Contact Builder
Create a Data Extension in Email Studio (Enhanced)
Build a SQL Query Activity
Optimizing a SQL Query Activity
SQL Reference
Subscribers

Query: Subscribers by Date or Time Frame


Find subscribers who were added within a specific date or range of dates.

Before You Begin


To use this example, you need a working knowledge of SQL. You can copy and paste the code samples, but you must configure them
for your setup.

Create a Target Data Extension


In Contact Builder or Email Studio, create a standard data extension with these properties and fields. This data extension is the destination
for your query's data output.

Target Data Extension SubscribersByListByDate

External Key SubscribersByListByDate

Note: If you create the data extension in Email Studio, the Nullable column replaces the Required column. If a field isn’t required,
select Nullable. If a field is required, don’t select Nullable.

95
Marketing Cloud Journeys and Automations Automation Studio Activities

Primary Key Name Data Type Required Length Default Value


X SubscriberKey Text X 254

EmailAddress EmailAddress X 254

ListID Number X

ListName Text X 100

DateAdded Date X

Create a Query Activity


In Automation Studio, create an SQL query with these properties.

Query Name SubscribersByListByDate

External Key SubscribersByListByDate

Sample Query
Copy and paste this query.
SELECT l.subscriberkey,
l.emailaddress,
l.listid,
l.listname,
l.createddate AS DateAdded
FROM [_listsubscribers] AS l
WHERE l.listid = MY_LIST_ID
AND createddate BETWEEN '2021-11-01' AND '2021-12-01'

Finalize the Query Activity


Customize the query. Use the line numbers in Automation Studio to identify which lines to modify.
• On line 7, replace MY_LIST_ID with the ID of your subscriber list. If you don’t know your list ID, go to Email Studio, select
Subscribers > Lists > My List, and view its properties.

• On the last line, replace the date range with your time frame in YYYY-MM-DD format.
Link the query to the target data extension.

Target Data Extension SubscribersByListByDate

96
Marketing Cloud Journeys and Automations Automation Studio Activities

Data Action Overwrite

Save your query activity, and then create and activate an automation that uses the activity.

Query Variation: Find Subscribers by Date


To find subscribers who were added on a specific date, use this code and update the last line with your date.
SELECT l.subscriberkey,
l.emailaddress,
l.listid,
l.listname,
l.createddate AS DateAdded
FROM [_listsubscribers] AS l
WHERE l.listid = MY_LIST_ID
AND l.createddate BETWEEN '2021-11-01 00:00:00' AND '2021-11-01 23:59:59'

SEE ALSO:
Create a Data Extension in Contact Builder
Create a Data Extension in Email Studio (Enhanced)
Build a SQL Query Activity
Optimizing a SQL Query Activity
SQL Reference
Subscribers

Query: Subscribers in a Publication or Suppression List


Find subscribers who were placed on a publication or suppression List. Or, find only subscribers on the list with a specific status, such
as active or unsubscribed. If you have problems retrieving suppression list data, contact Salesforce Customer Support to activate this
feature.

Before You Begin


To use this example, you need a working knowledge of SQL. You can copy and paste the code samples, but you must configure them
for your setup.

Create a Target Data Extension


In Contact Builder or Email Studio, create a standard data extension with these properties and fields. This data extension is the destination
for your query's data output.

Target Data Extension PublicationSuppressionList

External Key PublicationSuppressionList

Note: If you create the data extension in Email Studio, the Nullable column replaces the Required column. If a field isn’t required,
select Nullable. If a field is required, don’t select Nullable.

97
Marketing Cloud Journeys and Automations Automation Studio Activities

Primary Key Name Data Type Required Length Default Value


X SubscriberKey Text X 254

EmailAddress EmailAddress X 254

ListName Text X 100

ListType Text 50

Status Text X 25

DateAdded Date X

AddMethod Text X 25

DateUnsubscribed Date

Create a Query Activity


In Automation Studio, create an SQL query with these properties.

Query Name PublicationSuppressionList

External Key PublicationSuppressionList

Sample Query
Copy and paste this query.
SELECT l.subscriberkey,
l.emailaddress,
l.listname,
l.listtype,
l.[status],
l.createddate AS DateAdded,
l.addmethod,
l.dateunsubscribed
FROM [_listsubscribers] AS l
WHERE l.listname = 'MY_LIST_NAME'

Finalize the Query Activity


On the last line, replace MY_LIST_NAME with the name of your publication or suppression list.
Link the query to the target data extension.

Target Data Extension PublicationSuppressionList

Data Action Overwrite

Save your query activity, and then create and activate an automation that uses the activity.

98
Marketing Cloud Journeys and Automations Automation Studio Activities

Query Variation: Return Subscribers with a Specific Status


To return results for subscribers with a specific status, such as active, add this line to the end of the query. You can also replace active
with another status, such as bounced, held, or unsubscribed.
AND l.[status] = 'active'

SEE ALSO:
Create a Data Extension in Contact Builder
Create a Data Extension in Email Studio (Enhanced)
Build a SQL Query Activity
Optimizing a SQL Query Activity
SQL Reference
Subscribers

Query: Subscribers with No Opens or Clicks


Find subscribers who haven’t opened or clicked an email. Use this query for jobs with fewer than 500,000 subscribers. For larger jobs,
use intermediate tables.

Before You Begin


To use this example, you need a working knowledge of SQL. You can copy and paste the code samples, but you must configure them
for your setup.

Create a Target Data Extension


In Contact Builder or Email Studio, create a standard data extension with these properties and fields. This data extension is the destination
for your query's data output.

Target Data Extension Name JobNoClickNoOpen

External Key JobNoClickNoOpen

Note: If you create the data extension in Email Studio, the Nullable column replaces the Required column. If a field isn’t required,
select Nullable. If a field is required, don’t select Nullable.

Primary Key Name Data Type Required Length Default Value


SubscriberKey Text X 254

JobID Number X

BatchID Number

SendDate Date

99
Marketing Cloud Journeys and Automations Automation Studio Activities

Create a Query Activity


In Automation Studio, create an SQL query with these properties.

Query Name JobNoClickNoOpen

External Key JobNoClickNoOpen

Sample Query
Copy and paste this query.
SELECT DISTINCT s.subscriberkey,
s.jobid,
s.batchid,
s.eventdate AS SendDate
FROM [_sent] AS s
LEFT JOIN [_open] AS o
ON s.jobid = o.jobid
AND s.listid = o.listid
AND s.batchid = o.batchid
AND s.subscriberid = o.subscriberid
AND o.isunique = 1
LEFT JOIN [_click] c
ON s.jobid = c.jobid
AND s.listid = c.listid
AND s.batchid = c.batchid
AND s.subscriberid = c.subscriberid
AND c.isunique = 1
WHERE ( o.subscriberid IS NULL
AND c.subscriberid IS NULL )
AND s.jobid = MY_JOB_ID

Finalize the Query Activity


On the last line, replace MY_JOB_ID with the ID of your job.
Link the query to the target data extension.

Target Data Extension JobClickNoOpen

Data Action Overwrite

Save your query activity, and then create and activate an automation that uses the activity.

Query Variation: Capture Multiple Jobs


To capture multiple jobs that collectively have fewer than 500,000 subscribers, replace the last line of the query with this code. Then
replace the placeholders with the job IDs.
AND s.jobid IN (MY_JOB_ID_1,MY_JOB_ID_2)

100
Marketing Cloud Journeys and Automations Automation Studio Activities

Query Variation: Find Only Subscribers Who Didn’t Click


To find only subscribers who didn’t click the email, use this code.
SELECT DISTINCT s.subscriberkey,
s.jobid,
s.batchid,
s.eventdate AS SendDate
FROM [_sent] AS s
LEFT JOIN [_click] c
ON s.jobid = c.jobid
AND s.listid = c.listid
AND s.batchid = c.batchid
AND s.subscriberid = c.subscriberid
AND c.isunique = 1
WHERE c.subscriberid IS NULL
AND s.jobid = MY_JOB_ID

Query Variation: Find Only Subscribers Who Didn’t Open


To find only subscribers who didn’t open the email, use this code.
SELECT DISTINCT s.subscriberkey,
s.jobid,
s.batchid,
s.eventdate AS SendDate
FROM [_sent] AS s
LEFT JOIN [_open] o
ON s.jobid = o.jobid
AND s.listid = o.listid
AND s.batchid = o.batchid
AND s.subscriberid = o.subscriberid
AND o.isunique = 1
WHERE o.subscriberid IS NULL
AND s.jobid = MY_JOB_ID

Query Variation: Find All Subscribers


To find all subscribers regardless of opens or clicks, add fields for OpenDate and ClickDate to the target data extension. Then
use this sample code.
SELECT DISTINCT s.subscriberkey,
s.jobid,
s.batchid,
o.eventdate AS OpenDate,
s.eventdate AS SendDate,
c.eventdate AS ClickDate
FROM [_sent] AS s
LEFT JOIN [_open] AS o
ON s.jobid = o.jobid
AND s.listid = o.listid
AND s.batchid = o.batchid
AND s.subscriberid = o.subscriberid
AND o.isunique = 1
LEFT JOIN [_click] AS c

101
Marketing Cloud Journeys and Automations Automation Studio Activities

ON s.jobid = c.jobid
AND s.listid = c.listid
AND s.batchid = c.batchid
AND s.subscriberid = c.subscriberid
AND c.isunique = 1
WHERE s.jobid = MY_JOB_ID

SEE ALSO:
Create a Data Extension in Contact Builder
Create a Data Extension in Email Studio (Enhanced)
Build a SQL Query Activity
Optimizing a SQL Query Activity
SQL Reference

Query: Top Bounces for a Job


Find the top bounces by percentage for a specific job. Use this query for jobs with fewer than 5,000,000 subscribers.

Before You Begin


To use this example, you need a working knowledge of SQL. You can copy and paste the code samples, but you must configure them
for your setup.

Create a Data Extension to Store Send Domain Data


In Contact Builder or Email Studio, create a standard data extension with these properties and fields. This data extension and its
corresponding query collect raw send data to use later.

Target Data Extension SendingDomains

External Key SendingDomains

Note: If you create the data extension in Email Studio, the Nullable column replaces the Required column. If a field isn’t required,
select Nullable. If a field is required, don’t select Nullable.

Primary Key Name Data Type Required Length Default Value


JobID Number X

SendCount Number

Domain Text X 100

Create a Data Extension to Store Bounce Data


Create a standard data extension with these properties and fields. This data extension and its corresponding query collect raw bounce
data to use later.

102
Marketing Cloud Journeys and Automations Automation Studio Activities

Target Data Extension BouncingDomains

External Key BouncingDomains

Table 1: Fields
Primary Key Name Data Type Required Length Default Value
JobID Number X

SendCount Number

Domain Text X 100

Create a Target Data Extension to Combine Bounce Data


Create a standard data extension with these properties and fields. This data extension and its corresponding query combine the previously
collected data to find the top bouncing domains.

Target Data Extension TopBouncingDomains

External Key TopBouncingDomains

Table 2: Fields
Primary Key Name Data Type Required Length Default Value
JobID Number X

Domain Text X 100

SendCount Number

BounceCount Number

BouncePercent Text 20

Create a Query Activity for Send Domain Data


In Automation Studio, create an SQL query activity with these properties to collect raw send data.

Query Name SendingDomains

External Key SendingDomains

Sample Query for Collecting Send Domain Data


Copy and paste this query.
SELECT s.jobid,
s.domain,
Count(*) AS SendCount

103
Marketing Cloud Journeys and Automations Automation Studio Activities

FROM [_sent] AS s
WHERE s.jobid = MY_JOB_ID
GROUP BY s.jobid,
s.domain

On line 5, replace MY_JOB_ID with the ID of your job.


Link the query to the data extension that stores domain data.

Target Data Extension SendingDomains

Update Type Overwrite

Create a Query Activity to Collect Bounce Data


Create an SQL query activity with these properties to collect raw bounce data.

Query Name BouncingDomains

External Key BouncingDomains

Sample Query for Collecting Bounce Data


Copy and paste this query.
SELECT b.jobid,
b.domain,
Count(*) AS BounceCount
FROM [_bounce] b
WHERE b.jobid = MY_JOB_ID
GROUP BY b.jobid,
b.domain

On line 5, replace MY_JOB_ID with the ID of your job. Use the same JobID from the previous query.
Link the query to the data extension that stores bounce data.

Target Data Extension BouncingDomains

Data Action Overwrite

Create a Query Activity to Combine Bounce Data


Create an SQL query activity with these properties. This query combines the previously collected data and finds the top 25 bouncing
domains where send count > 100 and bounce count > 2.

Query Name TopBouncingDomains

External Key TopBouncingDomains

104
Marketing Cloud Journeys and Automations Automation Studio Activities

Sample Query for Combining Bounce Data


Copy and paste this query.
SELECT TOP 25 s.jobid,
s.domain,
s.sendcount,
b.bouncecount,
Cast(Round(( b.bouncecount * 100.0 ) / s.sendcount, 2) AS NUMERIC(
5, 2)) AS
BouncePercent
FROM [sendingdomains] AS s
LEFT JOIN [bouncingdomains] AS b
ON s.jobid = b.jobid
AND s.domain = b.domain
WHERE s.sendcount > 100
AND b.bouncecount > 2
ORDER BY bouncepercent DESC

Link the query to the target data extension.

Target Data Extension TopBouncingDomains

Data Action Overwrite

Query Variation: Include Domains with Low Send or Bounce Count


In the sample query, only domains where send count > 100 and bounce count > 2 are included. This limitation prevents domains with
only one bounce or a low send count from populating the majority of the list.
To remove these send and bounce count restrictions, remove lines 12 and 13.
WHERE s.sendcount > 100
AND b.bouncecount > 2

To keep the bounce restriction and remove only the send restriction, remove s.sendcount > 100 on line 12.
• Original: WHERE s.sendcount > 100 AND b.bouncecount > 2
• Modified: WHERE b.bouncecount > 2
To keep the send restriction and remove only the bounce restriction, remove b.bouncecount > 2 on line 13.
• Original: WHERE s.sendcount > 100 AND b.bouncecount > 2
• Modified: WHERE s.sendcount > 100
To modify the minimum send count or bounce count, change the corresponding numbers.

SEE ALSO:
Create a Data Extension in Contact Builder
Create a Data Extension in Email Studio (Enhanced)
Build a SQL Query Activity
Optimizing a SQL Query Activity
SQL Reference

105
Marketing Cloud Journeys and Automations Automation Studio Activities

SQL Reference
Get SQL query information for Automation Studio’s SQL Query activity at a glance.

Considerations
SQL support for the SQL Query Activity is based on, but doesn’t precisely correspond to, SQL Server 2016 capabilities.
• To ensure that queries are executed without blocking from other SQL updates, query activities use SET TRANSACTION ISOLATION
LEVEL READ UNCOMMITTED. This is equal to WITH (NOLOCK). Using the NOLOCK query hint is unnecessary.
• Only SELECT statements to data extension or data views in an account or in the parent account
– Nested Queries
– UNION
– JOIN
– GROUP BY

• Conditional Statements
– IF Constructs
– CASE Statements

• Functions
– Most functions, including MIN, MAX, and more are supported
– CAST and CONVERT

• Unsupported elements
– Variables
– Cursors
– User-Defined Functions
– Transaction and Locking
– GOTO
– PRINT
– Any sp_* stored procedure
– EXEC
– Temporary Tables and Common Table Expressions
– TEXT and IMAGE Functions
– Open-ended comment designations such as '--' to comment out a line

Split data within a column into two rows using the Char function and its ASCII value. Use an ASCII approved character as a delimiter.
To query unicode, it isn’t necessary to append an N to the search string.

Performance Considerations
Queries have a 30-minute timeout. If a query is timing out, it’s possible to make the query perform faster with indexes applied. Queries
that include both a join and a Select * statement aren’t permitted. Instead, write a statement that specifies each column name,
even when there are multiple columns.

106
Marketing Cloud Journeys and Automations Automation Studio Activities

Known Issues
• Data Types
– Decimal: If a data extension contains a decimal field and that field is used in a query, the output isn’t a decimal output

• Data Views and Enterprise 2.0 Business Units


– Only data extensions are accessible for queries written at the Enterprise 2.0 business unit

Querying Data Extensions


• In an enterprise environment, add the ENT."" prefix to get access to data extension in the enterprise parent account.
• Access a shared data extension in an Enterprise 2.0 account using the ENT. prefix.
• Use the data extension Name in SQL queries, not the External Key.

Querying Subscriber Data

Using the _Subscriber Data View


SELECT *
from _subscribers

Using the _EnterpriseAttribute Data View


SELECT *
from _EnterpriseAttribute

Note: This query can be used in Enterprise 2.0 edition accounts only. Core, Advanced, or Enterprise don’t support querying
subscriber attributes.

Combining the _EnterpriseAttribute Data View and the _Subscriber Data View
SELECT
b.[first name],
b.[last name],
b.[age],
a.[Status] as 'Subscription Status',
a.[EmailAddress] as 'Email'
FROM
_subscribers a
INNER JOIN
_EnterpriseAttribute b
ON
a.subscriberID = b._subscriberID

This example assumes the [first name],[last name], and [age] attributes exist in the account.

107
Marketing Cloud Journeys and Automations Automation Studio Activities

Sample Queries

GetaSend List Based on Aggregate Row Count


Use Case: Generating a Sendable list from a detailed data set
select visitorid from [cart abandonment segment] group by visitorid having count(visitorid)
> 1

Random Sample of 33 Percent Exclusion


Use Case: A/B split testing and general segmentation
Select top 33 percent

offerid,score,name,description,url

from Offers

inner join Offer_Ext1 a on a.offerid <> offers.offerid


order by newid()

Random Sample of 33 Percent


Use Case: A/B split testing and general segmentation
Select top 33 percent

offerid,score,name,description,url

from Offers
order by newid()

Random Sample of 100


Use Case: A/B split testing and general segmentation
Select top 100

offerid,score,name,description,url

from Offers
order by newid()

Unique Values for a Data Set


Use Case: Testing
Select distinct
'109406145' as linkage_id,
'109406145' as ticket_id,
'28480048' as family_id,
'73334' as merchant_id,
'25.32' as Original_Transaction_Amt,

108
Marketing Cloud Journeys and Automations Automation Studio Activities

transaction_type_cd,
Max(TRANSACTION_DATE) as Transaction_Date,
TRANSACTION_STATUS,
MERCHANT_TYPE,
'0' as Group_Points,
'.00' as Group_Comp,
'.00' as Group_Credit,
'.00' as Group_Dues,
'0' as Group_Miles,
'.00' as Group_BonusComp,
'102' as Group_BonusMiles,
'0' as Group_BonusPoints,
'.00' as Group_BonusCrdt,
'.00' as Total_Comp_Earned,
'.00' as Total_Credit_Earned,
'10' as Total_Miles_Earned,
'103' as Total_Points_Earned,
MERCHANT_CATEGORY,
RA_SEQUENCE,
'FFAK' as fam_campaign_cd

FROM Subscriber_Activity

GROUP BY transaction_type_cd, TRANSACTION_STATUS, MERCHANT_TYPE, RA_SEQUENCE,


MERCHANT_CATEGORY

Geo-Targeting
Prerequisites: Zip Code Data Extension. Search for current ZIP code data on the web. Use Case: Find all cities or zips, and therefore
subscribers, within 15 kilometers of a ZIP code. -- 6378.137 earth circumference
SELECT
city,
zip,
ROUND(6378.137 * ACOS(
CASE
WHEN (SIN(RADIANS((SELECT latitude FROM [ZipCode] where zip = 46254))) *
SIN(RADIANS(geo.Latitude))) + (COS(RADIANS((SELECT latitude FROM [ZipCode] where zip =
46254))) * COS(RADIANS(geo.Latitude)) * COS(RADIANS(geo.Longitude) - RADIANS((SELECT
longitude FROM [ZipCode] where zip = 46254)))) > 1 THEN 1
WHEN (SIN(RADIANS((SELECT latitude FROM [ZipCode] where zip = 46254))) *
SIN(RADIANS(geo.Latitude))) + (COS(RADIANS((SELECT latitude FROM [ZipCode] where zip =
46254))) * COS(RADIANS(geo.Latitude)) * COS(RADIANS(geo.Longitude) - RADIANS((SELECT
longitude FROM [ZipCode] where zip = 46254)))) < -1 THEN -1
ELSE (SIN(RADIANS((SELECT latitude FROM [ZipCode] where zip = 46254))) *
SIN(RADIANS(geo.Latitude))) + (COS(RADIANS((SELECT latitude FROM [ZipCode] where zip =
46254))) * COS(RADIANS(geo.Latitude)) * COS(RADIANS(geo.Longitude) - RADIANS((SELECT
longitude FROM [ZipCode] where zip = 46254))))
END),0) AS Distance
FROM
[ZipCode] AS geo
WHERE
ROUND(6378.137 * ACOS(
CASE

109
Marketing Cloud Journeys and Automations Automation Studio Activities

WHEN (SIN(RADIANS((SELECT latitude FROM [ZipCode] where zip = 46254))) *


SIN(RADIANS(geo.Latitude))) + (COS(RADIANS((SELECT latitude FROM [ZipCode] where zip =
46254))) * COS(RADIANS(geo.Latitude)) * COS(RADIANS(geo.Longitude) - RADIANS((SELECT
longitude FROM [ZipCode] where zip = 46254)))) > 1 THEN 1
WHEN (SIN(RADIANS((SELECT latitude FROM [ZipCode] where zip = 46254))) *
SIN(RADIANS(geo.Latitude))) + (COS(RADIANS((SELECT latitude FROM [ZipCode] where zip =
46254))) * COS(RADIANS(geo.Latitude)) * COS(RADIANS(geo.Longitude) - RADIANS((SELECT
longitude FROM [ZipCode] where zip = 46254)))) < -1 THEN -1
ELSE (SIN(RADIANS((SELECT latitude FROM [ZipCode] where zip = 46254))) *
SIN(RADIANS(geo.Latitude))) + (COS(RADIANS((SELECT latitude FROM [ZipCode] where zip =
46254))) * COS(RADIANS(geo.Latitude)) * COS(RADIANS(geo.Longitude) - RADIANS((SELECT
longitude FROM [ZipCode] where zip = 46254))))
END),0) <= 15

Pulling Tracking Information for a Triggered Send


Use Case: Viewing available tracking information regarding a triggered send
SELECT *
FROM _Open
WHERE TriggeredSendCustomerKey = 'External Key of Triggered Send'

SEE ALSO:
ASCII Characters

Restart a Suspended SQL Query Activity


When a SQL Query activity encounters a system error or fails 24 consecutive times, we suspend it. To find out why your query is suspended,
check the action log.
You can’t copy a suspended query, add it to an automation, or run it once.
1. When a query is suspended, go to that query’s action log and view the error.
2. Resolve the error, if applicable.
• If the log detail shows the error, “Query activity was terminated,” don’t modify the query activity. The system error will automatically
resolve and re-enable your SQL activity.
• For all other errors, fix the problem stated in the error message.
• If you’re not sure what caused the error, check the activity’s settings for issues or optimize the query using intermediate tables.
See Optimizing a SQL Query Activity.

3. Save your work.


After you edit and save the query activity, it’s automatically restarted.

Import File Activity


Use an outside file to update a subscriber list or data extension in Automation Studio. During the process, you also create an import
definition, which establishes import file details and the import activity's behavior while running. The activity uses this import definition
each time it runs.

110
Marketing Cloud Journeys and Automations Automation Studio Activities

Considerations
• If the file you are importing is encrypted or compressed, you can use a file transfer activity to prepare the file for import.
• Marketing Cloud Connect users can create an import activity to populate a data extension with object and report data from other
clouds via Synchronized Data Sources.
• You can specify the character encoding your imports use by contacting your Salesforce admin. The encoding you enable applies to
all imports in an account.
• Marketing Cloud assumes that the FTP server in the selected file transfer location reports time in UTC. UTC assumes no time zone
offset. If the remote FTP server is not utilizing UTC, adjust limits specified on the Properties page, including System buffer, during
activity setup to ensure the activity runs on the intended schedule.
• To access Salesforce Objects and Reports, navigate to Interactions in Email Studio.

Update a List or Data Extension with an External File


Use an external file with the Automation Studio import activity to update a list or data extension.

SEE ALSO:
Marketing Cloud SFTP Guide
File Locations
Marketing Cloud Connect
Synchronized Data Sources

Update a List or Data Extension with an External File


Use an external file with the Automation Studio import activity to update a list or data extension.
1. Click Create Activity.
2. Select Import File.
3. Add details about the import.

Property Detail
Name Provide a unique name.

Description Identify the activity so others using this account know what it is.
Customers cannot see the description.

External Key Provide a value you choose that uniquely identifies the activity.
Use this value to identify the activity when using the API.

Notification Settings Enter an email address to which the activity sends a notification
email including the reason for the error.

111
Marketing Cloud Journeys and Automations Automation Studio Activities

4. Identify a file location, file naming pattern, and other details. When you select Enhanced FTP as file location, the FTP's current state
shows so you can confirm that the file you want to import is there. If the file isn't there, it must be dropped into the file location to

112
Marketing Cloud Journeys and Automations Automation Studio Activities

begin the

. tm
ropi

Note: To access Salesforce Objects and Reports, navigate to Interactions in Email Studio.

Table 3: Advanced File Options


Property Detail
Skip import if last import occurred... Select to tell Automation Studio not to import the file when the
last successful import occurred fewer than this number of hours
ago.

Fail import if file is older... Use when files are dropped frequently into your FTP location
and you want to always import the most recent file.

System Buffer Select to set a buffer of 1 or more hours between activities in an


automation.

Property Detail
File Location By default, this folder is your FTP account’s import folder. If you
can drop import files here, select Enhanced FTP, or choose a
file location that you configured via Admin.

File Naming Pattern Enter the name of the file to be imported. Type or configure
substitution strings to create a dynamic file naming pattern based
on date and timestamps.

113
Marketing Cloud Journeys and Automations Automation Studio Activities

Property Detail
Date Format When importing dates, the date format used in the file must
match the format you select here.

Delimiter Choose to import comma-delimited or tab-delimited files, or


define your own delimiter. The system treats double quotes as
a delimiter in the import file unless you deselect Respect double
quotes ('') as a text delimiter.

Bad Data Behavior Skip bad or invalid data in the file so that data imported is in the
format you expect. This option is selected by default.

After setting your filename pattern, an example file name shows. Use the example file name to verify that the files you plan to import
match your file naming pattern. A confirmation message tells you whether a file in your file location matches the filename pattern
so you know if the import is likely to succeed or not.
5. Select a data extension or a subscriber list as a destination for data from the import.

6. Choose the data action the import performs.

Data Action Details


Add Only A record is created for each row in the file whose Primary Key or
email address is not found in the data extension or subscriber
list. Rows with Primary Keys found in the data extension or
subscriber list are not updated.

Update Only Rows in the file whose Primary Key exists in the data extension
or subscriber list are updated. Rows whose Primary Key is not
found in the data extension or subscriber list are ignored.

114
Marketing Cloud Journeys and Automations Automation Studio Activities

Data Action Details


Add and Update A record is created for each row in the file with a Primary Key or
email address that does not exist in the subscriber list or data
extension. Each record that matches a Primary Key or email
address in the subscriber list or data extension is updated with
data from the import file.

Overwrite (Data Extensions Only) Replace all rows in the data extension with data from the import
file.

Note: For data actions other than overwrite, the data extension must have at least one Primary Key column.

Note: Overwritten data cannot be recovered.

7. Select a method for how to import the data: by matching column headings, by adding or updating each column, or according to
the manual mapping you set here.

Mapping Option Details


Map by Header Row Each column header in the import file must match exactly the
column name in the data extension or subscriber list.

Map by Ordinal The first column in the subscriber list or data extension is updated
with the first column in the import file. This pattern continues
for each column in the import file until all columns have been
parsed.
• When importing into a subscriber list, column numbers must
start at zero.
• When importing into a data extension, column numbers
must start at one.

Map Manually Each column header in the import file is mapped according to
a sample file you find by clicking Browse. The activity uses this
pattern to import each time.

115
Marketing Cloud Journeys and Automations Automation Studio Activities

SEE ALSO:
Marketing Cloud Connect
Synchronized Data Sources
Filename Patterns Reference

How to Use the File Transfer Activity in Automation Studio


In Marketing Cloud Automation Studio, you can unzip or decrypt a file found in the Marketing Cloud's Enhanced FTP directory. With the
File Transfer Activity, you can securely transfer files from the Marketing Cloud's secure file transfer location, the Safehouse, to a selected
FTP location.
• If you used a Marketing Cloud Public Key to encrypt a file in the Enhanced FTP directory, use Manage File, to unzip, or decrypt it. If
you used Key Management for encryption, contact your account executive for other options.
• To move a file from the Marketing Cloud's secure file transfer location to a designated FTP location, use Move a File From Safehouse,
formerly the Upload option.

Considerations
Marketing Cloud assumes that the FTP Server in the selected File Transfer Location is reporting time in UTC (no time zone offset). If the
remote FTP server is not using UTC, adjust the specified hour limit to account for the variance. If the activity is used in an automation,
use system buffer.
Check out these other documentation pages for more information:

116
Marketing Cloud Journeys and Automations Automation Studio Activities

Create a File Transfer Activity in Automation Studio


In Marketing Cloud Automation Studio, to move, unzip, encrypt, or decrypt a file, create a file transfer activity.
Manage a File with the File Transfer Activity in Automation Studio
In Marketing Cloud Automation Studio, unzipped or decrypted files using file transfer are typically named according to a filename
pattern. If the file you’re unzipping or decrypting resulted from a data extract activity, the file name pattern must match the data
extract pattern.
Move a File with the File Transfer Activity in Automation Studio
In Marketing Cloud Automation Studio, files moved from the safehouse to an FTP location are typically named according to a file
name pattern. If your moved file is from a data extract activity, the file name pattern must match the data extract that it was configured
to produce.
Substitution Strings Example
Use substitution strings in a file transfer activity or import activity in Marketing Cloud Automation Studio.

SEE ALSO:
Marketing Cloud SFTP Guide
File Locations
Key Management
Filename Patterns Reference

Create a File Transfer Activity in Automation Studio


In Marketing Cloud Automation Studio, to move, unzip, encrypt, or decrypt a file, create a file transfer activity.
1. Select the File Transfer activity and drag to the automation canvas.
2. Click Choose.
3. Click Create New File Transfer Activity.
4. Provide the following details about the activity.
a. Name: Provide a unique name.
b. Description(optional): Identify the activity so others using the account know what it is.
c. External Key(optional): Provide a value you choose that uniquely identifies the activity. Use this value to identify the activity when
using the API.

5. Select a file action: Manage File or Move a File From Safehouse.

Manage a File with the File Transfer Activity in Automation Studio


In Marketing Cloud Automation Studio, unzipped or decrypted files using file transfer are typically named according to a filename pattern.
If the file you’re unzipping or decrypting resulted from a data extract activity, the file name pattern must match the data extract pattern.
1. In Automation Studio, complete the fields on the Configuration page.

117
Marketing Cloud Journeys and Automations Automation Studio Activities

Checkbox Information
File Naming Pattern The name or naming pattern of the file. You can enter a static
name or you can include placeholders for the date. Use these
personalization strings for file naming.
• %%Year%%
• %%Month%%
• %%Day%%
• %%Hour%%
• %%Minute%%
• %%Second%%

Important: If you use the %%Second%% and


%%Minute%% personalization strings, a File Not Found
error can occur. The error is a result of the extended time
required to process those strings.

Use local time zone setting Select if you want the activity to match the date and time
personalization strings to the same time zone of the activity
creator. The activity compares the values to the current CST time
by default. The timestamp for the resulting file isn’t updated, the
checkbox only adjusts the time-frame the File Transfer looks for.

Source File Location The location where the system can find the file.

Tip: Use these file types for each transfer activity:


• Unzip compressed file: .zip .gz .tar
• Decrypt file .pgp .gpg
• Move: No validation for filename extension.

2. Select unzip and decryption actions according to the storage method in the file.

Note: This activity outputs the unzipped, decrypted version of the target file to the import folder.

3. Set qualifications to skip or fail a file.

Note: Automation Studio examines the modified date of the file as reported by the FTP Server in the selected File Transfer
Location. If the difference between the modified date and the current system time is greater than the specified hours, the file
transfer activity errors.

4. Click Next.

Move a File with the File Transfer Activity in Automation Studio


In Marketing Cloud Automation Studio, files moved from the safehouse to an FTP location are typically named according to a file name
pattern. If your moved file is from a data extract activity, the file name pattern must match the data extract that it was configured to
produce.
1. In Automation Studio, identify the file name pattern that corresponds to the files to transfer and file location.

118
Marketing Cloud Journeys and Automations Automation Studio Activities

2. Choose a transfer setting.


• To encrypt a file before it is transferred, select an encryption method.

3. If a public key has been configured in Setup, select it.


• Choose the appropriate key and use it as part of the file encryption process. Whether you encrypt or decrypt a file, use the same
public key for the file in each operation.

Important: This file transfer activity doesn’t support encrypted files larger than 2 GB. Reduce the file size or use an external
FTP site instead.

Substitution Strings Example


Use substitution strings in a file transfer activity or import activity in Marketing Cloud Automation Studio.
Place these substitution strings in the File Naming Pattern field of a file transfer activity or import activity. Use these strings to reuse the
trigger file in a subsequent step of a file drop automation.
%%FILENAME_FROM_TRIGGER%%

This string returns the name of the file placed in the FTP folder. Prefixes, suffixes, and file extensions are not allowed. The automation
engine doesn’t read file extensions, so any characters that follow the final dot [.] in a file name are excised.

Substitution String File Dropped Result


%%FILENAME_FROM_TRIGGER%% Myfilename.txt.gpg.zip Myfilename.txt.gpg.zip

%%FILENAME_FROM_TRIGGER%%.zip Myfilename.txt.gpg.zip Invalid – no suffix allowed

%%FILENAME_FROM_TRIGGER_BASE%%

This string returns the name of the file without the final file extension. Prefixes, suffixes, and extension substitutions are allowed.

Substitution String File Dropped Result


%%FILENAME_FROM_TRIGGER_BASE%% Myfile.txt.zip.gpg Myfile.txt.zip

%%FILENAME_FROM_TRIGGER_BASE%%.gpg Myfile.txt Myfile.gpg

%%BASEFILENAME_FROM_TRIGGER%%

This string returns the name of the file without any file extensions. Prefixes, suffixes, and extension substitutions are allowed.

Substitution String File Dropped Result


%%BASEFILENAME_FROM_TRIGGER%% Myfile.txt Myfile

%%BASEFILENAME_FROM_TRIGGER%% Myfile.txt.zip.gpg Myfile

%%BASEFILENAME_FROM_TRIGGER%%.dat Myfile.txt Myfile.dat

%%BASEFLIENAME_FROM_TRG
I GER%%_%%Month%%_%%Day%%t.xt Myfile.txt Myfile_02_18.txt

%%Month%%_%%Day%%_%%BASEFLIENAME_FROM_TRG
I GER%%t.xt Myfile.txt 02_18_Myfile.txt

119
Marketing Cloud Journeys and Automations Automation Studio Activities

Substitution String File Dropped Result


%%BASEFILENAME_FROM_TRIGGER%%.txt Myfile.02.08.txt Myfile.txt

SEE ALSO:
Filename Patterns Reference

Script Activity
A Server-Side JavaScript activity contains your Server-Side JavaScript and executes that script when started, either on its own or as part
of an automation in Automation Studio. You provide the Server-Side JavaScript, a name, external key, and description to identify the
activity within the application interface and for API calls.
The Server-Side JavaScript activity includes Server-Side JavaScript scripts as part of a program that runs at a predetermined interval. Use
Server-Side JavaScript activities to host and run resources for landing pages. Order these scripts within an automation to run in any
sequence.

Note: The Marketing Cloud must enable this feature for your account. Contact your Marketing Cloud relationship manager for
more information.

Note: The Server-Side JavaScript activity times out after 30 minutes.

Example: Use Server-Side JavaScript to perform these actions inside an automation:


• Create a data extension
• Import information into that data extension
• Filter out those subscribers with a birthday in the next week
• Send an email to those subscribers

Create a Script Activity


Add your own Server-Side JavaScript using this Automation Studio activity to accomplish any task for which you would use Server-Side
JavaScript in an email or landing page.

Create a Script Activity


Add your own Server-Side JavaScript using this Automation Studio activity to accomplish any task for which you would use Server-Side
JavaScript in an email or landing page.
1. Click Create Activity.
2. Select Script.
3. Add all applicable details.
4. Enter your Server-Side JavaScript.
5. Click Validate Syntax to test your JavaScript. This step does not ensure that the script runs successfully, but it ensures that the
Server-Side JavaScript uses valid syntax.

120
Marketing Cloud Journeys and Automations Automation Studio Activities

SEE ALSO:
Server-Side JavaScript Sample Code

Filter Activity
Apply the logic of a data filter you select to create a group or data extension in Automation Studio. Filtering subscribers or contacts
makes targeting specific subscribers or contacts based on their attributes and other conditions easier.

Note: The filter activity always overwrites existing rows in the data extension.

Considerations
• Data filters are created in Email Studio. Create the data filter you plan to use in the filter activity before configuring the activity.
• If you select a filter that is based on profile attributes, select the list to segment with the filter. Provide a name for the group that
contains the resulting segment.
• If you are filtering a data extension, a new data extension is created as a destination for filtered contact records. Select the data filter
and provide a name for the data extension where the resulting segment is added. Selecting a data extension to filter is not necessary;
selecting this data extension is required when creating a data filter.

121
Marketing Cloud Journeys and Automations Automation Studio Activities

Create a Filter Activity


Apply a data filter to create a group or data extension containing records that meet a set of criteria. For example, use a filter activity
in Automation Studio to sort out subscribers from a larger subscriber list.

SEE ALSO:
Data Filters without Enhanced Subscriber Features in Marketing Cloud
Data Filters with Enhanced Subscriber Features in Marketing Cloud

Create a Filter Activity


Apply a data filter to create a group or data extension containing records that meet a set of criteria. For example, use a filter activity in
Automation Studio to sort out subscribers from a larger subscriber list.

Note: Before using a filter activity, create a data filter in Email Studio.

1. Click Create Activity.


2. Select Filter.
3. Provide a name, folder location, external key, and description to identify and describe the activity.
4. Choose a filter definition to see its details. Check the Filter Type to confirm that the filter definition applies to the data source, list, or
data extension you intend.

5. If your data filter is applied to profile attributes, select a source list created in Email Studio.

Note: If your data filter is applied to a data extension, selecting a source list is not necessary. The data extension selected
when configuring the data filter is the source.

122
Marketing Cloud Journeys and Automations Automation Studio Activities

6. If your data filter is applied to profile attributes, name the group that is created when this filter activity runs and choose a group
folder to store it.
7. If your data filter is applied to a data extension, a new data extension is created as a destination for filtered contact records. Provide
a name, external key, and description of this data extension so you can identify it after the activity runs.

Data Extract Activity


The Automation Studio data extract activity creates one or more zipped files for your use outside the Marketing Cloud application. It can
also be used to convert an XML file into a comma-delimited, tab-delimited, or pipe-delimited file for import into your account.

Note: Extract types must be provisioned for your account. Contact your Marketing Cloud representative for more information.

Note: As of May 25, 2018, email extracts that reference individual subscribers no longer include subscribers who were deleted
using the legacy Email Studio delete functionality.

Considerations
• A File Transfer Location must be configured and specified in Account Settings before using the data extract activity.
• Use the file transfer activity to place extracted data in a file location you choose. Data extract files are supplied in .zip format.
• When using the data extract activity in an automation, include the file transfer activity in a separate step. This action prevents the
file transfer activity from looking for the data extract file before the data extract is complete.
• The fields included in a data extract file vary according to the Extract Type you choose.
• You set Extract Range, or the period for which to extract tracking data. The Extract Range always ends at the time the data extract
activity starts.
• Not all extract types use a date range.

123
Marketing Cloud Journeys and Automations Automation Studio Activities

• When selecting the Extract Multiple Data Extension List Data option using the standard tracking extract, run the extract at the
Enterprise level.
• When you select the "Include" option for a data extract, one of the compressed files the activity produces contains the data you
included.
• Click and open tracking data is rounded to the nearest second.
• To ensure that the file transfer activity can find your data extract file, don’t use %%Minute%% or %%Second%% variables in the file
name pattern.

Note: When setting time zone for a tracking extract output file, select Use Local TZ in Query. When this option isn’t selected,
the output file defaults to Central Standard Time and doesn’t observe Daylight Savings Time. This option isn’t available for data
extension extracts.

Example: If you create an extract that includes "Extract Clicks," then select "Include Unique Clicks," the unique clicks data appears
in the Clicks file. The activity doesn’t produce a separate file labeled "Unique Clicks."

Example: If you choose an extract range of seven days, the activity extracts tracking information for the last seven days up to the
minute the activity runs.

Create a Data Extract File


Create a file to use outside of the application with Automation Studio’s Data Extract activity. This activity can also be used to transform
an XML file to a comma-delimited, tab-delimited, or pipe-delimited file for import into your account. Set up a file transfer activity to
pull your data extract file from the Safehouse and drop it in your FTP location.
Configure a Tracking Extract
Tracking extracts can output several types of data related to an email send in Email Studio.
Extract Types
Refer to the topic that corresponds with the extract type you are using.
Extract Outputs Reference
This table describes the outputs available for the Tracking Extract extract type.
Create an Audit Trail Data Extract Activity
The extract activity extracts your audit data to prepare it for file transfer.

Create a Data Extract File


Create a file to use outside of the application with Automation Studio’s Data Extract activity. This activity can also be used to transform
an XML file to a comma-delimited, tab-delimited, or pipe-delimited file for import into your account. Set up a file transfer activity to pull
your data extract file from the Safehouse and drop it in your FTP location.
1. Click Create Activity.
2. Select Data Extract.
3. Add a name, external key, and description for the activity.
4. Enter a file naming pattern so that the activity knows what to name the file it creates. Use the following personalization strings in
your filename: %%Year%% %%Month%% %%Day%% %%Hour%%

Note: Ensure that the file name patterns match in the Data Extract Activity and the File Transfer Activity. To make sure the
file names match, don’t use %%Minute%% or %%Second%% variables in the file name pattern.
a. Use when you’ve set up a workflow to drop a file whose auto-generated filename matches a pattern into the file location.

124
Marketing Cloud Journeys and Automations Automation Studio Activities

b. Enter a static name or include placeholders for the date, keeping in mind that they’re case-sensitive. If a filename includes
personalization strings that are capitalized, capitalize them in the file naming pattern.
c. Include a .zip extension for tracking extract and .csv to a data extension extract.

5. To determine the web analytics tools used to interpret the extracted file, select an extract type. The value you select determines the
data you can include in the file.

Note: Extract types must be provisioned for your account. Contact your Salesforce Marketing Cloud representative for more
information.

6. To determine the date range for information to include in the extract file, select an extract range. Choose 1 day, 7 days, or 30 days.
7. Select a type of file encoding to use.
8. Configure the extract by choosing the fields that appear in the data extract file.
a. Select a field name to include it in the data extract file.
b. If the data extract you choose includes the columnDelimiter field, insert the character you wish to use as a delimiter within the
data extract.
c. Valid choices include the following characters:
• ,
• tab
• |

Note: When setting time zone for a tracking extract output file, select Use Local TZ in Query. When this option isn’t
selected, the output file defaults to Central Standard Time and doesn’t observe Daylight Savings Time. This option isn’t
available for data extension extracts.

125
Marketing Cloud Journeys and Automations Automation Studio Activities

Configure a Tracking Extract


Tracking extracts can output several types of data related to an email send in Email Studio.
Create a data extract activity.
1. In a data extract activity, select the Tracking Extract extract type.
2. Specify the range of time to include in the data extension extract.
• Select Rolling Range and 1, 7, 30, 60, or 90 days to include data for this range every time you run the data extension extract.
• Select Specific Range and enter the start and end dates. You can select up to 30 days.

3. Enter the accounts used to extract tracking information.


• A blank field extracts information from the account running the extract.
• An asterisk extracts information from all accounts and subaccounts in an Enterprise account.
• A comma-delimited list of account ID numbers extracts information from only those accounts inside an Enterprise account.

4. Enter the accounts for which you want to include the Attributes file if ExtractAttributes is enabled for your account.
• A blank field returns no attributes.
• A comma-delimited list of attribute names returns attribute files for those accounts. If the attribute does not exist for an account
or subaccount, this action returns no attributes.

5. Enter an email send definition external key to filter data from a specific send.
6. Select the outputs to include.
• Attributes
• Bounces
• ClickImpressions
• Clicks
• Conversions
• ListMembershipChanges
• Lists
• NotSent
• Opens
• SendJobImpressions
• SendJobs
• Sent
• SentImpression
• StatusChanges
• Subscribers
• SurveyResponses
• Unsubs

7. Choose the extract range.


A blank field uses the date range associated with the tracking extract. Previous Month overrides any other information and creates
the tracking extract from the previous month's data.

8. Enter the format in which you want the tracking extract to be created.

126
Marketing Cloud Journeys and Automations Automation Studio Activities

• CSV returns a comma-delimited file. The tracking extract defaults to this value.
• Tab returns a tab-delimited file.
• XML returns an XML file where supported.

Note: Review Tracking Extract Output to determine if XML is a valid option.

Note: Do not use .txt to indicate a tab-delimited file. Although .txt is the file extension for a tab-delimited file, entering txt as
the format can cause errors.

9. Select IncludeAllListMembers to include all list members in the tracking extract.


To include only list members with activity during the specified period, do not select IncludeAllListMembers.

10. Select IncludeAllSubscribers to include all subscribers in the tracking extract’s Subscribers file.
To include only subscribers with activity corresponding to the events included in the extract, do not select IncludeAllSubscribers.

11. Select IncludeInferredOpens to include inferred opens, which are clicks in an email without a recorded open.
To include only opens where the email was clicked and rendered, do not select IncludeInferredOpens.

12. Select Include User Agent Information to include user agent data related to the open or click, such as operating system, email
client, browser, or device.
13. Select QuoteText to surround text with double quotation marks.
This process replaces existing double quotes in the tracking extract by two single quotation marks.

14. To filter the tracking extract, enter a comma-delimited list of SendIDs.


If you specify the external key of an email send definition in the extract, the extract includes information from all SendIDs and the
email send definition.

15. Enter a character to use as a text qualifier.


The default value is a double quotation mark.

16. Select UnicodeOutput to save the extract in UTF-16 format instead of ASCII.
17. Save the activity.
Start the activity.

Extract Types
Refer to the topic that corresponds with the extract type you are using.

Convert XML
This data extract type converts XML files to delimited files for import into data extensions or lists. Use this extract for simple XML files
only, as files with subnodes on attributes require a different process. Contact your Marketing Cloud account representative for
additional information.
Data Extension Extract in Automation Studio
This Marketing Cloud Automation Studio data extract type extracts information from a data extension and places it in a delimited
file.
GlobalUnsubImport
Use this data extract to import data into the global unsubscribe list for an Enterprise 1.0 account. Only Enterprise 1.0 accounts with
the GlobalUnsub feature can use this data extract.

127
Marketing Cloud Journeys and Automations Automation Studio Activities

Marketing Cloud for Microsoft Dynamics CRM Tracking Data Extract


This data extract activity provides information on tracking data extracted from accounts using the Marketing Cloud for Microsoft
Dynamics CRM integration. This data extract activity functions only with version 4.0 of the Marketing Cloud for Microsoft Dynamics
CRM integration.
Tracking Extract
Tracking extracts provide granular tracking data for import from Email Studio into external systems. Use tracking extracts to export
granular data regarding several different aspects of email send jobs, such as clicks, bounces, and survey data, from Marketing Cloud.
Then, import that information into an automation or system.
Create a Zip Data Extract
Use the a zip data extract activity to compress exported files to your FTP site. Zip data extract can be a one-time activity or part of a
recurring automation.
Contacts Without Channel Addresses
Find and manage your contacts that aren’t associated with any channels. Understand the source of your contacts and delete the
ones you don’t want.

Convert XML
This data extract type converts XML files to delimited files for import into data extensions or lists. Use this extract for simple XML files
only, as files with subnodes on attributes require a different process. Contact your Marketing Cloud account representative for additional
information.
The Convert XML data extract requires this information:
• Name - name of the data extract
• External Key - optional value used to identify the extract in API calls
• Description - optional description for the extract
• File Naming Pattern - Name of the zipped file created by the extract process. You can include these wildcard specifiers:
– %%Year%%
– %%Month%%
– %%Day%%

• CreateColumnHeaders checkbox - This checkbox indicates whether the XML file used in the conversion contains information used
to create column headers. If the XML file does contain this information, you can map the resulting delimited file for import by column
heading. If the XML file does not contain header information, map the delimited file by ordinal when you import the data.
• FileFormat - indicates the file type for the exported file:
– csv - indicates a comma-delimited file
– tab- indicates a tab-delimited file
– Any other value in this field defaults to tab

Note: If using CSV, the file has a name such as filename.csv.

• InputFileName - the XML file for the activity to convert. This activity requires files on your FTP server. The activity creates the output
file in the same location on the FTP server.
• QuoteCharacter - defines the quote character used by the system to determine to differentiate attributes in the XML file from the
element names
• The last field contains the name of the element for which the converting process creates a row.

128
Marketing Cloud Journeys and Automations Automation Studio Activities

Example: This example XML file would use /subscribers/subscriber as the element for which to creates a row, since that element
indicates when a new record starts:
<subscribers>
<subscriber>
<first_name>Lee</first_name>
<last_name>Billings</last_name>
<email>[email protected]</email>
</subscriber>
<subscriber>
<first_name>Kris</first_name>
<last_name>Rogers</last_name>
<email>[email protected]</email>
</subscriber>
</subscribers>

Data Extension Extract in Automation Studio


This Marketing Cloud Automation Studio data extract type extracts information from a data extension and places it in a delimited file.

Note: Using a standard data extension extract doesn't guarantee that the extracted rows are in the same order they were inserted.
To enforce a specific order, create a custom extract.
The Data Extension extract type requires this information in the fields section:
• The character you want to use to delimit each column. Marketing Cloud defaults to a comma, but you can enter tab for a tab-delimited
file or | for a pipe-delimited file.
• The data extension's external key in the DECustomerKey field
• HasColumnHeaders determines whether the extract file includes column headers
• TextQualified determines whether text within the data extension appears within double quotation marks
• UsesLineFeed determines whether a new line is generated based on the field selected in the data extension
Create a file transfer activity and select Move a File From Safehouse as the File Action. Add the name of the file from the data extension
data extract in the File Naming Pattern field to move the extract to another file location.

Note: Make sure to use the same file naming pattern for the file transfer activity that you use when setting up the data extension
extract using the data extract activity.
Save both the data extract and the file transfer activity. Then, create an automation that includes the data extract as the first step with
the file transfer activity next. You can run the automation one time or set it to run at scheduled times. Use third-party FTP software to
move the file from your chosen file location to your computer.

GlobalUnsubImport
Use this data extract to import data into the global unsubscribe list for an Enterprise 1.0 account. Only Enterprise 1.0 accounts with the
GlobalUnsub feature can use this data extract.
Provision the GlobalUnsubImport extract in the Enterprise parent account.
This data extract includes two options:
• GlobalUnsubCategory - Select the name of the global unsub category to use for email addresses added via the import. If the provided
category does not exist, the process creates it.
• InputFileName - Provide the name of the file containing the email addresses.

129
Marketing Cloud Journeys and Automations Automation Studio Activities

Review the GlobalUnsub table in the customer database to validate the extract added the email addresses to the list.

Marketing Cloud for Microsoft Dynamics CRM Tracking Data Extract


This data extract activity provides information on tracking data extracted from accounts using the Marketing Cloud for Microsoft Dynamics
CRM integration. This data extract activity functions only with version 4.0 of the Marketing Cloud for Microsoft Dynamics CRM integration.
Contact your Marketing Cloud account representative to enable this feature.
This tracking data extract retrieves tracking information at a specified, preferably off-peak time, as opposed to real-time tracking data.
Moving the retrieval process enhances the performance of large-volume sends while still providing the necessary tracking data. The
data extract can consist of up to 6 files, including this information:

JobSubscribers SendLinks SendResult SubscriberLinkDetails SubscriberSendResult UnsubEvent


JobID JobID ID JobID JobID UnsubEvent

EmailID Alias EmailName SubscriberID EmailID EventDate

EmailName Url EmailSubject SubscriberKey EmailName PartnerKey

EmailSubject LastClicked Subject Alias EmailSubject Client.ID

FromName TotalClicks FromName URL FromName

FromEmailAddress UniqueClicks SentDate LastClicked FromEmailAddress

DeliveredTime pkjoburlid NumberSent TotalClicks DeliveredTime

OpenDate PartnerKey Delivered pkjoburlID OpenDate

ClickDate NumberDelivered PartnerType ClickDate

UnsubscribeDate OtherBounces UnsubscribeDate

LastOpenDate SoftBounces LastOpenDate

LastClickDate HardBounces LastClickDate

BounceDate Clicks BounceDate

EventDate UniqueClicks EventDate

TotalClicks UniqueOpens TotalClicks

UniqueClicks Unsubscribes UniqueClicks

SubscriberPartnerKey OpenRate OtherBounce

SubscriberID DeliverabilityRate SoftBounce

SubscriberKey UnsubRate HardBounce

PartnerType ClickThroughRate SubscriberPartnerKey

SendPartnerKey SendDate SubscriberEmail

RltdObjectID Client.ID SubscriberID

MemberID ExistingUndeliverables SubscriberKey

130
Marketing Cloud Journeys and Automations Automation Studio Activities

JobSubscribers SendLinks SendResult SubscriberLinkDetails SubscriberSendResult UnsubEvent


PreviewURL ExistingUnsubscribes PartnerType

Duplicates SendPartnerKey

MissingAddresses RltdObjectID

InvalidAddresses MemberID

PartnerKey PreviewURL

EmailID LastAction

EventDate

Status

StatusID

OrigJobStatusID

OrigJobStatus

PreviewURL

Configure the Marketing Cloud for Microsoft Dynamics CRM Tracking Data Extract
Task information for configuring the Marketing Cloud for Microsoft Dynamics CRM Tracking Data Extract
Import the Marketing Cloud for Microsoft Dynamics CRM Tracking Data Extract into Your Dynamics CRM Instance
Task information for importing the Marketing Cloud for Microsoft Dynamics CRM Tracking Data Extract into your Dynamics CRM
Instance.

Configure the Marketing Cloud for Microsoft Dynamics CRM Tracking Data Extract
Task information for configuring the Marketing Cloud for Microsoft Dynamics CRM Tracking Data Extract
1. Specify the range of time to include in the data extension extract:
• Rolling Range - Select Rolling Range and set the dropdown menu to 1, 7, 30, 60, or 90 days, depending on the time range to
include every time you run the data extension extract.
• Specific Range - Select Specific Range and enter the start and end dates in the calendar fields. Select up to 30 days in your
range.

2. Select to include aggregate tracking data.


3. Select to include data from child accounts.
4. Select to include individual subscriber responses in your data.
5. Select to include job recipients in your data.
6. Select to include link details in your data.
7. Select to include send links in your data.
8. Create a file transfer activity set to Upload and the name of the file from the data extension data extract in the File Naming Pattern
field.

131
Marketing Cloud Journeys and Automations Automation Studio Activities

Once you save the data extract and the file transfer activity, create an automation that includes the data extract as the first step and the
file transfer activity as the second step. You can run the automation once or set it to run at scheduled times. Use third-party FTP software
to move the file from your chosen file location to your computer.

Import the Marketing Cloud for Microsoft Dynamics CRM Tracking Data Extract into Your Dynamics CRM Instance
Task information for importing the Marketing Cloud for Microsoft Dynamics CRM Tracking Data Extract into your Dynamics CRM Instance.
1. On the Dynamics CRM server, click Start.
2. Select All Programs.
3. Select ExactTarget.
4. Select ExactTarget Configuration Editor.
5. Click Data Extract Import.
6. Select Enabled. Enter the data extract file name in the File Naming Pattern field.
7. Select your chosen schedule for the import.
8. Select FTP in the Extract Source field.
9. Enter the location where the file is saved on your server.
10. Enter the FTP server where the data extract file resides.
11. Enter import/.
12. Enter your FTP username.
13. Enter your FTP password.
14. Click Import.

Tracking Extract
Tracking extracts provide granular tracking data for import from Email Studio into external systems. Use tracking extracts to export
granular data regarding several different aspects of email send jobs, such as clicks, bounces, and survey data, from Marketing Cloud.
Then, import that information into an automation or system.
Tracking extracts retrieve data before sends execute. The data includes information on any subscriber listed as undeliverable or excluded
by List Detective. You can also schedule tracking extracts via an automation. Tracking extracts also include column heading information.
Use a .zip file extension for the output file when creating a data extract. The application returns tracking extract data in a zip file. The size
of that file can vary depending on the amount of activity, the accounts involved, and the types of data requested. The output file's suffix
must match.

Name Description
SendID Marketing Cloud identifier for the associated send. Found in
Tracking as JobID.

ClientID Marketing Cloud account identifier. Datasets contain multiple


ClientID values when extracting multiple subaccounts.

SubscriberID Marketing Cloud internal subscriber identifier

SubscriberKey Marketing Cloud subscriber identifier, defaults to email address

Email Address Default unique identifier for a standard account configuration

132
Marketing Cloud Journeys and Automations Automation Studio Activities

Primary Key Tables


• Attributes
• Lists
• ListMembership
• SendJobs
– ClientID
– SendID
– SubscriberKey
– EventDate
– BatchID

• Sent
• Subscribers
– SubscriberID

• StatusChange

Event Tables
• Soft Keys
– ClientID
– SendID
– SubscriberKey
– EventDate
– BatchID

• Bounces
• Clicks
• Conversions
• Opens
• Surveys
• Unsubs

Note: Event tables sometimes include duplicate rows due to differences in time by seconds or larger.

Tracking Extract Configuration in Automation Studio


You can create a data extract activity in Marketing Cloud Automation Studio using the Extract Type dropdown. To specify the data
you want to include, configure the tracking extract fields. See the example at the end of this section for a categorization of extraction
objects. When you’ve configured it, start your activity to produce results.
API Data Extract Options
To better organize your extracted data from Marketing Cloud Email Studio, use this categorization of the extract API Data Extract
options for your SQL database.
Tracking Extract Output
Tracking extracts output several types of Marketing Cloud data related to an email send.

133
Marketing Cloud Journeys and Automations Automation Studio Activities

Tracking Extract Configuration in Automation Studio


You can create a data extract activity in Marketing Cloud Automation Studio using the Extract Type dropdown. To specify the data you
want to include, configure the tracking extract fields. See the example at the end of this section for a categorization of extraction objects.
When you’ve configured it, start your activity to produce results.

Note: You must have the Tracking Extract feature provisioned for your account. Contact your Marketing Cloud representative for
more information.

Field Description
Rolling Range or Specific Range Range of time to include in the tracking extract. All ranges are from
12 AM to 12 AM.
• For a Rolling Range, set the dropdown to 1, 7, 30, 60, or 90
days, to include every time you run the data extension extract.
• For a Specific Range, enter the start and end dates in the
calendar fields under the radio button. Select up to 30 days in
your range.

134
Marketing Cloud Journeys and Automations Automation Studio Activities

Field Description
AccountIDs Accounts used to extract tracking information.
• A blank field extracts information from the account running
the extract.
• An asterisk extracts information from all accounts and
subaccounts in an Enterprise account.
• A comma-delimited list of account ID numbers extracts
information from only those accounts inside an Enterprise
account.

Attributes Accounts for which you want to include the Attributes file. This
section is only available if ExtractAttributes is enabled for your
account.
• A blank field returns no attributes.
• A comma-delimited list of attribute names returns attribute
files for those accounts. If the attribute doesn’t exist for an
account or subaccount, this action returns no attributes.

EmailSendDefinitionExternalKey Email send definition external key to filter data from a specific send.

Output Checkboxes View one or more tracking extract outputs.


• Attributes
• Bounces
• ClickImpressions
• Clicks
• Conversions
• ListMembershipChanges
• Lists
• NotSent
• Opens
• SendJobImpressions
• SendJobs
• Sent
• SentImpression
• StatusChanges
• Subscribers
• SurveyResponses
• Unsubs

ExtractRange Date range used to create the tracking extract.


• A blank field uses the date range associated with the tracking
extract.

135
Marketing Cloud Journeys and Automations Automation Studio Activities

Field Description

• Previous Month overrides any other information and creates


the tracking extract from the previous month's data.

Format Format in which you want the tracking extract to be created.


• csv returns a comma-delimited file. The tracking extract
defaults to this value.
• tab returns a tab-delimited file.
• xml returns an XML file where supported. To determine if XML
is a valid option, review Tracking Extract Output.

Note: Don’t use txt to indicate a tab-delimited file.


Although .txt is the file extension for a tab-delimited file,
entering txt as the format causes an error.

IncludeAllListMembers Includes all list members in the tracking extract. Leave this box
unchecked to include only list members with activity during the
specified time.

IncludeAllSubscribers Includes all subscribers in the Subscribers file of the tracking extract.
Leave this box unchecked to include only subscribers with activity
corresponding to the events you select to include in the extract.

IncludeInferredOpens Includes all inferred opens, or email clicks without a recorded open.
Leave this box unchecked to include only specific opens where
the email was clicked and rendered.

Include User Agent Information Includes user agent data related to the open or click, such as
operating system, email client, browser, or device.

QuoteText Surrounds all text with double quotation marks. This process
replaces existing double quotes in the tracking extract by two
single quotation marks. To use a text qualifier, select this option
and enter the text qualifier.

SendIDs or JobIDs Enter a comma-delimited list of SendIDs to filter the tracking


extract. Specify the external key of an email send definition in the
extract as well to include information from all SendIDs and the
email send definition. A blank field returns job details for the entire
specified range.

TextQualifier Select Quote Text to enable use of a text qualifier. Enter a character
to use as a text qualifier. This value defaults to a double quotation
mark.

UnicodeOutput Saves the extract in UTF-16 format instead of ASCII.

SEE ALSO:
Create an Audit Trail Data Extract Activity

136
Marketing Cloud Journeys and Automations Automation Studio Activities

API Data Extract Options


To better organize your extracted data from Marketing Cloud Email Studio, use this categorization of the extract API Data Extract options
for your SQL database.
Output File Options
• OutputFileName
• Format
• FileFormat
• QuoteText
• TextQualifier
• ColumnDelimiter
• UnicodeOutput
• CharacterEncoding
Notifications
• NotificationEmail
Date Options
• StartDate
• EndDate
• Timezone
• UseLocalTZinQuerypublic
• IncludeMilliseconds
Qualifiers
• AccountIDs
• Attributes
• SendIDs
• EmailSendDefinitionExternalKey
Subscribers
• ExtractSubscribers
• IncludeAllSubscribers
• ExtractAttributes
• extractStatusChanges
Send Job
• ExtractSendJobs
• ExtractSendJobImpressions
Sent
• ExtractSent
• ExtractNotSent
• ExtractSendData
• ExtractSendImpressions
• IncludeTestSends

137
Marketing Cloud Journeys and Automations Automation Studio Activities

• IncludeCampaignID
Opens
• ExtractOpens
• IncludeUniqueOpens
• IncludeInferredOpens
• IncludeGEO
• IncludeUserAgentInformation
Clicks
• ExtractClicks
• ExtractClickImpressions
• IncludeUniqueClicks
• IncludeUniqueForURLClicks
Bounces
• ExtractBounces
Unsubscribes
• ExtractUnsubs
• IncludeUnsubReason
• ExtractSpamComplaints
Lists and Data Extensions
• extractListMembershipChanges
• extractLists
• IncludeAllListMembers
• ExtractMultipleDataExtensionListData
Conversions and Surveys
• ExtractConversions
• ExtractSurveyResponses
If you extract the data via API, you can specify whatever date range you need -- outside of the bounds of the interface. Generally, 6
months of engagement data is available for retrieval.

Tracking Extract Output


Tracking extracts output several types of Marketing Cloud data related to an email send.

Attributes
The attributes tracking extract output file contains the attributes associated with subscribers in an account.
Bounces
The bounce event extract file shows all the hard and soft bounces occurring within a specified date range. The events in this report
relate to all sends for subscribers on a list or related to a particular send.

138
Marketing Cloud Journeys and Automations Automation Studio Activities

ClickImpression
The click event extract file shows all the instances of a clicked link in an email occurring within the specified date range. The file also
includes the impression region name associated with the click event. The events in this report can relate to all sends for subscribers
on a list or related to a particular send.
Clicks
The click event extract file shows all instances of a clicked link in an email occurring within the specified date range. The events in
this report relate to all sends for subscribers on a list or related to a particular send.
Conversions
The conversions file contains a row for each conversion event associated with a subscriber related to an email send job.
ListMembershipChanges
The ListMembershipChanges file includes rows that contain information on the subscriber, list, and status data change for every
event.
Lists
The lists file contains rows including name, description, and other information for a unique list.
NotSent
This list contains information on send jobs and messages that didn’t send.
Opens
An Open event extract file shows open instances of an HTML email during the date range. The open events relate to all sends for
subscribers on a list or to a particular send.
SendImpression
The SendImpression event extract file shows instances of an email send occurring during a specified date range. The file also includes
the impression region name associated with the click event. The send events relate to all sends for subscribers on a list or to a
particular send.
SendJobImpression
The SendJobImpression file represents all impression tracking information from sends with activity logged against them for the
timeframe of the extract. This list reflects only jobs that already processed. Sends scheduled for the future do not appear in this list.
SendJobs
The SendJobs file represents all sends with activity logged against them for the timeframe of the extract. This list reflects only jobs
that already processed. Sends scheduled for the future do not appear in this list.
Sent
The Sent event extract file shows instances of an email send occurring during a specified date range. The send events relate to all
sends for subscribers on a list or to a particular send.
Spam Complaints
The Extract Spam Complaints extract file shows subscriber, list, and domain data, including sendID and date, for subscribers who
received an email and reported it as spam.
StatusChanges
The StatusChanges file shows instances of change in a subscriber's status.
Subscribers
The Subscribers file contains subscribers with a tracking event occurring during a specified data range.
Surveys
The Surveys file contains information on responses to surveys included in email sends.

139
Marketing Cloud Journeys and Automations Automation Studio Activities

Unsubs
The Unsubs file includes information on unsubscriptions that occurred during a specified data range. The unsubscribe events can
be related to all sends for subscribers on a list or to a particular send.

Attributes
The attributes tracking extract output file contains the attributes associated with subscribers in an account.
This extract only outputs data for subscribers who received one of these events over the specified time:
• Bounce
• Click
• FTAF
• Open
• Send
• Survey
• Unsubscribe
For Enterprise and Enterprise 2.0 accounts, not all attributes specified in the Attributes extract property exist in a child account. In this
case, the attribute value is left blank in the file.
Output Types
• CVS
• TAB
Columns
This file can include more columns depending on the attribute set specified in the Attributes extract property.

Table 4: Attributes
Name Description Possible Values Data Type Character Length
ClientID The system account -2^63 Numeric Maximum length - big
identifier associated with (-9,223,372,036,854,775,808) integer
attribute set to 2^63-1
(9,223,372,036,854,775,807)

SubscriberKey Customer-specified String 254


subscriber unique
identifier associated with
attribute set. By default,
the value is the same as
EmailAddress.

EmailAddress Subscriber email address String 254


identifier associated with
attribute set

SubscriberID System-generated Numeric Maximum length - big


subscriber unique integer
identifier associated with
attribute set. SubscriberID

140
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description Possible Values Data Type Character Length


relates to the Subscribers
file SubscriberID column.

Bounces
The bounce event extract file shows all the hard and soft bounces occurring within a specified date range. The events in this report relate
to all sends for subscribers on a list or related to a particular send.
Output Types
• CVS
• TAB
• XML
Columns

Table 5: Attributes
Name Description Possible Values Data Type Character Length
ClientID The system account -2^63 Numeric Maximum length - big
identifier associated with (-9,223,372,036,854,775,808) integer
attribute set to 2^63-1
(9,223,372,036,854,775,807)

SendID or JobID Identifier associated to an Number Maximum length - big


email send integer

SubscriberKey Customer-specified String 254


subscriber unique
identifier associated with
attribute set. By default,
the value is the same as
EmailAddress.

EmailAddress Subscriber email address String 254


identifier associated with
attribute set

SubscriberID System-generated Number Maximum length - big


subscriber unique integer
identifier associated with
attribute set. SubscriberID
relates to the Subscribers
file SubscriberID column.

ListID Identifier of the list ID Number Maximum length - big


associated with the integer
subscriber in the send

EventDate Date the bounce event Datetime


occurred

141
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description Possible Values Data Type Character Length


EventType Identifies event type Bounce String 6

BounceCategory Identifies bounce type • Block bounce String 50

• Hard bounce
• Soft bounce
• Unknown bounce
• Technical or other
bounce

SMTPCode SMTP code related to the Numeric Small integer


bounce

BounceReason Detailed reason for See Bounce Reason Table String 8000
bounce provided by
external ISP or MTA

BatchID Identifies batch Sample values: String 100


associated with a
triggered email sent SendD
IE,ventDateS,ubscbireKreyE,mA
aliddersTg,irgeerdSendExtenraKleyB,atchdI
event - defaults to 0 for a 12341,/2/2009"e,[email protected]"e",[email protected]"C",oupon1",
marketing list send 12341,/2/2009"e,[email protected]"e",[email protected]"C",oupon2",
12381,/10/2009"e,[email protected]"e",[email protected]"C",oupon1",

TriggeredSendExternalKey External key associated to String 100


a triggered send
definition if the bounce
resulted from a triggered
send request

Bounce Reason

Table 6: Bounce Reason


BounceSubcategoryText BounceSubcategoryDescription
Authentication Message lacks required authentication

Bad Address Syntax Email address in invalid

Complaints Your email is blocked due to complaints

Content Message was filtered due to content

Data Format Error Email is rejected due to formatting or line length errors

Domain Unknown Recipient domain doesn't exist

High Unknown Address Pct. Email is blocked due to the high quantity or percentage of
unknown or inactive addresses on your list

142
Marketing Cloud Journeys and Automations Automation Studio Activities

BounceSubcategoryText BounceSubcategoryDescription
Inactive Account Address is temporarily unavailable

Mailbox Full Recipient's mailbox is full or has exceeded storage allocation

Network Error Connection lost or timed out during delivery

Other Failed due to temporary failure or indecipherable bounce message

Other This address does not accept mail

Other This email is blocked by recipient

Other Mailbox temporarily unavailable

Server Too Busy Receiving email server is temporarily overwhelmed with delivery
attempts, from you and other senders

Spamblocked The remote mail server rejected this message due to characteristics
of spam

Temporary Domain Failure Receiving domain temporarily unavailable

Unknown Response from email provider that does not match a


BounceSubcategoryText value that Marketing Cloud recognizes.

Note: This response can contain non-alphanumeric


characters.

URL Block Emails containing your URLs are blocked

User Unknown Address is non-existent at the domain

ClickImpression
The click event extract file shows all the instances of a clicked link in an email occurring within the specified date range. The file also
includes the impression region name associated with the click event. The events in this report can relate to all sends for subscribers on
a list or related to a particular send.
Output Types
• CVS
• TAB
• XML
Columns

Table 7: ClickImpression
Name Description Possible Values Data Type Character Length
ClientID The system account -2^63 Numeric Maximum length - big
identifier associated with (-9,223,372,036,854,775,808) integer
attribute set to 2^63-1
(9,223,372,036,854,775,807)

143
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description Possible Values Data Type Character Length


SendID or JobID Identifier associated to an Number Maximum length - big
email send integer

SubscriberKey Customer-specified String 254


subscriber unique
identifier associated with
attribute set. By default,
the value is the same as
EmailAddress.

EmailAddress Subscriber email address String 254


identifier associated with
attribute set

SubscriberID System-generated Number Maximum length - big


subscriber unique integer
identifier associated with
attribute set. SubscriberID
relates to the Subscribers
file SubscriberID column.

ListID Identifier for the list the Number Maximum length - big
job sent to integer

EventDate Date click event occurred Datetime

EventType Identifier for the event Click String 6


type

SendURLID Unique identifier for Number Maximum length - big


individual URL in send integer

URLID Value used by applicable Number Maximum length - big


database to identify integer
target URL of the link

URL Target URL of the link String 4000

Alias Value in Alias attribute of String 500


the link

BatchID Identifies batch Sample values: Number Maximum length - big


associated with a integer
triggered email sent SendD
IE,ventDateS,ubscbireKreyE,mA
aliddersTg,irgeerdSendExtenraKleyB,atchdI
event - defaults to 0 for a 12341,/2/2009"e,[email protected]"e",[email protected]"C",oupon1",
marketing list send 12341,/2/2009"e,[email protected]"e",[email protected]"C",oupon2",
2381,/10/2009"e,[email protected]"e",[email protected]"C",oupon1",

TriggeredSendExternalKey External key associated to String 100


a triggered send
definition if the bounce

144
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description Possible Values Data Type Character Length


resulted from a triggered
send request

ImpressionRegionName Name of impression String 60


region associated with
the click impression
event

Clicks
The click event extract file shows all instances of a clicked link in an email occurring within the specified date range. The events in this
report relate to all sends for subscribers on a list or related to a particular send.
Output Types
• CSV
• TAB
• XML
Columns

Table 8: Clicks
Name Description Possible Values Data Type Character Length
ClientID The system account -2^63 Numeric Maximum length - big
identifier associated with (-9,223,372,036,854,775,808) integer
attribute set to 2^63-1
(9,223,372,036,854,775,807)

SendID or JobID Identifier associated to an Number Maximum length - big


email send integer

SubscriberKey Customer-specified String 254


subscriber unique
identifier associated with
attribute set. By default,
the value is the same as
EmailAddress.

EmailAddress Subscriber email address String 254


identifier associated with
attribute set

SubscriberID System-generated Number Maximum length - big


subscriber unique integer
identifier associated with
attribute set.SubscriberID
relates to the Subscribers
fileSubscriberIDcolumn.

ListID Identifier for the list the Number Maximum length - big
job sent to integer

145
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description Possible Values Data Type Character Length


EventDate Date click event occurred Datetime

EventType Identifier for the event Click String 6


type

SendURLID Unique identifier for Number Maximum length - big


individual URL in send integer

URLID Value used by applicable Number Maximum length - big


database to identify integer
target URL of the link

URL Target URL of the link String 4000

Alias Value in Alias attribute of String 500


the link

BatchID Identifies batch Sample values: Number Maximum length - big


associated with a integer
triggered email sent SendD
IE,ventDateS,ubscbireKreyE,mA
aliddersTg,irgeerdSendExtenraKleyB,atchdI
event - defaults to 0 for a 12341,/2/2009"e,[email protected]"e",[email protected]"C",oupon1",
marketing list send 12341,/2/2009"e,[email protected]"e",[email protected]"C",oupon2",
12381,/10/2009"e,[email protected]"e",[email protected]"C",oupon1",

TriggeredSendExternalKey External key associated to String 100


a triggered send
definition if the bounce
resulted from a triggered
send request

Browser Browser where click Text none


event occurred. This field
is included only if you
selected Include User
Agent Information.

EmailClient Email client the Text none


subscriber received the
email in. This field is
included only if you
selected Include User
Agent Information.

OperatingSystem Subscriber’s operating Text none


system. This field is
included only if you
selected Include User
Agent Information.

Device Device where click event Text none


occurred. This field is

146
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description Possible Values Data Type Character Length


included only if you
selected Include User
Agent Information.

Conversions
The conversions file contains a row for each conversion event associated with a subscriber related to an email send job.
Output Types
• CSV
• TAB
Columns

Table 9: Conversions
Name Description Possible Values Data Type Character Length
ClientID The system account -2^63 Numeric Maximum length - big
identifier associated with (-9,223,372,036,854,775,808) integer
attribute set to 2^63-1
(9,223,372,036,854,775,807)

SendID or JobID Identifier associated with Numeric Maximum length - big


an email send integer

SubscriberKey Customer-specified String 254


subscriber unique
identifier associated with
attribute set. By default,
the value is the same as
EmailAddress.

EmailAddress Subscriber email address String 254


identifier associated with
attribute set

SubscriberID System-generated Number Maximum length - big


subscriber unique integer
identifier associated with
attribute set. SubscriberID
relates to the Subscribers
file SubscriberID column.

ListID Identifier of the list ID Number Maximum length - big


associated with the integer
subscriber in the send

EventDate Date the bounce event Datetime


occurred

EventType Identifies event type Conversion String 10

147
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description Possible Values Data Type Character Length


BatchID Identifies batch Sample values: String 100
associated with a
triggered email sent SendD
IE,ventDateS,ubscbireKreyE,mA
aliddersTg,irgeerdSendExtenraKleyB,atchdI
event - defaults to 0 for a 1234,1/2/2009,"","","Coupon",1
marketing list send 1234,1/2/2009,"","","Coupon",2
1238,1/10/2009,"","","Coupon",1

TriggeredSendExternalKey External key associated to String 100


a triggered send
definition if the bounce
resulted from a triggered
send request

ReferringURL Referring URL used in the varchar


Social Forward activity

LinkAlias Value in the Alias String 500


attribute of the link

ConversionData Text none

URLID Value used by the Number Maximum length - big


applicable database to integer
identify the target URL of
the link

ListMembershipChanges
The ListMembershipChanges file includes rows that contain information on the subscriber, list, and status data change for every event.
Output Types
• CSV
• TAB
Columns

Table 10: ListMembershipChanges


Name Description Possible Values Data Type Character Length
ClientID The system account -2^63 Numeric Maximum length - big
identifier associated with (-9,223,372,036,854,775,808) integer
attribute set to 2^63-1
(9,223,372,036,854,775,807)

SubscriberKey Customer-specified String 254


subscriber unique
identifier associated with
attribute set. By default,
the value is the same as
EmailAddress.

148
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description Possible Values Data Type Character Length


EmailAddress Subscriber email address String 254
identifier associated with
attribute set

SubscriberID System-generated Numeric Maximum length - big


subscriber unique integer
identifier associated with
attribute set.SubscriberID
relates to the Subscribers
fileSubscriberIDcolumn.

ListID Identifier for the list the Numeric Maximum length - big
job sent to integer

ListName Name of list the job sent String 60


to

DateJoined Date subscriber joined list Datetime Small

JoinType Specifies how subscriber • API:Joined via the API String 20


joined the list
• Application:Joined
via wizard
• CustomObject:Joined
via a send to a data
extension
• FTAF:Foward to a
Friend
• Import:Joined via
file-based import
• Move/Copy:Result of
a move or copy
• Salesforce:Joined via
Salesforce
• Segmentation:Joined
by segmenting onto
a list
• WebCollect:Joined
via WebCollect
• Unspecified:Unspecified
join

DateUnsubscribed Date subscriber moved Datetime Small


to unsub status

UnsubscribeReason Reason for unsubscribe String 100

149
Marketing Cloud Journeys and Automations Automation Studio Activities

Lists
The lists file contains rows including name, description, and other information for a unique list.
Output Types
• CSV
• TAB
Columns

Table 11: Lists


Name Description Possible Values Data Type Character Length
ClientID The system account -2^63 Numeric Maximum length - big
identifier associated with (-9,223,372,036,854,775,808) integer
attribute set to 2^63-1
(9,223,372,036,854,775,807)

ListID Identifier for list the job Numeric Maximum length - big
sent to integer

Name Name of list String 100

Description Description of list String 100

DateCreated Date the application Datetime


added the list

Status Status of list • Active: A list available String 20


in the account
• Deleted: A list
available just for
tracking and
reporting purposes
due to deletion

ListType Type of list • Master: All String 20


Subscribers list
• Private: List that does
not display in the
default profile center
• Public: List that
displays in the default
profile center
• Group: A group
based on a list
• Other: Triggered
Send, Salesforce, or
Microsoft Dynamics
CRM hidden lists

150
Marketing Cloud Journeys and Automations Automation Studio Activities

NotSent
This list contains information on send jobs and messages that didn’t send.

Note: Only the most recent two months of data is available.

Output Types
• CSV
• TAB
Columns

Table 12: NotSent


Name Description Possible Values Data Type Character Length
ClientID The system account -2^63 Numeric Maximum length - large
identifier associated with (-9,223,372,036,854,775,808) integer
attribute set to 2^63-1
(9,223,372,036,854,775,807)

SendID or JobID Identifier associated with Number Maximum length - large


an email send integer

SubscriberKey Customer-specified String 254


subscriber unique
identifier associated with
attribute set. By default,
the value is the same as
EmailAddress.

EmailAddress Subscriber email address String 254


identifier associated with
the attribute set. If the
subscriber opted out, is
suppressed, or is
excluded by List
Detective, this value is
replaced with the
SubscriberKey.

SubscriberID System-generated Number Maximum length - large


subscriber unique integer
identifier associated with
attribute set.SubscriberID
relates to the Subscribers
fileSubscriberIDcolumn.

ListID Identifier for the list the Number Maximum length - large
job sent to integer

EventDate Date event occurred Datetime

EventType Identifier for the event NotSent String


type

151
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description Possible Values Data Type Character Length


BatchID Identifies batch Sample values: Number Maximum length - large
associated with a integer
triggered email sent SendD
IE,ventDateS,ubscbireKreyE,mA
aliddersTg,irgeerdSendExtenraKleyB,atchdI
event - defaults to 0 for a 12341,/2/2009"e,[email protected]"e",[email protected]"C",oupon1",
marketing list send 12341,/2/2009"e,[email protected]"e",[email protected]"C",oupon2",
12381,/10/2009"e,[email protected]"e",[email protected]"C",oupon1",

TriggeredSendExternalKey External key associated String 100


with a triggered send
definition if the bounce
resulted from a triggered
send request

Reason Detailed reason the email Text none


wasn’t sent

Opens
An Open event extract file shows open instances of an HTML email during the date range. The open events relate to all sends for
subscribers on a list or to a particular send.
Output Types
• CSV
• TAB
• XML
Columns

Table 13: Opens


Name Description Possible Values Data Type Character Length
ClientID System account identifier -2^63 Numeric Maximum length - big
associated with the (-9,223,372,036,854,775,808) integer
attribute set to 2^63-1
(9,223,372,036,854,775,807)

SendID or JobID Identifier associated with Number Maximum length - big


an email send integer

SubscriberKey Customer-specified String 254


subscriber unique
identifier associated with
attribute set. By default,
the value is the same as
EmailAddress.

EmailAddress Subscriber email address String 254


identifier associated with
attribute set

152
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description Possible Values Data Type Character Length


SubscriberID System-generated Number Maximum length - big
subscriber unique integer
identifier associated with
attribute set. SubscriberID
relates to the Subscribers
file SubscriberID column.

ListID Identifier for the list the Number Maximum length - big
job sent to integer

EventDate Date event occurred Datetime

EventType Identifier for the event Open String 6


type

BatchID Identifies batch Sample values: Number Maximum length - big


associated with a integer
triggered email sent SendD
IE,ventDateS,ubscbireKreyE,mA
aliddersTg,irgeerdSendExtenraKleyB,atchdI
event - defaults to 0 for a 12341,/2/2009"e,[email protected]"e",[email protected]"C",oupon1",
marketing list send 12341,/2/2009"e,[email protected]"e",[email protected]"C",oupon2",
12381,/10/2009"e,[email protected]"e",[email protected]"C",oupon1",

TriggeredSendExternalKey External key associated to String 100


a triggered send
definition if the bounce
resulted from a triggered
send request

SendImpression
The SendImpression event extract file shows instances of an email send occurring during a specified date range. The file also includes
the impression region name associated with the click event. The send events relate to all sends for subscribers on a list or to a particular
send.
Output Types
• CSV
• TAB
• XML
Columns

Table 14: SendImpression


Name Description Possible Values Data Type Character Length
ClientID System account identifier -2^63 Numeric Maximum length - big
associated with the (-9,223,372,036,854,775,808) integer
attribute set to 2^63-1
(9,223,372,036,854,775,807)

153
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description Possible Values Data Type Character Length


SendID Identifier associated to an Number Maximum length - big
email send integer

SubscriberKey Customer-specified String 254


subscriber unique
identifier associated with
attribute set. By default,
the value is the same as
EmailAddress.

EmailAddress Subscriber email address String 254


identifier associated with
attribute set

SubscriberID System-generated Number Maximum length - big


subscriber unique integer
identifier associated with
attribute set. SubscriberID
relates to the Subscribers
file SubscriberID column.

ListID Identifier for the list the Number Maximum length - big
job sent to integer

EventDate Date click event occurred Datetime

EventType Identifier for the event Sent String 6


type

BatchID Identifies batch Sample values: Number Maximum length - big


associated with a integer
triggered email send SendD
IE,ventDateS,ubscbireKreyE,mA
aliddersTg,irgeerdSendExtenraKleyB,atchdI
event - defaults to 0 for a 12341,/2/2009"e,[email protected]"e",[email protected]"C",oupon1",
marketing list send 12341,/2/2009"e,[email protected]"e",[email protected]"C",oupon2",
12381,/10/2009"e,[email protected]"e",[email protected]"C",oupon1",

TriggeredSendExternalKey External key associated to String 100


a triggered send
definition if the bounce
resulted from a triggered
send request

ImpressionRegionName Name of impression String 60


region associated with
the click impression
event

154
Marketing Cloud Journeys and Automations Automation Studio Activities

SendJobImpression
The SendJobImpression file represents all impression tracking information from sends with activity logged against them for the timeframe
of the extract. This list reflects only jobs that already processed. Sends scheduled for the future do not appear in this list.
Output Types
• CSV
• TAB
Columns

Table 15: SendJobImpression


Name Description Possible Values Data Type Character Length
ClientID The system account -2^63 Numeric Maximum length - big
identifier associated with (-9,223,372,036,854,775,808) integer
attribute set to 2^63-1
(9,223,372,036,854,775,807)

SendID or JobID Identifier associated to an Numeric Maximum length - big


email send integer

ImpressionRegionID ID of impression region Numeric Maximum length - big


associated with the send integer
event

FixedContent Defines whether content 0 or 1 Boolean 1


is fixed or now

ImpressionRegionName Name of impression String 60


region associated with
the send event

EventDate Date sent event occurred Datetime

SendJobs
The SendJobs file represents all sends with activity logged against them for the timeframe of the extract. This list reflects only jobs that
already processed. Sends scheduled for the future do not appear in this list.
Once the tracking extract process creates a SendJobs table, the only column value that can change is JobStatus. All other data associated
with the job is static. JobStatus only changes if the send processes during the extract and completes at a later date.
Output Types
• CSV
• TAB
Columns

155
Marketing Cloud Journeys and Automations Automation Studio Activities

Table 16: SendJobs


Name Description Possible Values Data Type Character Length
ClientID The system account -2^63 Numeric Maximum length - big
identifier associated with (-9,223,372,036,854,775,808) integer
attribute set to 2^63-1
(9,223,372,036,854,775,807)

SendID or JobID Identifier associated to an Numeric Maximum length - big


email send integer

FromName From name associated String 130


with the send. For
On-Your-Behalf sends,
this value contains the
ChannelMember
personalization strings.

FromEmail From email address String 100


associated with the send.
For On-Your-Behalf
sends, this value contains
the ChannelMember
personalization strings.

SchedTime Schedule date and time Datetime Small


of the send

SentTime Message delivery date Datetime Small


and time to Marketing
Cloud

Subject Subject line of email String 200, but can exceed this
associated with the send value depending on
selected extract options

EmailName Name of email associated String 100


with the send

TriggeredSendExternalKey External key associated to String 100


a triggered send
definition if send resulted
from a triggered send
request

SendDefinitionExternalKey External key associated to String 100


the user-initiated send
definition that initiated
send, as applicable

JobStatus Current job status • Scheduled String 30

• Sending
• Completed

156
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description Possible Values Data Type Character Length

• Stopped
• Canceled
• Error
• Deleted
• PostSendCallout
• New

PreviewURL Link to preview of email String 300


sent to subscriber.
Preview does not
incorporate
personalization.

IsMultipart Specifies if email sent in • True Boolean 5


multipart MIME
• False

Additional EventID entered at time String 50


of send

Sent
The Sent event extract file shows instances of an email send occurring during a specified date range. The send events relate to all sends
for subscribers on a list or to a particular send.
Output Types
• CSV
• TAB
• XML
Columns

Table 17: Sent


Name Description Possible Values Data Type Character Length
ClientID The system account -2^63 Numeric Maximum length - big
identifier associated with (-9,223,372,036,854,775,808) integer
attribute set to 2^63-1
(9,223,372,036,854,775,807)

SendID Identifier associated to an Number Maximum length - big


email send integer

SubscriberKey Customer-specified String 254


subscriber unique
identifier associated with
attribute set. By default,
the value is the same as
EmailAddress.

157
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description Possible Values Data Type Character Length


EmailAddress Subscriber email address String 254
identifier associated with
attribute set

SubscriberID System-generated Number Maximum length - big


subscriber unique integer
identifier associated with
attribute set. SubscriberID
relates to the Subscribers
file SubscriberID column.

ListID Identifier for the list the Number Maximum length - big
job sent to integer

EventDate Date sent event occurred Datetime

EventType Identifier for the event Sent String 6


type

BatchID Identifies batch Sample values: Number Maximum length - big


associated with a integer
triggered email sent SendD
IE,ventDateS,ubscbireKreyE,mA
aliddersTg,irgeerdSendExtenraKleyB,atchdI
event - defaults to 0 for a 12341,/2/2009"e,[email protected]"e",[email protected]"C",oupon1",
marketing list send 12341,/2/2009"e,[email protected]"e",[email protected]"C",oupon2",
12381,/10/2009"e,[email protected]"e",[email protected]"C",oupon1",

TriggeredSendExternalKey External key associated to String 100


a triggered send
definition if the bounce
resulted from a triggered
send request

Spam Complaints
The Extract Spam Complaints extract file shows subscriber, list, and domain data, including sendID and date, for subscribers who received
an email and reported it as spam.
Output Types
• .csv
• .txt
• .xml
Columns

158
Marketing Cloud Journeys and Automations Automation Studio Activities

Table 18: Spam Complaints


Name Description Possible Values Data Type Character Length
ClientID System account identifier -2^63 Number Maximum length - big
associated with an (-9,223,372,036,854,775,808) integer
attribute set to 2^63-1
(9,223,372,036,854,775,807)

SendID or JobID Identifier associated to an Number Maximum length - big


email send integer

SubscriberKey Customer-specified String 254


unique identifier for a
subscriber associated
with an attribute set. The
default value is the same
as EmailAddress.

EmailAddress Subscriber email address String 254


identifier associated with
attribute set

SubscriberID System-generated Number Maximum length - big


unique identifier for a integer
subscriber associated
with an attribute set.
SubscriberID relates to
the Subscribers file’s
SubscriberIDcolumn.

ListID Identifier for the list the Number Maximum length - big
job sent to integer

EventDate Date the spam complaint Datetime


event occurred

EventType Identifier for the event SpamComplaint String 6


type

BatchID Unique identifier for Number Maximum length - big


individual URL in the integer
send

TriggeredSendExternalKey External key associated to String 100


a triggered send
definition if the complaint
resulted from a triggered
send request

Domain Recipient’s email address String 100


domain

159
Marketing Cloud Journeys and Automations Automation Studio Activities

StatusChanges
The StatusChanges file shows instances of change in a subscriber's status.
Output Types
• CSV
• TAB
Columns

Table 19: StatusChanges


Name Description Possible Values Data Type Character Length
ClientID System account identifier -2^63 Numeric Maximum length - big
associated with the (-9,223,372,036,854,775,808) integer
attribute set to 2^63-1
(9,223,372,036,854,775,807)

SubscriberKey Customer-specified String 254


subscriber unique
identifier associated with
the attribute set. By
default, the value is the
same as EmailAddress.

EmailAddress Subscriber email address String 254


identifier associated with
the attribute set

SubscriberID System-generated Number Maximum length - big


subscriber unique integer
identifier associated with
the attribute set.
SubscriberID relates to
the Subscribers file
SubscriberID column.

OldStatus Previous subscriber status • Normal String 10

• Held
• Unsub
• Deleted

NewStatus New status of subscriber • Normal String 10

• Held
• Unsub
• Deleted

DateChanged Time and date that Datetime


subscriber status change
occurred

160
Marketing Cloud Journeys and Automations Automation Studio Activities

Subscribers
The Subscribers file contains subscribers with a tracking event occurring during a specified data range.
Output Types
• CSV
• TAB
Columns

Table 20: Subscribers


Name Description Possible Values Data Type Character Length
ClientID The system account -2^63 Numeric Maximum length - big
identifier associated with (-9,223,372,036,854,775,808) integer
attribute set to 2^63-1
(9,223,372,036,854,775,807)

SubscriberKey Customer-specified String 254


subscriber unique
identifier associated with
attribute set. By default,
the value is the same as
EmailAddress.

EmailAddress Subscriber email address String 254


identifier associated with
attribute set

SubscriberID System-generated Numeric Maximum length - big


subscriber unique integer
identifier associated with
attribute set.SubscriberID
relates to the Subscribers
fileSubscriberIDcolumn.

Status Status of subscriber • Active: Normal String 10

• Bounced: Message
attempts have
bounced but the
subscriber does not
qualify as held.
• Undeliverable: Three
or more sequential
message attempts
have bounced and
the first and last
sequential bounces
were more than 14
days apart.
• Unsub: Subscriber
has unsubscribed

161
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description Possible Values Data Type Character Length


from the message
send.

DateHeld Date subscriber moved Datetime Small


to Held status

DateCreated Date application added Datetime Small


subscriber

DateUnsubscribed Date subscriber moved Datetime Small


to unsubscribed status

Surveys
The Surveys file contains information on responses to surveys included in email sends.
Output Types
• CSV
• TAB
Columns

Table 21: Surveys


Name Description Possible Values Data Type Character Length
ClientID The system account -2^63 Numeric Maximum length - big
identifier associated with (-9,223,372,036,854,775,808) integer
attribute set to 2^63-1
(9,223,372,036,854,775,807)

SendID or JobID Identifier associated to an Numeric Maximum length - big


email send integer

SubscriberKey Customer-specified String 254


subscriber unique
identifier associated with
attribute set. By default,
the value is the same as
EmailAddress.

EmailAddress Subscriber email address String 254


identifier associated with
attribute set

SubscriberID System-generated Number Maximum length - big


subscriber unique integer
identifier associated with
attribute set.SubscriberID
relates to the Subscribers
fileSubscriberIDcolumn.

162
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description Possible Values Data Type Character Length


ListID Identifier for the list the Number Maximum length - big
job sent to integer

EventDate Date click event occurred Datetime

EventType Identifier for the event String 6


type

Question Question asked in survey

Answer Subscriber answer to


survey question

BatchID Identifies batch Sample values: Number Maximum length - big


associated with a integer
triggered email sent SendD
IE,ventDateS,ubscbireKreyE,mA
aliddersTg,irgeerdSendExtenraKleyB,atchdI
event - defaults to 0 for a 12341,/2/2009"e,[email protected]"e",[email protected]"C",oupon1",
marketing list send 12341,/2/2009"e,[email protected]"e",[email protected]"C",oupon2",
12381,/10/2009"e,[email protected]"e",[email protected]"C",oupon1",

TriggeredSendExternalKey External key associated to String 100


a triggered send
definition if the bounce
resulted from a triggered
send request

Unsubs
The Unsubs file includes information on unsubscriptions that occurred during a specified data range. The unsubscribe events can be
related to all sends for subscribers on a list or to a particular send.
Output Types
• CSV
• TAB
Columns

Table 22: Unsubs


Name Description Possible Values Data Type Character Length
ClientID The system account -2^63 Numeric Maximum length - big
identifier associated with (-9,223,372,036,854,775,808) integer
attribute set to 2^63-1
(9,223,372,036,854,775,807)

SendID or JobID Identifier associated to an Numeric Maximum length - big


email send integer

SubscriberKey Customer-specified String 254


subscriber unique
identifier associated with

163
Marketing Cloud Journeys and Automations Automation Studio Activities

Name Description Possible Values Data Type Character Length


attribute set. By default,
the value is the same as
EmailAddress.

EmailAddress Subscriber email address String 254


identifier associated with
attribute set

SubscriberID System-generated Number Maximum length - big


subscriber unique integer
identifier associated with
attribute set.SubscriberID
relates to the Subscribers
fileSubscriberIDcolumn.

ListID Identifier for the list the Number Maximum length - big
job sent to integer

EventDate Date click event occurred Datetime

EventType Identifier for the event String 6


type

BatchID Identifies batch Sample values: Number Maximum length - big


associated with a integer
triggered email sent SendD
IE,ventDateS,ubscbireKreyE,mA
aliddersTg,irgeerdSendExtenraKleyB,atchdI
event - defaults to 0 for a 12341,/2/2009"e,[email protected]"e",[email protected]"C",oupon1",
marketing list send 12341,/2/2009"e,[email protected]"e",[email protected]"C",oupon2",
12381,/10/2009"e,[email protected]"e",[email protected]"C",oupon1",

TriggeredSendExternalKey External key associated to String 100


a triggered send
definition if the bounce
resulted from a triggered
send request

Create a Zip Data Extract


Use the a zip data extract activity to compress exported files to your FTP site. Zip data extract can be a one-time activity or part of a
recurring automation.
1. Create a data extract activity.
2. Complete the information in the Properties section.
• Enter a name, external key, and description for the activity.
• Enter a file naming pattern for the created file and end it with .csv.zip. For example,
Log_%%Month%%_%%Year%%.csv.zip.
• Select Zip as the Extract Type. If Zip isn't an option, contact your Marketing Cloud Account representative for access.

3. In the Configuration section, enter the Archive Folder location in this format: \Export\Archive\.

164
Marketing Cloud Journeys and Automations Automation Studio Activities

If there’s no archive folder there, the process creates one.


4. To delete the original file after the zip file is created, leave Delete Files selected, or deselect it to retain the original file.
5. Enter the name of the file to be zipped.
• Use the exact file name.
• End the file name with .csv.
• You can use an asterisk ( * ) as a wildcard. For example, Send_Log*.csv.
• You can use date wildcard specifiers. For example, Send_Log_%%Month%%_Year%%.csv.

6. Enter the filepath on the FTP site for the file to compress in the Import Folder field in this format: \Export\. This filepath can't be
the same as the Archive Folder filepath.
7. Enter the filepath on the FTP site for the resulting zip file in the Output Folder field. This filepath can't be the same as the Archive
Folder filepath or the Import Folder filepath.
8. Save your changes.

SEE ALSO:
Extract Outputs Reference
Create a Data Extract File

Contacts Without Channel Addresses


Find and manage your contacts that aren’t associated with any channels. Understand the source of your contacts and delete the ones
you don’t want.
Contacts Without Channel Addresses is an available extract type that doesn’t require support to activate the feature. Unlike other data
extracts, this type outputs directly to a data extension. For more information, see Find Contacts Without Channel Addresses in Contact
Builder.

Extract Outputs Reference


This table describes the outputs available for the Tracking Extract extract type.

Note: Extract types must be provisioned for your account. Contact your Marketing Cloud representative for more information.

Data extracts with Include options selected provide that data within one of the compressed files produced by the activity. For example,
if you create an extract that includes Extract Clicks, then select Include Unique Clicks, the unique clicks data appears in the Clicks file
produced by the process. The activity does not produce a separate file labeled Unique Clicks.

Note: Each extract output type produces a single file within the zipped file. Each data extract labeled Include appears within an
extract file within the zipped file.

Tracking Extract Output Description


Extract Attributes Contains the attributes associated with subscribers in an account.
The system only outputs data for subscribers who received one of
these events over the specified extract range: Bounce, Click,
Forward To A Friend, Open, Send, Survey, Unsubscribe.

165
Marketing Cloud Journeys and Automations Automation Studio Activities

Tracking Extract Output Description


ExtractBounces Shows all hard and soft bounces occurring within a specified date
range. The events in this report can relate to all sends for subscribers
on a list, or to a particular send.

ExtractClickImpressions Shows all of instances of link clicks in an email occurring within


the specified date range. The file also includes the impression
region name associated with the click event. The events in this
report can relate to all sends for subscribers on a list, or to a
particular send.

ExtractClicks Shows all instances of a link in an email being clicked occurring


within the specified date range. The events in this report can relate
to all sends for subscribers on a list, or to a particular send.

ExtractConversions Contains a row for each conversion event associated to a subscriber


related to an email send job.

ExtractListMembershipChanges Includes rows that contain information on the subscriber, list, and
status data change for every event.

ExtractLists Contains rows including name, description, and other information


for a unique list.

ExtractNotSent Contains information on send jobs and messages that were not
sent.

ExtractOpens Shows instances of an HTML email being opened that occurred


during the date range. The open events in this report can relate to
all sends for subscribers on a list, or to a particular send.

ExtractSendJobImpressions Shows all impression tracking information from sendswith logged


activity for the extract timeframe. This list reflects only jobs that
have already processed. Sends scheduled for the future do not
appear in this list.

Extract SendJobs Shows all sends that have activity logged against them for the
extract timeframe. Only jobs that have already processed are
included. Sends scheduled for the future do not appear in this list.

Extract Sent Shows instances of an email being sent occurring during a specified
date range. The send events in this report can relate to all sends
for subscribers on a list, or to a particular send.

Extract SentImpression Shows instances of an email being sent occurring during a specified
date range. The file also includes the impression region name
associated with the click event. The send events in this report can
relate to all sends for subscribers on a list, or to a particular send.

Extract Spam Complaints Shows subscriber, list, and domain data, including sendID and date,
for subscribers who received an email and report it as spam.

Extract StatusChanges Shows instances of change in a subscriber's status.

166
Marketing Cloud Journeys and Automations Automation Studio Activities

Tracking Extract Output Description


Extract Subscribers Contains subscribers with a tracking event occurring during a
specified data range.

Extract SurveyResponses Contains information on responses to surveys included in email


sends.

Extract Unsubs Includes information on unsubscriptions during a specified date


range. The unsubscribe events in this report can relate to all sends
for subscribers on a list, or to a particular send.

These tracking extract options are available in addition to each tracking extract's output. Data extracts with Include options selected
provide that data within one of the compressed files produced by the activity.

"Includes" Option Description


Include All Subscribers Include all subscribers in the Subscribers file of the tracking extract.
If unchecked, the extract only includes subscribers with activity
corresponding to the events you select to include in the extract.

Include GEO Include geolocation data

Note: If you purchased a Sender Authentication Package


(SAP) through Salesforce, your Marketing Cloud org doesn't
populate geolocation data.

Include Milliseconds Include timestamps that display time up to the millisecond

Include Unique Clicks Includes a count of the first time a single subscriber clicks any link
in an email. If the same subscriber returns to the email and clicks
again, that does not count as a unique click. Include Unique Clicks
measures how many people clicked within the email as opposed
to how many total clicks occurred.

Include Unique Opens Includes a count of the first time a single subscriber opens an email,
measuring how many unique subscribers opened the email.

Include User Agent Information Include user agent data related to the open or click to see, for
example, Operating System, Email Client, Browser, or Device
information.

Include All List Members Include all list members in the tracking extract. If unselected, the
extract only includes list members with activity during the specified
time.

Include Campaign ID Include the Campaign ID of the campaign each subscriber is part
of.

Include Inferred Opens Include all inferred opens, or clicks an email without a recorded
open. If unselected, the extract only includes specific opens where
the email was clicked and rendered.

Include Test Sends Include test sends in send totals.

167
Marketing Cloud Journeys and Automations Automation Studio Activities

"Includes" Option Description


Include Unique For URL Clicks Include a count of the first time each link within an email is clicked.
If there are three separate URLs included in the email, a single
subscriber could have up to three separate unique clicks.

Include Unsub Reason Include the user-specified Unsubscribe Reason, including custom
Unsubscribe Reasons if applicable.

Quote Text Surround all text with double quotation marks. This parameter
replaces existing double quotes in the tracking extract with two
single quotation marks.

Unicode Output Save the extract in UTF-16 format instead of ASCII.

Use Local TZ in Query Show timestamps in the output file in the local timezone.

Create an Audit Trail Data Extract Activity


The extract activity extracts your audit data to prepare it for file transfer.
See Data Extract Activity for more information about data extract activity configuration.
1. Navigate to Automation Studio in Marketing Cloud.
2. On the Activities tab, click Create Activity.
3. Select Data Extract and click Next.
4. Complete the Properties fields:
• Enter a Name.
• Enter a Description, if needed.
• Enter an External Key, if needed.
• Enter a File Naming Pattern and extension.

Note: Record the file naming pattern because it’s required for the File Transfer activity configuration.

• Select the Extract Type. Choose either Audit Trail Activity Log or Audit Trail Access Log.

Note: Contact your Salesforce Marketing Cloud representative enable these extracts.

• Click Next

5. Complete the Configuration fields:


• Select Rolling Range or Specific Range and choose 30 days or 60 days. Basic Audit Trail allows 30 days of data and
Advanced Audit Trail allows 60 days.

Important: If you select 90 days from the dropdown, the extract is limited to the range of your edition.

• Select the Timezone.


• Complete the remaining fields and click Next

6. Review the activity Summary and click Finish when done or Back to edit.
7. To create the other audit trail extract, repeat this task.

168
Marketing Cloud Journeys and Automations Automation Studio Activities

Security Action Audit Log


View the audit data from the Audit Trail security action extract available in Marketing Cloud Automation Studio.
Audit Trail Access Log
View the audit data from the Audit Trail security event extract available in Marketing Cloud Automation Studio.

SEE ALSO:
Security Action Audit Log

Security Action Audit Log


View the audit data from the Audit Trail security action extract available in Marketing Cloud Automation Studio.

Note: Timezone settings for extract dates reflect the setting specified when the extract is created.

Column Description
CreatedDate Date and time of the security action.

EID The Enterprise ID that represents the top-level account or business unit ID.

MID The Member ID that represents the account or business unit ID.

UserID The ID of the user performing the security action.

EmployeeID The ID of the employee performing the security action.

EmployeeName The name associated with the employee.

ObjectTypeID The ID of the Marketing Cloud object.

ObjectTypeName The name of the Marketing Cloud object associated with the ObjectTypeID.

OperationID The ID of the Marketing Cloud operation being performed against the Marketing Cloud
object.

OperationName The name of the Marketing Cloud operation being performed against the Marketing Cloud
object associated with the OperationID.

ObjectID The specific ID of the object that is the subject of the security action.

ObjectName The name of the object that is the subject of the security action associated with the ObjectID.

TransactionID An ID to represent related security actions.

Audit Trail Access Log


View the audit data from the Audit Trail security event extract available in Marketing Cloud Automation Studio.

Column Description
User

UserName

AccessDate

169
Marketing Cloud Journeys and Automations Automation Studio Activities

Column Description
FromIP

SecurityEventTypeID See Security Events table.

SecurityEventType

LoginStatusID See Login Status table.

LoginStatusName

Session ID The session ID associated with the access event, represented by a unique GUID. This column
is only available to Advanced Audit Trail users.

UserAgent The session ID associated with the access event, represented by a unique GUID. This column
is only available to Advanced Audit Trail users.

Event Source The source of the access event. This column is only available to Advanced Audit Trail users.

Table 23: Security Events


SecurityEventTypeId SecurityEventType Description
1 Login Attempted

Important: Apparent
duplicates can be
caused by logins from
different machines (not
surfaced in the report)
or the formatting in the
CSV document is
truncating milliseconds.

8 Logout

2 Security Question Answered

3 Password Changed

4 Administrator Access Support person has impersonated into the user account.

5 Administrator Unlock Logged when Administrator unlocks a user.

6 Redirect For users provisioned with IMH Redirect flow, the user is redirected to CAS
pages and they try to log in from Members.

7 Security Setting Changed


Impersonation

9 Request Authorization Code

10 Request Token

170
Marketing Cloud Journeys and Automations Automation Studio Activities

Table 24: Login Status


LoginStatusId LoginStatusName Description
4 Successful

20 Logout

0 AccountDisabled

1 Failed

2 MustChangePassword

3 NotSet Login status hasn’t been set.

5 UserAccountDisabled

6 InMaintenance

7 UsernamePasswordLock

8 SecurityQuestionAnswerLock

9 BusinessUnitDisabled

10 SystemDBUnavailable MC Internal Error regarding DB Connectivity to verify users.

11 AccountLocked

12 FailedNotOnWhitelist

13 FailedInvalidActivationLink Activation Link in user setup email is invalid or expired.

14 FailedDeviceNotActivated Unable to activate device as part of 2 factor auth.

15 FailedDeviceNotActivateNeedMobile The login failed because the user's device isn’t activated as required by the
account's security settings, and a mobile number is required for SMS verification.

16 FailedSsoOnlyLogin

17 SecurityActivationCodeLock The user has been locked out from using their username or password, security
question or answer, and activation code.

18 MustChangePasswordNoIDV User must change password.

19 InvalidCasApplication

21 AppNotAuthorized App not authorized as part of OAuth2 Authorize API.

SEE ALSO:
Security Action Audit Log

Verification Activity
Avoid unintended outcomes by verifying the data used in an Automation Studio automation.
Use the Verification activity to avoid unintended automation outcomes. The activity lets you select a target data extension in your
automation and evaluate the target data extension for conditions you set.

171
Marketing Cloud Journeys and Automations Automation Studio Activities

When the activity detects the conditions you set are met, the activity can stop the automation or send you an email notification or both,
depending on the actions you define. If you choose to receive a notification when the conditions are met, you can opt to include a note
in the email to provide more context for investigation or troubleshooting.

Hover over the Verification activity icon in the automation's Run Log to view the latest run's results. These results give greater confidence
that data used in subsequent activities in the automation is what you intend.

172
Marketing Cloud Journeys and Automations Automation Studio Activities

Considerations
• The Verification activity can only be used in an automation and cannot be reused across multiple automations. Configuring the
activity outside an automation is not supported.
• You can add multiple Verification activities in a single step. However, Verification activities cannot be placed in the same step as any
other type of activity.
• The activity shows target data extensions of activities in the automation first by default, but you can use the activity to find and verify
any data extension.

Verification Activity Example


This example shows how to verify the data your automation uses in Automation Studio.
Verify Automation Data
Verify the data your automation uses in Automation Studio.

Verification Activity Example


This example shows how to verify the data your automation uses in Automation Studio.
Use the verification activity to avoid unintended outcomes in an automation by monitoring a data extension used in the automation
for an unexpected record count.
In this example, a marketer for Northern Trails Outfitters (NTO) has an automation that runs daily. The automation imports a file from
NTO’s e-commerce system, queries the data imported to produce an audience segment, and then sends a message. Occasionally, the
file provided from the e-commerce system is incomplete, resulting in an unexpectedly low audience segment and send count. The
marketer uses a verification activity to catch these scenarios and course-correct before the segmentation and send occur.
To achieve this result, the marketer follows these steps.
1. A verification activity is dragged into the workflow between the step with the Import activity and the step with the SQL Query activity.
2. The marketer sets the verification activity to monitor the Import's destination data extension. If the import into the data extension
results in a record count that is less than 500, the activity stops the automation and sends the marketer an email notification.
3. When this unexpected scenario occurs, Marketing Cloud stops the automation before the segmentation occurs and prevents the
message from sending to the incorrect audience. The marketer can promptly act to correct the file and rerun the automation as
intended.

173
Marketing Cloud Journeys and Automations Automation Studio Activities

Verify Automation Data


Verify the data your automation uses in Automation Studio.
To verify that records in a data extension in an automation meet your expectation, set up a verification activity. The activity analyzes
target data extensions populated by the automation's activities or another source, then triggers actions based on user-defined conditions.
1. Drag the verification activity into an automation step.

Note: You can add more than one verification activity in a single step, but not in the same step as any other type of activity.

2. Click Configure.
3. Select the target data extension to verify. Data extensions populated by activities in the automation appear by default.
a. To select from a larger set, choose All.

Tip: If you do not see the data extension that you expect, save the automation and retry.

4. Click Next.
5. Set the conditions that the verification activity monitors.

174
Marketing Cloud Journeys and Automations Automation Studio Activities

6. Choose the action the automation takes when the target data extension meets the conditions you set.
a. To receive an email when verification conditions are met, specify the email addresses that receive the notification.
b. If necessary, add a note to explain the condition that was met, or any other information you want to include in the notification
to aid in troubleshooting.

7. Complete activity setup.


The automation's Activity Run Log logs the verification activity's outcome.

Mapping Contacts to Business Unit


Map existing Contacts to selected Business Units to maintain Brand and GEO boundaries while activating segments in Customer Data
Platform.
Prerequisites
• Enterprise 2.0 account
• Enable Contacts to Business Unit at the Enterprise level
• Only Marketing Cloud users with Administration > Account > Update Account and Security Settings permission assigned are able
to enable Contacts to Business Unit mapping for all Business Units
Setup User Permissions
When Contacts to Business Unit mapping is enabled, a new activity in Automation Studio allows you to create automations to define
the Contacts to Business Unit mappings. Before changing your mappings, ensure that the Business Unit mapping permission is assigned
to the user. Only users that have the right "Contacts > Contact to Business Unit Mapping" permission are able to change your mappings.
This permission gives you three operations: View, Add, and Remove mappings.
• View: You can view the list of Business Units the Contact has been mapped to in Contact Details.
• Add: You can add a Business Unit Mapping from a Contact.
• Remove: You can remove a Business Unit Mapping from a Contact.

Note: Without permission to see a Contact you can't add or remove a mapping to or from the Contact.

175
Marketing Cloud Journeys and Automations Automation Studio Activities

Configure Business Unit Mappings


Enter the mapping using Contacts to Business Unit mapping in Automation Studio. To maintain Brand and GEO boundaries while
activating segments, map all existing contacts.

Note: Continue updating the mappings for new contacts after the initial mapping to keep the information updated in Customer
Data Platform.
To configure the activity you need:
• The list of contacts to map, located in your data extension. Map Contacts using the Contact Key. Only your Contact Key and Business
Unit columns are used by the activity.
• The target Business Unit to map the contacts. You can't configure the Business Unit in the activity. The Business Unit you're signed
into is the Business Unit used.

Note: Contacts can be mapped to more than one Business Unit but the activity can only map a list of Contacts to a single Business
Unit. If you must map a list of Contacts with multiple Business Units, you must sign in to each Business Unit, create a mapping
definition, and run the activity for each Business Unit to map.
You can choose to add and remove the activity. Select add to map Contacts to the target Business Unit. In the source data extension,
the activity skips Contact Keys that don’t match with Contacts in Messaging and Journeys.
Select remove to remove the mapping for a list of Contacts from a Business Unit. When a Contact is mapped to more than one Business
Unit, the Contact is removed from the target Business Unit. When you create the activity, choose to schedule the run as a one-time run
or recurrent depending on how often you ingest new Contacts.

Note: The Contact Key identifies the Contact in the source file. You can only select fields in the source file that are Contact Keys.

Automation Studio Activities Reference


Understand all activities available in Marketing Cloud Automation Studio at a glance.
These activities are available for use in an automation. Click Create Automation to access activities listed on this page.

Note: The total number of filter activities and query activities to execute simultaneously in a Marketing Cloud account is limited
to 40. Any activities beyond this limit aren’t processed until there are fewer than 40 activities of this type executing.

Activity Name Description


Refresh Group Reapplies rules in a group definition to create a subset of
subscribers in a list. Before you can use a group refresh activity, you
must create a group definition in Email Studio.

Send Email Choose and configure an email message to send on its own or in
sequence according to a schedule. Configuring the Send Email
Activity creates a Send Definition that can be used in other
automations.

SQL Query Retrieves data extension or data view information according to


criteria you set, then includes that data in a data extension. Use
SQL to create the query used in this activity.

Import Updates a subscriber list or data extension using an external file.


You provide information to create an import definition, which gives
import file details and the import activity's behavior while running.

176
Marketing Cloud Journeys and Automations Automation Studio Activities

Activity Name Description


To access Salesforce Objects and Reports, navigate to Interactions
in Email Studio.

File Transfer Unzips or decrypts a file found in the Marketing Cloud's Enhanced
FTP directory or to securely transfer files from the Marketing Cloud's
secure file transfer location (Safehouse) to an FTP location.

Script Executes your Server-Side JavaScript to accomplish tasks in an


email or landing page.

Filter Applies a data filter to create a group or data extension containing


records that meet a set of criteria.

Data Extract Creates a file to use outside of the application. This activity can also
be used to transform an XML file to a comma-delimited,
tab-delimited, or pipe-delimited file for import into your account.

Wait Sets an automation to wait for a specific duration, or until a specific


time, before continuing.

Report Definition Defines the parameters for running a report one time to be used
every time the report is run using the activity. Create a report
activity to run any available standard report in the application or
custom reports in your account.

Refresh Mobile Filtered List Ensures that your Contact lists are up to date according to the filters
used to create the list.

SMS Activity Initiates an SMS message.

Send GroupConnect Initiates a GroupConnect message.

Verification Helps avoid unintended automation outcomes by letting you set


conditions for a data extension used in the automation, and
notifying you, stopping the automation, or both if the conditions
are met. This activity also shows results of the latest run on hover
and can be used for logging in an automation.

Contacts to Business Unit mapping Map existing Contacts to selected Business Units to maintain Brand
and GEO boundaries while activating segments in Customer Data
Platform. Continue updating the mapping for new Contacts
introduced in Journeys after the initial mapping to keep the
information updated in Customer Data Platform.

More Activities
More provisioning is required to access these activities. Contact your Marketing Cloud representative for more information.

Activity Name Description


Fire Event Signals that new contacts were added to a data extension used as
the event source in a journey. The newly added data is then sent

177
Marketing Cloud Journeys and Automations Automation Studio Activities

Activity Name Description


into journeys whose entry events are configured to detect changes
in this data source.

Journey Entry: Audience Added to automations that populate audiences in Journey Builder.
When a journey uses an audience as its entry source, this activity
is added to the automation that updates the audience. Access a
direct link to the journey populated by this activity by clicking the
activity name.

Send Salesforce Email Initiates a send from a Sales or Service Cloud account.

Note: Automation Studio audiences are evaluated and processed for entry according to the schedule of the source automation,
which is set in Automation Studio. When the Journey Entry: Audience activity is included in an automation, contacts enter the
journey according to the schedule set in that automation.

Note: Organizations that use Marketing Cloud Connect can access the Send Salesforce Email Activity. Contact your Marketing
Cloud representative for more information.

SEE ALSO:
Use MobileConnect with Automation Studio
MobilePush and Automation Studio
Data Extension Extract in Automation Studio
Configure Interactions in Automation Studio

Wait Activity
Wait activities in Automation Studio cause an automation to wait for a specific duration or until a specific time before performing the
next step. You can include one or multiple wait activities in a single automation.

Note: An automation must finish its run completely before subsequent runs begin. When an automation is in the middle of a
wait activity at the time when the next scheduled or file drop run occurs, Automation Studio skips that run.

Multiple Wait Activities - Considerations


• There is no limit on the number of wait activities an automation, but the combined wait time in an automation can’t exceed one
year.
• When you add more wait activities, wait times for previous wait activities are shown in the Wait Activity modal so that you can
calculate total wait time in the automation.
• When the duration of the first wait activity is specified, any wait activities occurring later in the automation's workflow begin after
this wait time ends.
• When an automation is in the middle of a wait activity when the next scheduled or triggered run occurs, that run is skipped.

Scheduling Considerations
If your schedule creates overlapping times due to wait activities, those scheduled runs are skipped and represented in the Activity tab.
• Scheduled runs that are skipped due to overlap are logged as errors and shown under Health.

178
Marketing Cloud Journeys and Automations Automation Studio Activities

• Runs skipped due to running wait activities are shown in the Run Log.
• All wait activities included in an automation are shown to the left in the Wait Activities sidebar under the Schedule Summary.

To change the duration or time for an activity on the timeline, click .
• To update a wait activity from the Overview page, click Edit.

Add a Wait Activity


Tell an automation how long to pause before proceeding to the next activity in Automation Studio.

Add a Wait Activity


Tell an automation how long to pause before proceeding to the next activity in Automation Studio.
Wait activities cause an automation to wait for a specific duration or until a specific time before performing the next step.
1. From the Overview page, select an automation to edit, or create an automation.
2. Click Wait and drag the activity into a drop zone on the canvas.
3. To tell Automation Studio to either wait for a duration of time or until a specific time, click Choose.

4. Save the activity's settings.

Tip: You can set an automation to do both—to wait for a specified duration, but to not start before a specified time. Add a
wait activity for the duration and save it. Then, in the next column, add a wait activity for the specified time.

179
Marketing Cloud Journeys and Automations Automation Studio Activities

Einstein in Automation Studio


Reach contacts when they’re most likely to engage by using Einstein Send Time Optimization in a Send Email activity. Help your contacts
avoid message fatigue by selecting the right message for each contact at the right time. Message recommendations are based on
saturation levels using Einstein Engagement Frequency in a Send Email activity.

Einstein Send Time Optimization in Automation Studio


Reach contacts when they’re most likely to engage by using Einstein Send Time Optimization in a Send Email activity in Automation
Studio. Einstein Send Time Optimization uses machine learning and 90 days of engagement data to determine the best time within
the next 24 hours to send an email message to each contact.
Einstein Engagement Frequency in Automation Studio
Use Einstein Engagement Frequency (EEF) in a Send Email activity in a bulk or batch send to maximize engagement rates and reduce
unsubscribes. A segment is based on saturation levels to avoid sending contacts too few messages or too many. EEF automatically
segments your contacts at send time based on their individual saturation levels.

Einstein Send Time Optimization in Automation Studio


Reach contacts when they’re most likely to engage by using Einstein Send Time Optimization in a Send Email activity in Automation
Studio. Einstein Send Time Optimization uses machine learning and 90 days of engagement data to determine the best time within the
next 24 hours to send an email message to each contact.
Einstein gathers data for about 20 factors. Factors include engagement metrics, such as the number of messages sent to, and opened
by a contact and the day of the week that the message is opened. Then, using machine learning, Einstein assigns a weight to each factor
according to that factor’s influence on predicting future engagement behavior. Einstein analyzes this data and assigns a likelihood score
to each of the 168 hours in a week for each contact. Send Time Optimization uses this information to recommend the send times that
lead to increased engagement.
You can’t use send throttling with Einstein Send Time Optimization. If you select Einstein Send Time Optimization, send throttling is
automatically turned off for this send.
This feature is available to customers with Marketing Cloud Einstein terms for Corporate, Enterprise, or Pro edition accounts with the
Journey Builder add-on. To use this activity, activate Einstein Send Time Optimization for your business unit. Then use Einstein Send
Time Optimization in Automation Studio in a Send Email Activity.
To mitigate performance issues, take processing time into account when you choose your time frame. Estimate approximately 20 minutes
processing time for every million subscribers. For example, if you’re sending to 6 million subscribers, allow about 2 hours for Einstein to
process the best send time for each subscriber.

Note: Before you use the Einstein Send Time Optimization for a Send Email activity for the first time, the information must be
optimized. Optimization can take up to 72 hours. You perform this optimization only one time.
Use the Einstein Send Time Optimization Dashboard to view the optimally predicted send times for your contacts.
1

Einstein Engagement Frequency in Automation Studio


Use Einstein Engagement Frequency (EEF) in a Send Email activity in a bulk or batch send to maximize engagement rates and reduce
unsubscribes. A segment is based on saturation levels to avoid sending contacts too few messages or too many. EEF automatically
segments your contacts at send time based on their individual saturation levels.

1
Rights of ALBERT EINSTEIN are used with permission of The Hebrew University of Jerusalem. Represented exclusively by Greenlight.

180
Marketing Cloud Journeys and Automations Pause an Automation

You choose the most meaningful segments for your activities. Choosing all segments prevents EEF from providing effective results. The
segment types are saturated, on target, undersaturated, and almost saturated. Almost-saturated subscribers are three messages away
from being saturated.
• Engagement frequency metrics are derived from the past 28 days’ of data.
• Only commercial emails are analyzed. Transactional and test sends aren’t included.
• The audience in your business unit must receive at least five variants of your email messaging over a 28-day period. A variant is
defined as an email sending pattern, sending email to subscribers in at least five different intervals.

Example: You’re ready to send a promotion inviting customers to browse new seasonal merchandise. You select all saturation
levels, except saturated. When you send a bulk email, EEF excludes all saturated contacts so that the right customers receive the
email. This exclusion helps prevent the saturated contacts from getting message fatigue and unsubscribing.

Example: You have daily promotions for limited time offers. To maximize engagement, you decide to send emails twice daily.
You schedule an email to be sent in the morning to undersaturated, on-target, and almost-saturated contacts. You send a second
email in the evening only to undersaturated contacts because they’ve received less that their optimal number of messages.
2

Pause an Automation
Stop an automation's schedule temporarily in Automation Studio. This action only pauses the automation's schedule for future scheduled
runs. An automation that is running when you click Pause continues to run even if the schedule is paused.
1. After opening the automation record, click Paused in the Schedule Summary column.

2
Rights of ALBERT EINSTEIN are used with permission of The Hebrew University of Jerusalem. Represented exclusively by Greenlight.

181
Marketing Cloud Journeys and Automations Pause an Automation

The Paused Schedule dialog box appears.

2. To put the automation in a paused state, click Pause.

182
Marketing Cloud Journeys and Automations Skip an Automation

Note: To cancel this action and keep the automation active, click Cancel.

3. Resume the schedule by setting it to Active on the Schedule tab.

Skip an Automation
Indicate in Automation Studio that an automation's next run will not occur without stopping the automation's schedule.
In an automation's Schedule tab, the Schedule Summary pane appears.
1. To skip an automation's next run without stopping the automation's schedule, click Skip Next Occurrence.

2. A confirmation message displays to verify that the automation's next run will not occur.

183
Marketing Cloud Journeys and Automations Stop a Running Automation

Stop a Running Automation


When an automation is stopped in Automation Studio, activities in the step that is in progress complete, but subsequent steps do not
start.
Use these instructions to stop a running automation. Cancel email sends in progress in the currently running step from the Tracking tab
in Email Studio.
1. Click Stop on the Workflow canvas.
A confirmation message appears.
2. To stop sends that could be occurring when the automation stops, click Go to Tracking to cancel sends in progress.
3. Select each job currently in progress on the Tracking page.
4. Click Cancel Send.

Note: To pause an automation's schedule, click Pause.

Copy an Automation
Create an exact copy of an automation to extend or modify it in Automation Studio.
Copying an automation doesn’t create activities to be edited. The activities are referenced to the original automation. Editing the activities
in the copied automation also edits the activities from the original automation. After the new automation is copied, use the replace
option for each activity and include new activity created.
1.

Click .

184
Marketing Cloud Journeys and Automations Delete an Automation

2. Give the copy a unique name, description, and external key.

a. Choose a different file location for the copy as appropriate.

Delete an Automation
Remove unneeded automations from Overview or the automation page in Automation Studio.
Delete an automation from the individual automation's page.

185
Marketing Cloud Journeys and Automations Automation Studio Errors

1.

Click .
A message appears to confirm the deletion.
2. Click Delete.

Automation Studio Errors


Use this page to find out what Automation Studio error messages mean, their implications, and how to resolve them.

SQL Query Activity Errors


Error Text Meaning Suggested Action
Query definition doesn’t exist. Query was deleted. Recreate the SQL Query activity.

Query failed during execution. Error: The Query Source doesn’t have a Primary Add a primary key field in the source or
Violation of PRIMARY KEY constraint. Can’t Key, but the Destination does. Thus, the remove the primary key from the
insert duplicate key in object '{{DE name}}'. query results in a duplicate record. destination.
The duplicate key value is (123456789).

Query failed: Timeout Query took too long to resolve. • If this timeout error doesn’t typically
occur, retry the activity or automation
it's part of.
• If this error recurs, see Optimize the
Query Activity.

Query failed during execution. Error: Query Source has an alphanumeric field, but Update either the query source or the
Conversion failed when converting the the Destination has a number field. destination so the data type is identical for
nvarchar value '123ABC' to data type int. both.

Query failed during execution. Error: String Query Source has a longer field length than Increase the destination field length so that
or binary data would be truncated. the Destination field. each allows the same number of characters.

Query failed during execution. Error: Invalid Either the Source or the Destination has a Confirm that columns and fields haven’t
column name '{{column name}}'. field that was renamed or deleted. been changed or deleted.

Query failed during execution. Error: Invalid Either the Source or the Destination Data Confirm that both the source and
object name 'QueryTest_100'. Error has Extension has been deleted, renamed, or is destination data extensions exist.
occurred. otherwise unavailable.

Query failed: Query not allowed The configuration of your account doesn’t Contact your account executive.
allow queries.

Query failed due to system error. Internal system error Retry. If this error persists, open a support
case in Salesforce Help.

186
Marketing Cloud Journeys and Automations Automation Studio Errors

File Transfer Activity Errors


Error Text Meaning Suggested Action
File not found matching the pattern: When using Manage File, the source file that • Verify that the file naming pattern of the
{{pattern}} the activity expected to find is missing. file matches the pattern configured for
When using Move A File from Safehouse, the activity exactly.
no file matching the file naming pattern was
• Verify that the file was dropped in the
found.
intended location, especially if an
automated process drops the files.

Invalid File Age The timestamp on the file is invalid, or a Ensure that the file isn’t older than the
setting in the configuration of the activity defined age limit setting or modify the age
prevents files of a specified age from being limit setting.
processed.

Authentication with the server failed Server authentication failed. Confirm that • Confirm that your FTP location is valid.
your FTP location is valid and retry. Server
• Confirm that your external file location
authentication failed.
credentials are valid and that your
session is active. Then, retry.

Invalid username or password reported by Server authentication failed due to invalid • Confirm that your FTP location is valid.
server. username or password.
• Confirm that your external file location
credentials are valid and that your
session is active. Then, retry.

Server returned an error: Permission denied Server authentication failed due to a • Confirm that your FTP location is valid
permission error. and configured correctly. Then, retry.
• Confirm that the username provided in
the file location definition has
permission to the destination folder.

The process can’t access the file '{{filename}}' A file lock error occurred. • Retry the activity or the automation that
because it’s being used by another process. it's a part of if this error doesn’t typically
occur.
• If this error continues, ensure that the
file isn’t being used by another process.

There was an error connecting to the target Connected host has failed to respond. Verify that your FTP host entry is configured
server. correctly and retry.

Non-anonymous sessions must use Non-anonymous sessions must use Encryption required. Update encryption
encryption. encryption. A non-anonymous session was settings to proceed. Encryption is required.
initiated without encryption enabled. Update encryption settings to proceed.

The remote host forcibly closed an existing Remote host connection lost. Check destination server settings to
connection. re-enable the connection.

187
Marketing Cloud Journeys and Automations Automation Studio Errors

Error Text Meaning Suggested Action


Idle connection category FTP you’re trying to push the files into is Check the FTP connection.
having connectivity issue.

Import File Activity Errors


Error Text Meaning Suggested Action
Import failed: File {{filename}} not found The source file that the activity expected to • Verify that the file pattern of the file
find is missing, or no file matching the file matches the pattern configured in the
naming pattern was found. Import File activity.
• Verify that the file was added to the
import location as intended, especially
if an automated process drops the files.

Import failed: Invalid file age The timestamp on the file is invalid or Ensure that the file isn’t older than the
settings in the configuration of the activity defined age limit setting or modify the age
prevent files of a specified age from being limit setting.
processed.

Import failed: Invalid file source File source is invalid. Enter a valid file source.

Import failed: File location invalid File location is invalid. Enter a valid file location.

Import failed due to system error. Internal system error Retry. If this error persists, open a support
case in Salesforce Help.

Automatically Deactivated Automations


When an automation fails repeatedly over an extended time period, the automation is deactivated to improve system stability and
performance. When an automation is deactivated, you receive an email from Marketing Cloud. An inactive automation can’t run
again until it’s fixed and reactivated. This feature is turned on for all accounts and can’t be turned off.

SEE ALSO:
Optimizing a SQL Query Activity
Use Intermediate Tables to Optimize a Query

Automatically Deactivated Automations


When an automation fails repeatedly over an extended time period, the automation is deactivated to improve system stability and
performance. When an automation is deactivated, you receive an email from Marketing Cloud. An inactive automation can’t run again
until it’s fixed and reactivated. This feature is turned on for all accounts and can’t be turned off.
An automation is deactivated when it meets all these criteria.
• Fails at least 30 times
• Has a 100% failure rate for at least 30 days
• Failures caused by system errors don't count toward either of these metrics

188
Marketing Cloud Journeys and Automations Get Automation Studio Notifications

To identify the cause, locate the failed automation in the Overview section of Automation Studio. Errors are listed in the Progress column
and appear in red. Hover over an error to view the cause.
After you fix the automation, go to the Workflow tab for that automation, and select Active to reactivate it.

Get Automation Studio Notifications


Add your email address to get notified when a Marketing Cloud automation run is skipped, encounters an error, or completes. You can
also enable Slack alerts through Digital Command Center for Slack.
Use these steps to set up email notifications for skipped, failed, and completed automations. To get Slack alerts, use Digital Command
Center for Slack to configure monitoring rules for Automation Studio.
1. Open an automation.
2. Navigate to the automation’s Activity tab.
3. In Notification Settings, enter your email address.
4. (Optional) Add a note to include in the email notification.

To unsubscribe, remove your email address.

SEE ALSO:
Get Started with Digital Command Center
Rule Types and Individual Rule Configuration Options
The Daily Digest Report

189
Marketing Cloud Journeys and Automations Find Activity Configuration and Error Details

Find Activity Configuration and Error Details


To access configuration details and run history for an Automation Studio activity, view the activity's object detail page. Use this page to
locate error information about the activity, too.
1. On the Activities page, select an activity type from the left menu.
2. Click the name of the activity whose details you want to see.
This page also includes options to edit, copy, delete, or run the selected activity.
Configuration details are shown on the Configuration tab.

Note: Only Email, Import File, File Transfer, and SQL Query activities have object detail pages currently.

Run history, including error information, is shown on the Action Log tab.

Marketing Cloud Best Practices


Looking for best practices and use cases to help you get the most out of Marketing Cloud? You’re in the right place.
Journey Builder is a powerful campaign planning tool that lets you design and automate responsive campaigns. You can plan, personalize,
and optimize event-driven life-cycle engagement programs based on contact attributes and behaviors. Learn more about Journey
Builder on page 194.
Use Journey Builder when you’re ready to automate and build cross-channel customer journeys. After you set up the tool, you can start
creating journeys. To set up the tool, learn more in Journey Builder Prerequisites.
Journey Builder orchestrates and automates marketing campaigns and message sequences by using selected content or audiences
created in other Marketing Cloud Studios and Builders.

190
Marketing Cloud Journeys and Automations Data Management

Journey Builder allows you to build a marketing journey by placing an entry source and activities on the canvas and creating paths for
your customers. Entry Sources allow people, called contacts, to enter your journey and Canvas Activities are used to automate the path
of those contacts. You can also create custom activities for Journey Builder. Learn more about Entry Sources and Canvas Activities.

Still Have Questions?


There are more resources available to ask questions of peers and experts, make product recommendations, or learn about the Marketing
Cloud on our YouTube channel.
Salesforce Trailblazer Community: Talk to your peers, ask questions, and learn about Marketing Cloud with the Salesforce Trailblazer
Community. You can join the Marketing Cloud Success Chatter Group to register for webinars and find office hours and a Marketing
Cloud User Group in your area. Log in and select Collaboration to get started.
Marketing Cloud Idea Exchange: Contribute or vote on customer suggestions for improving the Marketing Cloud experience on the
Idea Exchange. Learn more about how Salesforce uses the Idea Exchange to improve the products you use: IdeaExchange Overview.
Marketing Cloud YouTube Channel: Check out the Marketing Cloud Basics videos for Journey Builder, Email, and more. You can also
see customer stories, product demos, and Marketing Cloud keynote presentations. Be warned: some videos start to play automatically.

Data Management
This best practices guide covers topics related to data management in Marketing Cloud to help you understand and use information
you collect about your customers for communication, segmentation, and personalization.

Data Management
This best practices guide covers topics related to data management in Marketing Cloud to help you understand and use information
you collect about your customers for communication, segmentation, and personalization.
Most marketers are not database administrators, and most database administrators are not marketers. Most of the time, management
and use of data in an enterprise platform like Marketing Cloud requires collaboration and communication between organizational
functions, implementation partners, or Salesforce Services.
As a marketer, you can facilitate this collaboration by thinking about the data necessary to run and measure your marketing campaigns.
Understanding how data works in the Marketing Cloud and how to frame your marketing needs in terms of data can help. The goal of
this guide is to help you, as a marketer, understand and talk about data in a cognizant way as a first step toward managing and using
data in Marketing Cloud.

Data Storage
Data can be stored in and sourced from different databases, cubes, or clouds. This situation is one of the reasons data is so hard for
marketers, and organizations more generally. Data is stored all over the place, in different systems, and those systems don’t always
talk to each other easily. In most databases, data is stored in a table with columns to define the data stored in rows. Think of this
table like an Excel spreadsheet. In Marketing Cloud, a table is called a data extension. A column is an attribute, and a row of data is
a record. Sales Cloud contains objects and fields to talk about tables and columns.
Data Relationships
Data tables can relate to other tables to create a relational database with nested data structures, but they don’t have to be. The
phrase “flat file” refers to a single table holding a large amount of data, or even an organization’s entire customer file. You can consider
most data extensions used by Email Studio for sending as flat files. These files generally hold all the information required for that
specific audience and send needs.

191
Marketing Cloud Journeys and Automations Data Management

Data Flows
We provide numerous ways to move data into and out of the Marketing Cloud. The method you choose depends on where your
data is stored, how much data you need in Marketing Cloud, and how often you update it for your marketing campaigns. Common
methods include imports, APIs, and Marketing Cloud Connect. Regardless of the method of bringing data into the system, create
the storage elements with the Marketing Cloud to hold the data extensions. Bring in data as values for the attributes you want to
use for marketing campaigns.
Understand Data Needs
Take a look at where your data, organization, and marketing programs stand. This assessment helps you determine the best way to
manage the data in your Marketing Cloud account.

Data Storage
Data can be stored in and sourced from different databases, cubes, or clouds. This situation is one of the reasons data is so hard for
marketers, and organizations more generally. Data is stored all over the place, in different systems, and those systems don’t always talk
to each other easily. In most databases, data is stored in a table with columns to define the data stored in rows. Think of this table like
an Excel spreadsheet. In Marketing Cloud, a table is called a data extension. A column is an attribute, and a row of data is a record. Sales
Cloud contains objects and fields to talk about tables and columns.

Data Relationships
Data tables can relate to other tables to create a relational database with nested data structures, but they don’t have to be. The phrase
“flat file” refers to a single table holding a large amount of data, or even an organization’s entire customer file. You can consider most
data extensions used by Email Studio for sending as flat files. These files generally hold all the information required for that specific
audience and send needs.
Contact Builder allows you to store data in relational tables. These tables present a more scalable solution for data storage. Use these
tables to reduce the need to write SQL queries to pull data from multiple tables into a single file to create an audience.
Contact Builder is used in Mobile Studio and Journey Builder. We plan to extend the functionality to Email Studio for audience generation
and sending. However, most of the underlying data elements, including data extensions, used in Email Studio can be used in Contact
Builder and vice versa. Email Studio cannot use the data relationships and nested data structures created in Contact Builder, only the
tables.

Data Flows
We provide numerous ways to move data into and out of the Marketing Cloud. The method you choose depends on where your data
is stored, how much data you need in Marketing Cloud, and how often you update it for your marketing campaigns. Common methods
include imports, APIs, and Marketing Cloud Connect. Regardless of the method of bringing data into the system, create the storage
elements with the Marketing Cloud to hold the data extensions. Bring in data as values for the attributes you want to use for marketing
campaigns.

SEE ALSO:
https://developer.salesforce.com/docs/atlas.en-us.noversion.mc-apis.meta/mc-apis/index-api.htm
Connect to Marketing Cloud
Data Import

192
Marketing Cloud Journeys and Automations Data Management

Understand Data Needs


Take a look at where your data, organization, and marketing programs stand. This assessment helps you determine the best way to
manage the data in your Marketing Cloud account.

1. Available Data
Start small and don’t underestimate the data you can use today. There’s always room to grow with data in Contact Builder. For
example, if you regularly collect a customer’s mailing address, you can use the ZIP code to target customers by location. Behavioral
data is another rich source of data you can use to target your customers. This information includes how customers browse on your
website, open your emails, or purchase products.
2. Stored Data
Most companies have data stored or sourced from many places, including back-end and partner systems, including Marketing Cloud.
What is your system of record as a marketing organization? If Marketing Cloud is not your primary point of access and storage for
data, think about what kinds of data you need to store or access for the campaigns and sends that you conduct in the Marketing
Cloud.
3. Describe Your Customers
In some organizations, there may be only one primary population of customers in Contact Builder. Some other organizations may
use multiple populations. For example, a university might have students, alumni, and professors, or a ride-sharing service might
have drivers and riders. These populations require different characteristics and data needs.
4. Manage Customer Subscriptions
Understand where you manage how customers subscribe to your different marketing and promotional campaigns. This system of
engagement is where you manage the legal and logistical aspects of customer’s opting in and out to receive your communications.
If Marketing Cloud doesn’t handle subscriptions, such as a custom profile or preference center, ensure subscriptions are handled
between multiple systems.
5. Segment Your Customers
Marketing Cloud supports filtering or segmenting of customer populations to a specific target audience, as do other customer
databases. If you use a different tool to create audiences that you bring into Marketing Cloud pre-filtered, then you might be able
to be more strategic about the data you store and access in Marketing Cloud. If you perform some or all of your segmentation in
Marketing Cloud, you need to store more data to target your audiences and sends.
6. Use Data In Marketing Cloud
If you don’t use data to segment populations in Contact Builder to create audiences, then think about the other uses where you
need to access data. Common use cases include personalizing messages, dynamically presenting content to customers, guiding
customers through an automated journey, or reporting on the results of marketing campaigns.

Available Data
Start small and don’t underestimate the data you can use today. There’s always room to grow with data in Contact Builder. For example,
if you regularly collect a customer’s mailing address, you can use the ZIP code to target customers by location. Behavioral data is another
rich source of data you can use to target your customers. This information includes how customers browse on your website, open your
emails, or purchase products.

Stored Data
Most companies have data stored or sourced from many places, including back-end and partner systems, including Marketing Cloud.
What is your system of record as a marketing organization? If Marketing Cloud is not your primary point of access and storage for data,
think about what kinds of data you need to store or access for the campaigns and sends that you conduct in the Marketing Cloud.

193
Marketing Cloud Journeys and Automations Journeys and Messages

Describe Your Customers


In some organizations, there may be only one primary population of customers in Contact Builder. Some other organizations may use
multiple populations. For example, a university might have students, alumni, and professors, or a ride-sharing service might have drivers
and riders. These populations require different characteristics and data needs.

Manage Customer Subscriptions


Understand where you manage how customers subscribe to your different marketing and promotional campaigns. This system of
engagement is where you manage the legal and logistical aspects of customer’s opting in and out to receive your communications. If
Marketing Cloud doesn’t handle subscriptions, such as a custom profile or preference center, ensure subscriptions are handled between
multiple systems.

SEE ALSO:
Preview the Marketing Cloud Profile Center
Profile and Preference Attributes in Marketing Cloud

Segment Your Customers


Marketing Cloud supports filtering or segmenting of customer populations to a specific target audience, as do other customer databases.
If you use a different tool to create audiences that you bring into Marketing Cloud pre-filtered, then you might be able to be more
strategic about the data you store and access in Marketing Cloud. If you perform some or all of your segmentation in Marketing Cloud,
you need to store more data to target your audiences and sends.

Use Data In Marketing Cloud


If you don’t use data to segment populations in Contact Builder to create audiences, then think about the other uses where you need
to access data. Common use cases include personalizing messages, dynamically presenting content to customers, guiding customers
through an automated journey, or reporting on the results of marketing campaigns.

Journeys and Messages


Marketing Cloud’s Journey Builder is a campaign planning tool that enables you to design and automate campaigns that guide customers
through their journey with a brand. Its foundation is the journey, which is the communication plan you design. Canvas activities tell
Journey Builder how to communicate to and direct contacts in the journey. Contacts enter from an entry source. The journey then
continually evaluates contacts to determine when to move them to the next activity.
Journey Builder supports these Marketing Cloud editions.

Edition Compatibility Known Issues MC Connect


Considerations
Core / Advanced Yes None • Required Version: Marketing
Cloud Connect/V5
• Multi-org support: N/A

194
Marketing Cloud Journeys and Automations Journeys and Messages

Edition Compatibility Known Issues MC Connect


Considerations
Enterprise 1.0 • Parent Account: No Journey Builder does not
• Sending from the top level
of Enterprise 1.0 is not support the Salesforce Event as
• On Your Behalf (OYB)
supported an entry source If there are
Accounts: No
several Enterprises 1.0 Lock &
• Lock & Publish Accounts: • Sending from OYB account
Publish accounts connected to
Yes is not supported
a Salesforce org.

Enterprise 2.0 Yes Cannot copy journeys from • Required Version: Marketing
parent business units to child Cloud Connect/V5
business units
• Multi-org support: N/A

Journey Builder Prerequisites


Review these items before using Journey Builder in the Marketing Cloud whether you’re a marketer or administrator.
Permissions for Journey Builder
Marketing Cloud user permission settings supersede user permissions granted in the Journey Builder app. Review the list of Marketing
Cloud permissions required to access these features in Journey Builder.
Optimize Journey Builder Performance
Journey Builder’s processing rate varies based on the data model and filters used, journey configuration, activities used, and content
complexity. Also, journeys share processing resources, so stagger the scheduled journey start times to reduce the demand and
increase the processing speed of individual journeys. You can process up to 2 million email sends per hour per tenant by following
these guidelines.
The Journeys Dashboard
The Journeys Dashboard provides an overview of all the journeys you create in Marketing Cloud’s Journey Builder. The overview
includes journey type, status, and the last date changes were made. You can also see which version of a journey is accepting new
contacts. In this dashboard, you can sort by journey, status, performance by entry total and goal attainment, or last modified date.
You can also filter the list of journeys, open a journey, and access the journey creation workspace.
Manage Customer Journeys
Journey Builder’s enables you to efficiently create and track Single Send, Transactional Send, and Multi-Step customer journeys in
Marketing Cloud from a unified workspace.
Journey Settings
Choose the settings that determine when the contact enters a Marketing Cloud journey and which address Journey Builder uses to
message that contact.
Entry Sources
The entry source on the canvas tells Journey Builder where customers entering this journey come from. Each journey must include
an entry source.
Marketing Cloud Mobile App Events Overview
Highly relevant and contextually aware interactions are the cornerstone of amazing customer experiences. Now, user behaviors on
your mobile app can drive relevant and personalized touchpoints, powered by easy-to-configure listening rules in Journey Builder.
Mobile App Events enable your brand to deliver mobile moments that matter by creating meaningful engagement, increasing brand
loyalty, and generating a higher return on investment for your marketing campaigns.

195
Marketing Cloud Journeys and Automations Journey Builder Prerequisites

Use Data in Journey Builder


Journey Builder’s essential functions depend on data. To maximize your journeys’ reach, explore how you can use data for filtering,
personalization, and other Journey Builder tasks.
Goals in Journey Builder
In Journey Builder, a goal is a measurement of customer actions that you want to promote. Measure goals based on a goal target
you set by creating a filter on contact data. After you activate a journey, Journey Builder evaluates contact data against the filter set
as the goal target. When Journey Builder determines that a contact met the goal, that contact is counted in goal target statistics.
Reaching the goal can also prompt the contact to exit, if applicable.
Activities Reference
Learn what each Journey Builder activity does.
Activity IDs in Journey Builder
Find any activity’s unique identifier in a draft, running, paused, or stopped journey after the journey is saved. This feature helps
customers and Support agents locate the issue when troubleshooting an activity.
Message Activities
Messaging activities include email, SMS, LINE message, push notification, inbox message, in-app message, or any other form of
content sent to contacts. To provide a mix of information about your brand or your product, vary the message content. Create
message content before you build a journey.
Journey Builder Activities
Canvas activities include messages, decisions, updates, or a combination of these elements, dragged onto the Journey Builder canvas.
In a Multi-Step journey, the activities you configure affect each contact until they reach a goal or the end of the journey.
Sales and Service Cloud Activities
Use Sales and Service Cloud canvas activities in Journey Builder to create or update Sales and Service Cloud object records for
connected Marketing Cloud contacts. You can grant new users access to create or edit Sales and Service Cloud Activities, except
users with the Marketing Cloud Administrator role.
Journey Builder Administration
Journey Builder includes an administrative interface that is accessed by clicking links in the top navigation.
Analytics and History
Journey Builder includes journey health, history, and dashboards.

Journey Builder Prerequisites


Review these items before using Journey Builder in the Marketing Cloud whether you’re a marketer or administrator.
• A Marketing Cloud Services or Partner Services engagement is recommended for organizations using Journey Builder with integrations
and complex use cases.
• Assistance from an IT administrator is often helpful while designing the Contact Builder contacts model and audience segmentation
filters for Journey Builder.

Account Provisioning
Before you can create a journey, provision your Marketing Cloud account to support Journey Builder. Manage access to view and create
Journey Builder journeys using Marketing Cloud Setup. Customize permissions for roles or individuals to deny access, allow limited access
for viewing journeys, or allow complete access to create, edit, and publish journeys.
Contact your Salesforce Marketing Cloud representative if you have account provisioning questions.

196
Marketing Cloud Journeys and Automations Journey Builder Prerequisites

For Marketers
Marketers commonly perform these tasks.
• Data Extensions
One common way to admit contacts into a journey is to fire them into the journey from a sendable data extension. To admit contacts,
create a sendable data extension and add or import contacts into it. There are multiple ways to create a data extension.
After contacts are added to a sendable data extension, configure an entry source to detect data extension changes and determine
Journey Builder’s action.

• Channel Content
Before adding channel activities to a journey, create channel content, like email messages, SMS messages, or push notifications.

For Administrators
IT Administrators commonly perform these tasks.
• Contacts
A contact represents a single instance of a person within the Marketing Cloud. A contact contains data derived from communications
through multiple channels mapped back to a single person.
Contact Builder defines a contact based on whether its ContactID is found in a population or by subscription to channels such as
email or SMS.

Note: The term contact describes a data record in Marketing Cloud that stores data about a person your organization
communicates with. The term customer describes the persons to whom communication is sent, about whom data is collected,
and whose decisions affect Journey Builder behavior.
Some entry sources, audiences, and Sales or Service Cloud entry events, create a ContactKey automatically when no ID can be
matched. All other entry sources require that an existing contact matches to an existing record, confirming a positive match. Entry
sources that do not create a contact automatically must be a channel subscriber or part of a Population to enter a journey.
To avoid rejections when using an entry source that doesn’t create contacts, use Contact Builder to create contacts. Provide a
ContactKey that Journey Builder uses to identify them.

• Journey Entry Data Source


Identify a data source, often a sendable data extension, as the source that contains contacts to admit to the journey. When you
configure an entry source, you can select this data extension as the source of contacts in the journey.

197
Marketing Cloud Journeys and Automations Permissions for Journey Builder

– Set up a data extension entry source to easily select a sendable data extension to start the journey.

SEE ALSO:
Modify Marketing Cloud User Settings
Journey Builder Roles
Contact Builder in Marketing Cloud
Content Builder
Get Started in Marketing Cloud MobilePush
Get Started in MobileConnect
Distributed Marketing
Marketing Cloud Feature Settings
Email Deliverability

Permissions for Journey Builder


Marketing Cloud user permission settings supersede user permissions granted in the Journey Builder app. Review the list of Marketing
Cloud permissions required to access these features in Journey Builder.

Features Required Marketing Cloud Permission

• Decision Split • Email > Subscribers > Data Extension > View
• Wait by Attribute • Salesforce Marketing Cloud > Contacts > Read Contact Data

• Update Contact • Email > Subscribers > Data Extension > View
• Email > Subscribers > List > View

Engagement Split • Email > Content > Email > View


• Content Builder > Assets > View

Entry Sources • Email > Subscribers > Data Extension > View
• Data Extension • Email > Subscribers > List > View
• API Event • Salesforce Marketing Cloud > Contacts > Read Contact Data
• Transactional API Event
• Contact Event

• Goal • Email > Subscribers > Data Extension > View


• Exit Criteria • Salesforce Marketing Cloud > Contacts > Read Contact Data
• Default Email
• Default Mobile Number

Test a Journey Email > Subscribers > Data Extension > View

Create Journey Templates Content Builder > Asset > Create

198
Marketing Cloud Journeys and Automations Optimize Journey Builder Performance

For more details about the permissions granted with user roles in Journey Builder, see Journey Builder Roles and Marketing Cloud Roles.

Optimize Journey Builder Performance


Journey Builder’s processing rate varies based on the data model and filters used, journey configuration, activities used, and content
complexity. Also, journeys share processing resources, so stagger the scheduled journey start times to reduce the demand and increase
the processing speed of individual journeys. You can process up to 2 million email sends per hour per tenant by following these guidelines.

Tip: Single-tenant deployments on dedicated databases produce a faster and more predictable processing speed than multi-tenant
deployments on shared databases. To improve processing speeds after you implement these recommendations in a multi-tenant
account, contact your account executive about single-tenancy and dedicated database deployment.

Groom Data Before Creating a Journey


How you store and prepare data affects how quickly Journey Builder processes records. Here are some ways to maximize processing.
• Create a pre-filtered, sendable copy of the data extension for each journey instead of using the same data extension for multiple
journeys. This step also prevents journeys from competing with other database activities such as imports, send-logging, reports, or
extracts.
• Use an ETL tool such as Automation Studio for large-scale segmentation before admitting contacts into Journey Builder instead of
filtering contacts within the entry source.
• Don’t use a filter in the entry source to filter more than 50% of your contacts when there are more than 500,000 total contacts. Doing
this wastes critical compute resources and can lead to the system stopping your journey due to excessive resource usage. Instead,
use an ETL tool such as Automation Studio to segment your data before using the data in Journey Builder.
• When data extensions are linked through a one-to-many or many-to-many relationship, a matching attribute value can appear in
the journey entry source filters, wait activities, or decision splits multiple times.
• Include all data that you plan to use for decision splits in your entry source data extension. Use journey data for decision splits rather
than contact data whenever possible.
• Only use the Update Contact activity to update any contact data except the Contact Key value.
• When you use the Update Contact activity to add a contact to a data extension, include all required field values or the contact isn’t
added.
• Limit the number of rows per contact to 1000 or less.

Use Efficient Filtering Logic


Journeys share resources for processing. When a journey includes an entry filter, the speed at which contacts are admitted in the journey
is lower. Follow these guidelines to maximize hourly processing.
• If your filters use contact data, use the data model to determine the AttributeSets required to link the contact attribute to the contact.
When any of these AttributeSets in the path contain a one-to-many relationship, processing speed slows proportionally to the
amount of data associated with the contact. For example, if a decision split is based on LastOrderDate, the number of orders associated
with the contact affects performance. Performance is slower for a contact with thousands of orders than for a contact with one order.
• If you use an entry filter, avoid ends with and contains operators for best filter performance. In data processing, these operators are
more expensive than using the equals operator.
• Complicated entry source or decision split filters require more table joins to filter contacts, which slows performance.
• Filter complexity and performance are based on the number of distinct attributes used and the number links it takes to map to a
contact.

199
Marketing Cloud Journeys and Automations Optimize Journey Builder Performance

Use Journey Activities Wisely


Journey Builder processes contacts in journey segments. A segment is the chain of activities from the journey’s start to the first wait,
between two waits, or from a wait to the exit. The minimum processing speed of each activity in that segment determines the processing
speed of contacts through a segment. Each activity type processes contacts at a different rate. Journey Builder processes contacts from
multiple journeys and segments concurrently.
• Use wait activities sparingly. Don’t add a wait activity as a journey’s first step and avoid using wait activities that are less than 5
minutes long.
• To improve Journey Builder performance, a wait activity that is 1 minute or less at the end of a path is ignored. In most scenarios,
these required wait activities at the end of a journey can be lowered to 1 minute without impacting the contact's journey. Lowering
these final wait activities reduces unnecessary system load and improves the predicable performance of your journeys.

Note: One-minute wait activities that aren't at the end of a path aren't ignored.

• Though you can add as many journey activities as you want, limit the number of activities to 150-200 in a journey to prevent slow
load times.
• Avoid using more than 3 decision split activities at the start of the journey. Journey Builder processes contacts in batches, so using
a series of Decision Split activities reduces the batch size. Build the decision split path that you expect the highest number of contacts
to follow first.
• To ensure that custom activities don’t slow your journey, optimize the endpoints that custom activities use. Custom REST Activities
hit external endpoints so their response time depends on each endpoint’s response time. For more information, see Custom Activity
Configuration.
• If you add retry logic to an API event, the activity takes longer to process. Increasing the retry count increases the response time of
the REST service from Journey Builder’s perspective.

Example: Consider a single journey running in a single-tenant, dedicated database deployment. Within this journey, there’s one
segment from the entry to the random split, the decision split, the update contact activity, email activity, and a 1-day wait.

If the processing speed of the random split activity is 10 million contacts per hour, 9 million per hour for the decision split and
update contact activity, and 2 million per hour for the email activity, the maximum processing speed for this segment is 2 million
contacts per hour. Most journey activities process faster than message activities and usually don’t impede messaging activities in
the segment.

200
Marketing Cloud Journeys and Automations Optimize Journey Builder Performance

Consider the Impact of Content Personalization


Journey Builder lets you personalize your messages by using the power of AMPscript. Marketing Cloud application handles all AMPscript
calls at the end of the message-send, which affects the number of messages sent per hour. We observed the following effects on our
internal benchmarking, which was performed in a controlled environment on a dedicated database.

Complexity Content Includes Email Messages Per Hour


Static • Single HTML-based content with static 100% (baseline)
personalization

Simple • Single HTML-based content ~100% (minimal impact)

• Personalization by substitution with 9


substitutions

Moderate • Content block-based HTML with 3 ~95%


content block references
• Personalization by substitution with 9
substitutions
• 12 dynamic substitutions by data
extension lookup

Advanced • Content block-based HTML with 5 ~75%


content block references
• Personalization by substitution with 9
substitutions
• 24 dynamic substitutions by data
extension lookup, and impressions
regions

Highly personalized message content that has advanced complexity can reduce send throughput by up to 25%. Personalization is a
powerful tool to achieve targeted communication with your audience, but make sure to note how it affects your journey’s send throughput.

Note: The relative performance difference shown is only a directional guideline to assess the effects of content personalization.
The actual performance difference with the same content in your environment can differ.

Review Content Used to Benchmark Messaging Performance


Review this detailed information about the content used to benchmark the message-sending performance for email, SMS, and push.

201
Marketing Cloud Journeys and Automations Optimize Journey Builder Performance

Monitor Journeys in Slack


Digital Command Center for Slack monitors your journeys so that you can react quickly to campaign problems. For example, you
can receive alerts when a journey doesn’t have as many entries as expected, or when it doesn’t meet the threshold for sends, clicks,
opens, or bounce rates.

SEE ALSO:
Journey Builder Sales and Service Cloud Best Practices
Linked Data Extensions in Journey Builder

Review Content Used to Benchmark Messaging Performance


Review this detailed information about the content used to benchmark the message-sending performance for email, SMS, and push.
To benchmark email-sending performance, we used four different levels of content complexity: Static, Simple, Moderate, and Advanced.
For the email content, we created a recommendations email for Northern Trail Outfitters to resonate with customers based on their
attributes. The email is offered as complete HTML and modularized into multiple content sections as content blocks and uses two data
extensions for personalization. The four different complexity-levels of content produce the same overall email but with varying degrees
of personalization through AMPscript.
• Static: Single HTML-based content with static personalization
• Simple: Single HTML-based content and personalization by substitution with 9 substitutions
• Moderate: Content block-based HTML with 3 content block references, personalization with 9 substitutions, And 12 dynamic
substitutions by data extension lookup in a for loop
• Advanced: Content block-based HTML with 5 content block references, personalization with 9 substitutions, 24 dynamic substitutions
by data extension lookup in a for loop, and impressions regions

202
Marketing Cloud Journeys and Automations Optimize Journey Builder Performance

Compiled Emails
Review these files which include four levels of complexity. They include the source Content Builder code, including the HTML and
AMPscript. You can copy and paste the static and simple code snippets into Content Builder. However, to use the moderate and advanced
code snippets include the content-blocks referenced in the Static Content Block and AMPScript Content Block sections.
• Static: Static-Level1-10edc6e0-f56a-4f21-ab81-3913abe6b7a2.html (downloadable file)
• Simple: Simple-Level2-fe0e3f18-66d4-492c-8c8c-956259477e70.html (downloadable file)
• Moderate: Moderate-Level5-d353c4f8-3bfd-405d-8bd3-5dcd0d6bebaa.html (downloadable file)

203
Marketing Cloud Journeys and Automations Optimize Journey Builder Performance

• Advanced: Advanced-Level8-31cf51ee-bffd-408e-8e0c-94a55283b1f4.html (downloadable file)

Data Extensions
These data extensions provide the personalization data references used by the source email-code and content-blocks in our testing.
• Master Demographics Data Extension (downloadable file)
• Product Recommendations Data Extension: (downloadable file)

HTML Content Blocks for Moderate Content


Header
<style type="text/css">
div,
p,
a,
li,
td {
-webkit-text-size-adjust: none;
}

body {
margin: 0;
padding: 0;
}

td[class="headercell-phone"] {
display: none;
}

@media screen and (max-width: 480px) {


table[class="tmp--container"] {
width: 360px !important;
}
table[class="tmp--container-padding"] {
width: 360px !important;
padding: 20px !important;
}
table[class="tmp--container-padding-top"] {
width: 360px !important;
padding: 20px 0 0 0 !important;
}
table[class="tmp--container-padding-bottom"] {
width: 360px !important;
padding: 0 0 20px 0 !important;
}
table[class="hero"] {
width: 100% !important;
}
table[class="tmp--full-width"] {
width: 100% !important;
float: left !important;
padding: 0 !important;

204
Marketing Cloud Journeys and Automations Optimize Journey Builder Performance

}
td[class="tmp--full-width"] {
width: 100% !important;
float: left !important;
padding: 0 !important;
}
td[class="tmp--full-width-padding-bottom"] {
width: 100% !important;
float: left !important;
padding: 0 0 25px 0 !important;
}
td[class="tmp--full-width-center"] {
width: 100% !important;
float: left !important;
padding: 10px 0 10px 0 !important;
text-align: center !important;
}
table[class="wrapper-padding"] {
padding: 20px !important;
}
tr[class="wrapper-padding"] {
padding: 20px !important;
}
td[class="wrapper-padding"] {
padding: 20px !important;
}
td[class="col-padding-bottom"] {
padding: 0 0 25px 0 !important;
}
img[class="photo"] {
width: 100% !important;
height: auto !important;
}
td[class="row"] {
width: 100% !important;
}
td[class="tmp--hide"] {
display: none !important;
}
}
</style>

<!-- background color -->

<!-- background color -->


<table bgcolor="#ffffff" width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>
<!-- logo and preheader -->
<table style="background-color:#ffffff;" class="tmp--container" width="600"
align="center" border="0" cellspacing="0" cellpadding="0">
<tr>

205
Marketing Cloud Journeys and Automations Optimize Journey Builder Performance

<td class="tmp--full-width-center" style="padding:20px 0px;">


<img id="style-header-logo" width="195"
src="https://s3-us-west-2.amazonaws.com/rd-industry-emails/retail/nto/brand-assets/email-templates/branding-nto-primary-logo-gray-2x.png">

</td>
<td class="tmp--hide" style="color:#393939;font-family:Gotham,
&quot;Salesforce Sans&quot;, Arial,
sans-serif;font-size:12px;font-style:normal;font-weight:normal;line-height:16px;padding:20px
0px;vertical-align:middle;" align="right">
<!-- preheader content area -->
<table cellpadding="0" cellspacing="0" width="100%"
style="text-align: left; min-width: 100%; " class="stylingblock-content-wrapper"><tr><td
class="stylingblock-content-wrapper camarker-inner" align="left"> <!-- preheader content
area -->
<table class="tmp--container" width="405" align="center"
border="0" cellspacing="0" cellpadding="0">
<tr>
<td
style="color:#393939;background-color:#ffffff;font-family:Gotham, &quot;Salesforce
Sans&quot;, Arial, sans-serif;font-size:13px;font-style:normal;font-weight:normal;"
class="full-width-center" width="100%" align="right"> <span style="color:#393939;">We found
you something!</span>
<br> <a href="https://salesforce.com" target="_blank"
style="color:#68CCF0; text-decoration:none; line-height:24px;" class="view_link" alias="Web
Version">WEB VERSION</a></td>
</tr>
</table>
<!-- end prehader content area --></td></tr></table>
<!-- end content area -->
</td>
</tr>
</table>
<!-- end logo and preheader -->
</td>
</tr>
<tr>
<td>
<table style="background-color:#ffffff;" class="tmp--container" width="600"
align="center" border="0" cellspacing="0" cellpadding="0">
<tr>
<td style="color:#393939;font-family:Gotham, &quot;Salesforce
Sans&quot;, Arial,
sans-serif;font-size:14px;font-style:normal;font-weight:normal;line-height:18px;vertical-align:top;"
width="100%" align="left">
<!-- content area -->
<table cellpadding="0" cellspacing="0" width="100%"
style="text-align: left; min-width: 100%; " class="stylingblock-content-wrapper"><tr><td
class="stylingblock-content-wrapper camarker-inner" align="left"><!-- hero image content
area--><table align="center" border="0" cellpadding="0" cellspacing="0"
class="tmp--container" width="600">

<tr>
<td align="left" class="full-width" width="100%">
<a alias="PI Recs Hero" href="http://ntoretail.com/" target="_blank"><img class="photo"

206
Marketing Cloud Journeys and Automations Optimize Journey Builder Performance

src="https://s3-us-west-2.amazonaws.com/rd-industry-emails/retail/nto/campaign-toolkits/promotional/pi-recommendation-hero.jpg"
style="display:block;" width="600"></a></td></tr></table><!-- end hero image content area
--></td></tr></table><table cellpadding="0" cellspacing="0" width="100%" style="text-align:
left; min-width: 100%; " class="stylingblock-content-wrapper"><tr><td
class="stylingblock-content-wrapper camarker-inner" align="left"><!-- live text paragraph
content area --><table align="center" border="0" cellpadding="0" cellspacing="0"
class="tmp--container" width="600">

<tr>
</tr></table></td></tr></table></td></tr></table></td></tr></table>

Message
Hey %%FirstName%%,<br>
<br>
Check out some items from NTO that we love this week, and we think you might love them
just as much as we do.<!-- end live text paragraph content area --><table cellpadding="0"
cellspacing="0" width="100%" style="text-align: left; min-width: 100%; "
class="stylingblock-content-wrapper"><tr><td class="stylingblock-content-wrapper
camarker-inner" align="left"><!-- outline button content area --><table align="center"
border="0" cellpadding="0" cellspacing="0" class="tmp--container"
style="background-color:#ffffff;" width="600">

<tr>
<td align="left" style="color:#4f4f4f;font-family:Gotham, &quot;Salesforce Sans&quot;,
Arial,
sans-serif;font-size:16px;font-style:normal;font-weight:normal;line-height:20px;padding:20px
20px 20px 20px;text-align:center;vertical-align:top;" width="100%">
<!-- ============================== --><!-- CTA BTN --><!-- ==============================
--><table align="center" class="tmp--full-width" width="100%">

<tr>
<td align="center" style="padding:10px 0 10px 0;">
<a class="high_click" href="http://pages.s4.exacttarget.com/nto_home"
style="padding:10px 30px;border:1.5px solid
#6D6E6E;color:#6D6E6E;display:inline-block;font-family:Gotham, &quot;Salesforce Sans&quot;,
Arial,
sans-serif;font-size:18px;font-style:normal;font-weight:normal;line-height:24px;text-align:center;text-decoration:none;"
target="_blank">stuff we love</a></td></tr></table></td></tr></table><!-- end outline
button content area --></td></tr></table><table cellpadding="0" cellspacing="0" width="100%"
style="min-width: 100%; " class="stylingblock-content-wrapper"><tr><td
class="stylingblock-content-wrapper camarker-inner"></td></tr></table>

Recommendations
<!-- Start Smart Block --><style type="text/css">
.amp {
font-size:1px;
color:#fff;
}</style><span class="amp"></span><style type="text/css">
.code_none{
display:none;
}</style><div align="center" style="padding: 15px; border: 5px dashed #ffffff; color:
#ffffff; font-family: Gotham, Helvetica, Arial, sans-serif; font-size: 18px;

207
Marketing Cloud Journeys and Automations Optimize Journey Builder Performance

background-color: #6ccdf0;">
Recommended Items</div> <span class="amp"></span> <!-- End Smart Block --> <table
width="100%">

<tr>
<td>
<span class="amp"><a
href="https://nto.recs.igodigital.com/rr/v2/5b02c7d62ccd63779bac61d9/l/1/[email protected]"><img

src="https://nto.recs.igodigital.com/rr/v2/5b02c7d62ccd63779bac61d9/i/1/[email protected]">
</a> </span></td><td>
<span class="amp"><a
href="https://nto.recs.igodigital.com/rr/v2/5b02c7d62ccd63779bac61d9/l/2/[email protected]"><img

src="https://nto.recs.igodigital.com/rr/v2/5b02c7d62ccd63779bac61d9/i/2/[email protected]">
</a> </span></td><td>
<span class="amp"><a
href="https://nto.recs.igodigital.com/rr/v2/5b02c7d62ccd63779bac61d9/l/3/[email protected]"><img

src="https://nto.recs.igodigital.com/rr/v2/5b02c7d62ccd63779bac61d9/i/3/[email protected]">
</a> </span></td></tr></table><span class="amp"> </span><center>
</center><table cellpadding="0" cellspacing="0" width="100%" style="min-width: 100%; "
class="stylingblock-content-wrapper"></table><table cellpadding="0" cellspacing="0"
width="100%" style="text-align: left; min-width: 100%; "
class="stylingblock-content-wrapper"><tr><td class="stylingblock-content-wrapper
camarker-inner" align="left"><!-- banner image content area--><table align="center"
border="0" cellpadding="0" cellspacing="0" class="tmp--container" width="600">

</table></td></tr></table>

Footer
<a alias="New Arrivals Hero" class="high_click"
href="http://pages.s4.exacttarget.com/nto_home" target="_blank"><img class="photo"
src="https://s3-us-west-2.amazonaws.com/rd-industry-emails/retail/nto/campaign-toolkits/banner-ads/NTO-banner-ad-store-location.jpg"
style="display:block; padding: 20px 0 20px 0;" width="600"></a><!-- end hero image content
area -->
<!-- end content area -->

<!-- footer -->


<table style="background-color:#ffffff;" class="tmp--container" width="600"
align="center" border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="tmp--full-width-center" width="100%" align="center"
style="padding:25px 20px 0 20px;">
<img id="style-footer-logo" width="55"
src="https://s3-us-west-2.amazonaws.com/rd-industry-emails/retail/nto/brand-assets/email-templates/branding-nto-secondary-logo-blue-2x.png">

</td>

208
Marketing Cloud Journeys and Automations Optimize Journey Builder Performance

</tr>
</table>
<table style="background-color:#ffffff;" class="tmp--container" width="600"
align="center" border="0" cellspacing="0" cellpadding="0">
<tr>
</tr></table>

Image Content

AMPscript Content Blocks for Advanced Content


We recommend pasting this content as code snippet content block types to minimize formatting errors.
IF-THEN UPSERT Example
%%[
set @lookupvalue = AttributeValue("CategoryAffinity")
set @affinity = Lookup("ProductRecommendations", "Category", "Category", @lookupvalue)
set @gender = AttributeValue("Gender")
set @subkey = AttributeValue("SubscriberKey")
set @subAffinity = IIF(@affinity == "Shoes", "Yes", "No")
set @output = concat(@subAffinity, @gender)
set @imageID1 =
"https://image.s4.sfmc-content.com/lib/fe2b11727664047c7d1d78/m/1/544683df-9f8f-4ece-a303-3afb594388f6.jpg"
set @imageID2 =
"https://image.s4.sfmc-content.com/lib/fe2b11727664047c7d1d78/m/1/137453a1-457e-4d68-ab08-568ab7624c65.jpg"
set @imageID3 =
"https://image.s4.sfmc-content.com/lib/fe2b11727664047c7d1d78/m/1/ebd833d5-aa81-4b4c-9f21-49cd20a305f0.jpg"
set @updatedDate = Now(1) if (@output == "YesFemale") THEN set @ProductRec = @imageID1
elseif (@output == "NoFemale") THEN set @ProductRec = @imageID2 elseif (@output == "YesMale"
OR @output =="NoMale") THEN set @ProductRec = @imageID3 endif
]%%
%%[UpsertDE("MasterDemographics",1,"SubscriberKey", @subkey, "DefaultImage", @ProductRec,
"UpdatedDate", @updatedDate)]%%

Randomized Recommendations (2 FOR loops)


<table cellpadding="0" cells Lpacing="0" width="100%" style="min-width: 100%; "
class="stylingblock-content-wrapper"><tr><td class="stylingblock-content-wrapper
camarker-inner"><!-- Start Smart Block --><style type="text/css">
.amp {
font-size:1px;
color:#fff;
}</style><span class="amp"></span><style type="text/css">
.code_none{

209
Marketing Cloud Journeys and Automations Optimize Journey Builder Performance

display:none;
}</style><div align="center" style="padding: 15px; border: 5px dashed #ffffff; color:
#ffffff; font-family: Gotham, Helvetica, Arial, sans-serif; font-size: 18px;
background-color: #6ccdf0;">
Recommended Items</div> <span class="amp"></span> <!-- End Smart Block -->
<table style="width: 100%;border-collapse: collapse;" >
<tr>
%%[
set @rows = LookupRows("ProductRecommendations", "Category", "Shoes")
set @rowCount = rowcount(@rows)
set @rowCount2 = random(0,1)
if @rowCount2 > 0 then

set @num1 = 1
set @num2 = @rowCount

/*Change this to retrieve the number of reccos you want to show*/


for @i = 1 to 3 do
/*Get a random row*/
set @random = random(@num1, @num2)
set @row = row(@rows, @random)
set @title = field(@row,"Title")
set @link = field(@row,"Link")
set @imgURL = field(@row,"ImgURL")
set @linkURL = field(@row,"LinkURL")

]%%

<td>
<b>%%=v(@title)=%%</b><br>
<img style="width:150px;" src='%%=v(@imgURL)=%%'><br>
<a href='%%=v(@linkURL)=%%'>Buy Here</a></td>

%%[

next @i ]%%
</tr></table>
%%[ else ]%%

%%[
set @rows = LookupRows("ProductRecommendations2", "Category", "Shoes")
set @rowCount = rowcount(@rows)
set @num1 = 1
set @num2 = @rowCount

/*Change this to retrieve the number of reccos you want to show*/


for @i = 1 to 3 do
/*Get a random row*/
set @random = random(@num1, @num2)
set @row = row(@rows, @random)
set @title = field(@row,"Title")
set @link = field(@row,"Link")
set @imgURL = field(@row,"ImgURL")

210
Marketing Cloud Journeys and Automations Optimize Journey Builder Performance

set @linkURL = field(@row,"LinkURL")

]%%

<td>
<b>%%=v(@title)=%%</b><br>
<img style="width:150px;" src='%%=v(@imgURL)=%%'><br>
<a href='%%=v(@linkURL)=%%'>Buy Here</a></td>

%%[

next @i ]%%

%%[ endif ]%%

ContentBlockBy Key for Footer


%%[var @footer set @footer = "8631b69b-2768-4c81-9362-7077803daef3"]%%
%%=ContentBlockByKey(@footer)=%%

ContentBlockBy Key for Text and Button


%%[var @body set @body = "07b4de4e-681c-47d7-b3af-5c98573c6389"]%%
%%=ContentBlockByKey(@body)=%%

ContentBlockBy Key for Text and Button


%%[var @header set @header = "65b60d01-27fb-48c1-81f5-0884bd06565f"]%%
%%=ContentBlockByKey(@header)=%%

Randomized Recommendations (1 For Loop)


<table cellpadding="0" cellspacing="0" width="100%" style="min-width: 100%; "
class="stylingblock-content-wrapper"><tr><td class="stylingblock-content-wrapper
camarker-inner"><!-- Start Smart Block --><style type="text/css">
.amp {
font-size:1px;
color:#fff;
}</style><span class="amp"></span><style type="text/css">
.code_none{
display:none;
}</style><div align="center" style="padding: 15px; border: 5px dashed #ffffff; color:
#ffffff; font-family: Gotham, Helvetica, Arial, sans-serif; font-size: 18px;
background-color: #6ccdf0;">
Recommended Items</div> <span class="amp"></span> <!-- End Smart Block -->
<table style="width: 100%;border-collapse: collapse;" >
<tr>
%%[

var @random, @num1, @num2


var @rows, @row, @rowCount, @title, @link, @imgsrc, @linkhref

set @rows = LookupRows("ProductRecommendations", "Category", "Shoes")


set @rowCount = rowcount(@rows)

211
Marketing Cloud Journeys and Automations Optimize Journey Builder Performance

if @rowCount > 0 then

set @num1 = 1
set @num2 = @rowCount

/*Change this to retrieve the number of reccos you want to show*/


for @i = 1 to 3 do
/*Get a random row*/
set @random = random(@num1, @num2)
set @row = row(@rows, @random)
set @title = field(@row,"Title")
set @link = field(@row,"Link")
set @imgURL = field(@row,"ImgURL")
set @linkURL = field(@row,"LinkURL")
]%%
<td>
<b>%%=v(@title)=%%</b><br>
<img style="width:150px;" src='%%=v(@imgURL)=%%'><br>
<a href='%%=v(@linkURL)=%%'>%%=v(@title)=%%</a></td>

%%[

next @i ]%%
</tr></table>
%%[ else ]%%

No rows found

%%[ endif ]%%

Dynamic Impression Region Tracking


<table cellpadding="0" cellspacing="0" width="100%" style="min-width: 100%; "
class="stylingblock-content-wrapper"><tr><td class="stylingblock-content-wrapper
camarker-inner"><!-- Start Smart Block --><style type="text/css">
.amp {
font-size:1px;
color:#fff;
}</style><span class="amp"></span><style type="text/css">
.code_none{
display:none;
}</style><div align="center" style="padding: 15px; border: 5px dashed #ffffff; color:
#ffffff; font-family: Gotham, Helvetica, Arial, sans-serif; font-size: 18px;
background-color: #6ccdf0;">
More Recommended Items</div> <span class="amp"></span> <!-- End Smart Block -->
<table style="width: 100%;border-collapse: collapse;" >
<tr>
%%[

set @rows2 = LookupRows("ProductRecommendations2", "Category", "Shoes")


set @rowCount2 = rowcount(@rows2)

if @rowCount2 > 0 then

set @num3 = 1

212
Marketing Cloud Journeys and Automations Optimize Journey Builder Performance

set @num4 = @rowCount2

/*Change this to retrieve the number of reccos you want to show*/


for @i = 1 to 3 do
/*Get a random row*/
set @random2 = random(@num3, @num4)
set @row2 = row(@rows2, @random2)
set @title2 = field(@row2,"Title")
set @link2 = field(@row2,"Link")
set @imgURL2 = field(@row2,"ImgURL")
set @linkURL2 = field(@row2,"LinkURL")
]%%
%%=TreatAsContentArea(@title2,
Concat('%','%=BeginImpressionRegion("',@title2,'")=%','%'))=%%
<td>
<b>%%=v(@title2)=%%</b><br>
<img style="width:150px;" src='%%=v(@imgURL2)=%%'><br>
<a href='%%=v(@linkURL2)=%%'>%%=v(@title2)=%%</a></td>

%%[

next @i ]%%
</tr></table>
%%[ else ]%%

No rows found

%%[ endif ]%%

%%=EndImpressionRegion(0)=%%

SEE ALSO:
Optimize Journey Builder Performance

Monitor Journeys in Slack


Digital Command Center for Slack monitors your journeys so that you can react quickly to campaign problems. For example, you can
receive alerts when a journey doesn’t have as many entries as expected, or when it doesn’t meet the threshold for sends, clicks, opens,
or bounce rates.
Configure Journey Builder rules to identify when to troubleshoot or modify a campaign. For example:
• New Journey Version Validation
• Journey Performance Thresholds
• Abnormally High Journey Entries
• Abnormally Low Journey Entries

213
Marketing Cloud Journeys and Automations The Journeys Dashboard

To see all use cases and get started, see the Digital Command Center for Slack documentation.

SEE ALSO:
Get Started with Digital Command Center
Rule Types and Individual Rule Configuration Options
The Daily Digest Report

The Journeys Dashboard


The Journeys Dashboard provides an overview of all the journeys you create in Marketing Cloud’s Journey Builder. The overview includes
journey type, status, and the last date changes were made. You can also see which version of a journey is accepting new contacts. In
this dashboard, you can sort by journey, status, performance by entry total and goal attainment, or last modified date. You can also filter
the list of journeys, open a journey, and access the journey creation workspace.
The All Journeys dashboard appears when you navigate to Journey Builder. To view details or edit a journey, click the journey title. To
narrow the list of journeys shown, click the corresponding view.

Tip: To return to the dashboard from within the app, click Journeys Dashboard.

All Journeys Dashboard View


This default Journey Builder dashboard shows available journeys in your Marketing Cloud account.
Scheduled Single Sends Dashboard View
View the list of scheduled Single Send journeys in the Journeys Dashboard of Journey Builder.
Recent Single Sends Dashboard View
View metrics for sent Single Send journeys in the Recent Single Sends tab of the Journeys Dashboard in Journey Builder.
Transactional Send Dashboard View
View metrics for sent Transactional journeys in the Transactional tab of the Journeys Dashboard in Journey Builder.

All Journeys Dashboard View


This default Journey Builder dashboard shows available journeys in your Marketing Cloud account.
• Journey: The name of the journey
• Status: Possible journey statuses include:
– Canceled - a Single Send journey was canceled before the scheduled send date and time
– Deleted - the journey was deleted
– Draft - the journey is ready for editing
– Running - the journey is published and active
– Scheduled - the Single Send journey is scheduled to send at the specified date and time
– Sent - a Single Send journey started or sent a message on the specified send date and time
– Stopped - the journey was stopped

• Performance: How the journey is performing according to the goals set for that journey
• Last Modified: When the journey’s most recent update occurred

214
Marketing Cloud Journeys and Automations The Journeys Dashboard

Scheduled Single Sends Dashboard View


View the list of scheduled Single Send journeys in the Journeys Dashboard of Journey Builder.
In Journey Builder, go to the Journeys Dashboard and click Scheduled Single Sends. The list includes:
• Journey: The name of the journey
• Status: Shows that the journey is scheduled
• Channel: The type of message to send
• Send Date: The date the journey is scheduled to send

Recent Single Sends Dashboard View


View metrics for sent Single Send journeys in the Recent Single Sends tab of the Journeys Dashboard in Journey Builder.
In Journey Builder, go to the Journeys Dashboard, and click Recent Single Sends.

Note: The number under each activity reflects the contacts who entered the journey. To review more detailed analytics, click the
activity.

Note: There is a 1-hour delay for these metrics.

• Journey: The name of the journey


• Status: Shows that the journey is sent
• Channel: The type of message sent
• Sent Date: When the journey was sent
Each channel displays different metrics. Metrics not specified for a channel remain blank.

Email
• Delivery: The number and percentage of messages sent minus the number of bounces
• Opens: The number and percentage of unique opens, excluding duplicate opens for a single contact
• Clicks: The number and percentage of unique clicks, excluding duplicate clicks for a single contact
• Bounces: The number and percentage of messages that bounced
• Unsubscribes: The number and percentage of unsubscribes

Push
• Delivery: Number of messages sent to mobile devices
• Opens: Number of unique opens for the message, excluding duplicate opens for a single mobile device

SMS
• Delivery: Number of messages sent to mobile devices
• Clicks: The number and percentage of unique clicks, excluding duplicate clicks for a single contact

Transactional Send Dashboard View


View metrics for sent Transactional journeys in the Transactional tab of the Journeys Dashboard in Journey Builder.

215
Marketing Cloud Journeys and Automations Manage Customer Journeys

Note: The values displayed for these metrics are fetched in real time whenever this page view is refreshed. Google Analytics 360
metrics aren’t available for transactional send journeys.
In Journey Builder, go to the Journeys Dashboard, and click Transactional. The list includes:
• Journey: The name of the journey
• Status: Shows that the journey is scheduled
• Channel: The type of message to send
• Last Modified: When the journey’s most recent update occurred
• Completed: Number of sends that completed in the past 24 hours
• Errored: Number of sends that failed to send in the past 24 hours
• Queued: Number of sends in the sending process
• Queue Age: Age of the oldest message in the queue

Tip: To review comprehensive engagement information, such as click activity, contacts, and email performance, click to open the
journey, and select the Email Analytics view.

Manage Customer Journeys


Journey Builder’s enables you to efficiently create and track Single Send, Transactional Send, and Multi-Step customer journeys in
Marketing Cloud from a unified workspace.
Single Send journeys: Automate a single batch message to a target audience.
Transactional journeys: Send personalized messages in response to a specific action taken by a contact.
Multi-Step journeys: Automate a responsive, customized series of customer interactions.
Follow these recommendations to get the most out of Journey Builder.
• Keep journeys discrete and focused on a single marketing objective, like welcoming new customers or thanking volunteers for
signing up.
• Outline your journey and plan your data and content needs before you create the journey in Journey Builder.
• Start small and build on success. Expand from a single triggered email or message into a short series. Use the simple journey to test
your approach and gather baseline metrics before you add complexity. For example, start with a welcome series that includes timed
waits. Then when you feel comfortable, add Engagement or Decision Splits.
• Consider not just the length of the journey or time between activities, but also the timing of data activities. Time data updates and
automations to avoid conflicts and to ensure that you have the right data when you need it.

Single Send Journeys


Single Send journeys enable you to create and manage simple, one-touch customer journeys within the same workspace used for
Multi-Step journeys. Define the target audience for the entry source, add existing message content or create a message from scratch,
and send or schedule the send for a later date and time. You can also get Einstein’s help to send at the right time and monitor
message engagement metrics all within Journey Builder.
Multi-Step Journeys
Journey Builder’s Multi-Step journeys enable you to create and manage customer journeys through a series of interactions with your
brand. These journeys can include multiple channels and customized journey paths based on customer interactions or attributes.

216
Marketing Cloud Journeys and Automations Manage Customer Journeys

Transactional Send Journeys


Transactional Send journeys enable you to create and manage transactional API messages in the same Journey Builder workspace
used to manage Single Send and Multi-Step journeys. This journey type allows non-technical users to configure a Transactional API
entry source without assistance from a developer. You can also monitor journey performance, such as error counts and queue depth,
from the Journeys Dashboard.
Journey Templates
Journey Templates are pre-defined journeys created by Salesforce or other users. Use a template as-is, or modify it to meet your use
case.
Journey Pause
Pause a running journey to temporarily halt processing contacts and sending messages through the journey. Resume a paused
journey to restart processing contacts. Use this feature to temporarily halt sending messages for business reasons or to update
content included in a journey. You can also pause a journey to allow a higher priority campaign to run instead, and then resume the
journey after that campaign ends.

Single Send Journeys


Single Send journeys enable you to create and manage simple, one-touch customer journeys within the same workspace used for
Multi-Step journeys. Define the target audience for the entry source, add existing message content or create a message from scratch,
and send or schedule the send for a later date and time. You can also get Einstein’s help to send at the right time and monitor message
engagement metrics all within Journey Builder.
Single Send journeys enable you to automate sending when the customer journey only requires one message without subsequent
follow-up. Here are two examples:

Example: Use Case: Retail


Paul manages digital marketing for a national retail company. Each season, the retailer has a flash sale that is open to customers
who reached the gold level. He can schedule an email to send them that announces the availability of flash sale prices on the day
the sale begins. Or he can include the Einstein STO activity before the message, set the activity’s time frame for sending to 24
hours, and begin the journey at least 24 hours before the sale begins.

Example: Use Case: Nonprofit


Jacinda is the engagement officer for a regional nonprofit. There's an urgent need for hands-on volunteers due to a recent natural
disaster. She can create and send the email that outlines the need and includes a call to action to volunteers who opted in to
receive these messages.

Create a Single Send Journey


Use the Single Send feature in Journey Builder to create a single-message journey for a batch audience. You can schedule Single
Send journeys to send immediately or at a future date and time. And you can use Einstein activities to send at the optimal time and
frequency for each contact.

Create a Single Send Journey


Use the Single Send feature in Journey Builder to create a single-message journey for a batch audience. You can schedule Single Send
journeys to send immediately or at a future date and time. And you can use Einstein activities to send at the optimal time and frequency
for each contact.
1. In Journey Builder, click Create New Journey.
2. Navigate to Single Send Journey, and select the type of message to create.

217
Marketing Cloud Journeys and Automations Manage Customer Journeys

Some message types don’t support Einstein features.


• Email
• Push
• SMS

3. To use Einstein STO to send the message to each contact at the best time for them, add the Send Time Optimization activity.
a. To remove the Einstein STO activity, click Delete.
b. When you use both the Einstein STO and the Engagement Frequency activities in the journey, the Engagement Frequency
activity always appears before the STO activity.

Note: The Einstein STO and Einstein Engagement Frequency activities don’t support sending via the SMS activity.

4. To use Einstein Engagement Frequency to segment each contact by the frequency of messages that they’re likely to engage with,
add the Engagement Frequency activity.
a. The Undersaturated path is added by default, but you can choose a different path.
b. To remove the Engagement Frequency activity, click Delete.

5. Click Done.
6. Click the Entry Source on the canvas. For email sends, select the data extension that contains the target audience. For push sends,
select the audience.
7. Click Summary.
8. Click Done.
9. Click the message activity on the canvas.
10. Click Select Message or New Message.
Follow the steps to create an email, push message, or SMS message in Journey Builder.

11. Click Summary.


12. Click Done.
13. Click the Schedule activity, and select On Activation or At specific date and time.
a. If applicable, enter the date and time.

14. Click Done.


15. Click Save.
16. Click Validate and, if needed, follow the instructions to correct any errors found.
17. Click Send or Schedule.

Note: If you selected On Activation, the send begins immediately after you click Send. If you selected At specific date and
time, after you click Schedule, the send begins at the future date and time you configured.

Tip: To cancel a scheduled Single Send journey, open the journey canvas, and click Cancel. Then click Cancel Schedule.

Multi-Step Journeys
Journey Builder’s Multi-Step journeys enable you to create and manage customer journeys through a series of interactions with your
brand. These journeys can include multiple channels and customized journey paths based on customer interactions or attributes.

218
Marketing Cloud Journeys and Automations Manage Customer Journeys

Keep journeys discrete and focused on a single marketing objective, like welcoming new customers or thanking volunteers for signing
up. Here are two examples.

Tip: Start small with a single triggered message and build on success by creating a short series. Use the simple journey to test
your approach and gather baseline metrics before you add complexity. For example, start with a welcome series that includes
timed waits. Then when you feel comfortable, add Engagement or Decision Splits.

Example: Use Case: Financial Services


Michael manages new customer engagement for a financial institution. He creates a journey to tell customers about account
features, like the mobile app, funds transfers, and the free bill pay.

Example: Use Case: Retail


Angela is the marketing manager for a large online retailer. She creates a customer journey to re-engage with customers who add
items to their cart, but don’t make a purchase. This journey includes a reminder, followed two days later by a discount offer for
customers who still haven’t completed the purchase.

Create a Multi-Step Journey in Journey Builder


Use the Multi-Step feature in Journey Builder to create automated, customized, multiple-touch customer journeys in Marketing
Cloud.

Create a Multi-Step Journey in Journey Builder


Use the Multi-Step feature in Journey Builder to create automated, customized, multiple-touch customer journeys in Marketing Cloud.

Tip: Before you start, outline your journey and plan your data and content needs. Consider not just the length of the journey or
time between activities, but also the timing of data activities. Time data updates and automations to avoid conflicts and to ensure
that you have the right data when you need it.
1. Click Create New Journey.
2. To create a Multi-Step journey from scratch, click Build.

Tip: To create a journey from a template, click Journey Template in the build panel. See Create a Journey from a Template for
step-by-step instructions.

3.
To configure the Journey Settings, click .
4.
To set a Goal, click .
5.
To set the Exit Criteria, click .
6. Drag an Entry Source onto the canvas and click to configure.
7. Follow the steps to configure the entry source.
For more details, see Entry Sources.

8. Drag an activity onto the canvas and click to configure.

Tip: Do not begin a journey with a Wait activity.

219
Marketing Cloud Journeys and Automations Manage Customer Journeys

9. Follow the steps to configure the activity.


For more details, see Journey Builder Activities.

10. For each planned activity, repeat steps 8 and 9.

Tip: To copy a journey activity, click . To edit an activity, click to open it. To delete a journey activity, hover over the

activity, click , and click Delete. To rename a journey activity, click. .

11. Click Save.


12. Click Validate.
13. If applicable, correct any errors that occur.
14. Click Test.
15. Click Activate.

Welcome Campaigns
Welcome email campaigns are a good way to greet new customers when they sign up or opt in for marketing communications.
You can use Journey Builder to improve the customer experience by expanding from a single email to a series of messages.
Retail Campaigns
Retailers use marketing campaigns built in Journey Builder to promote a sale, announce a new product, or invite customers to a
special event. The goal for these campaigns is to increase conversion and drive sales.
Anniversary Campaigns
Even a simple reminder campaign in Journey Builder can help build a relationship with your clients and increase brand engagement.
Typical anniversary campaigns focus on a special date for a customer, like a birthday or sign-up date. These yearly messages can be
part of a renewal strategy. You can also celebrate your company’s milestones or send a reminder to customers who haven’t purchased
in a while.

Welcome Campaigns
Welcome email campaigns are a good way to greet new customers when they sign up or opt in for marketing communications. You
can use Journey Builder to improve the customer experience by expanding from a single email to a series of messages.
A welcome series is your chance to create a great first impression for your new client. A welcome series:
• Keeps you from trying to do too much in a single email.
• Emphasizes different aspects of your company or products in a series of messages.
• Sets expectations about the content, quality, and cadence of communications with your company.
• Customizes the messages and delivery based on customer interactions with your messages, or actions customers take on your
website.
Here are examples of when and how to use a welcome series:

Example: A customer purchases a device and receives a thank you email with a link to set up alerts and notifications. A second
email encourages them to finish filling out their profile. A third email asks them to follow the company’s social media feeds.

Example: A customer creates a financial account and receives a welcome email with a link to download a mobile app. A second
email asks if they know how to transfer money between accounts and includes a how-to video. A third email informs the customer
about the company’s free bill pay service.

220
Marketing Cloud Journeys and Automations Manage Customer Journeys

Example: A teacher downloads a white paper about how to create a fundraising campaign and receives a welcome email to the
website. A second email promotes getting started by inviting the teacher to fill out a user profile. A third email features an example
of a fundraising campaign with a link that says “Start your fundraising campaign today!”

Welcome Journey
Use a Data Extension entry source and timed waits to introduce yourself and your brand to a new customer. If you are new to Journey
Builder, you can use this template to get started quickly and establish baseline engagement metrics. This Welcome Series template uses
a data extension entry source to start the journey and create a timed sequence of emails to promote features or services.

New Purchase: Beginner Welcome Series Example


A retailer updates new customer data through a daily import to the Marketing Cloud from a web shopping cart. This data is stored in
the New Customers data extension, which is used as the entry source for the New Purchase Journey. After the import, new customers
in the data extension receive an email that congratulates them on their purchase and prompts them to complete their online profile.
After a set amount of time, customers receive a second email that showcases product features or products related to the customer’s
purchase. Following another wait, customers receive a third email that promotes extra features or services. Once the sequence is complete,
the customer exits the New Purchase Journey.

Entry Source
This Welcome Series template uses a Data Extension entry source. Before you create the data extension, confirm that the customer data
used for personalization or dynamic content is stored in Marketing Cloud. The target audience is selected through the entry source
configuration wizard in Journey Builder.

Message Sequence and Content


For the Welcome Series with timed waits, we recommend three emails.

Email 1 Confirm subscription, introduce your brand, and set expectations


for future content and cadence.

Email 2 Provide an offer or coupon as a thank you, or showcase a feature


or service such as loyalty club membership or social media
programs.

Email 3 Follow up on the offer or coupon with a reminder or showcase


more features or services.

221
Marketing Cloud Journeys and Automations Manage Customer Journeys

Welcome Journey with Engagement Splits


Step up your game by incorporating Engagement Splits into your Welcome Series. Using an automation to populate your data extension
allows you to place contacts into the journey more frequently. Engagement Splits allow you to customize the journey based on customer
engagement (opens, bounces, or clicks) with your emails.

The Intermediate Welcome Series uses a data extension as the entry source to add customers who meet the criteria more frequently.
Flow control elements like Engagement Splits and Decision Splits allow you to customize the journey for your customers. For example,
you include more emails to re-engage with customers who don’t respond to your welcome series. Goals let you track customers’ progress
toward the journey’s objective.

New Purchase: Example


To update New Customer data frequently, use Automation Studio to import customers into the data extension and admit contacts to
the Welcome Journey throughout the day. Use splits to identify customers who don't open their emails or download the mobile app.
Then, send follow-up emails to those customers to promote the message from the first email.
If a customer engages with the email, send a sequence of messages as outlined in the Basic Welcome Series. You can set a journey goal
to measure engagement against your marketing objective. For example, create a goal for the percentage of customers who open emails
or download the app.

Message Sequence and Content


For the Welcome Series with timed waits, we recommend three emails. The following suggestions show how messages can vary in
content and focus.

Email 1 Confirm subscription, introduce your brand, and set expectations


for future content and cadence.

Email 1a If the customer does not engage with your first message, consider
personalizing subject lines, offer a discount or coupon, or highlight
specific brand offerings.

Email 1b This email could be your last chance to engage with the customer.
Try altering the placement of your call to action or consider
emphasizing your brand with logos and pictures instead of
text-based content.

222
Marketing Cloud Journeys and Automations Manage Customer Journeys

Email 2 Provide an offer or coupon as a thank you, or showcase a feature


or service such as loyalty club membership or social media
programs.

Email 3 Follow up on the offer or coupon with a reminder, or showcase


more features or services.

Retail Campaigns
Retailers use marketing campaigns built in Journey Builder to promote a sale, announce a new product, or invite customers to a special
event. The goal for these campaigns is to increase conversion and drive sales.
Here are examples of retail marketing campaigns:

Example: A customer selects several items and places them into their cart but does not purchase them. Use a targeted retail
campaign to remind the customer of the items and urge them to complete the purchase.

Example: A customer bought a product two years ago, and a new version of the product is released. Send an email with details
about the new features and improvements and a link to purchase the new product.

Abandoned Cart
Re-engage customers who left without a purchase. Abandoned cart campaigns include a sequence of reminder messages.

The difficulty is in deciding the timing and content of the messages, and the availability of real-time data from your website. The data
enables you to place customers into the journey in a timely manner or remove them when they make a purchase or clear their cart.
Think about why your customers leave items in their cart. Are they trying to determine the total price for comparison? Are they scared
off by the shipping cost or the extra step of creating an account to make the purchase?
If you find customers leaving after they see the shipping cost, consider including a free shipping coupon in your abandoned cart campaign.
If the items have a low purchase price, send your first email more quickly. Perhaps the customer needs a reminder to complete the order.

Entry Source
Timing is important for an abandoned cart campaign. You want to remind the customer in a timely manner, generally around an hour
after the customer has left the cart. You can break this rule for big-ticket items or items that customers often spend time researching,
like computers or mattresses.
Contacts can enter a journey from an API event tied to the shopping cart technology on your website. That way, the timing of the journey
is based on customer behavior, and not on their inclusion in an audience segment or population.

223
Marketing Cloud Journeys and Automations Manage Customer Journeys

If they abandon another cart in the future, contacts can reenter the journey. In other words, if customers add products to a cart, they
don’t reenter the journey until they complete the campaign sequence.

Message Sequence and Content


You can send two or three emails as part of an abandoned cart campaign, but the first two are the most important and effective. Remind
customers of the items in the cart and provide a clear call to action in the first email. Pictures of the products are best, and the call to
action can take the customer to their cart.
Incorporate coupons into any email in the sequence. Some retailers hold off sending a coupon until the second or third email as an extra
incentive, while others send a coupon immediately. Knowing your customer’s buying preferences can help you decide when and how
to offer incentives.

Email 1 Remind customers of their abandoned items and provide a clear


call to action to return customers to their cart.

Email 2 Provide a coupon or another incentive to lower total cost and


prompt customers to revisit their abandoned cart.

Journey Path
To track the effectiveness of the abandoned cart emails, incorporate a Random Split in the path. To measure overall effectiveness, track
and compare conversions between customers who see the reminder emails and customers who don’t. Or, to test different creative
subject lines, add a branch. If you prefer to have all of your customers complete the journey, simply delete the random split.
Waits are important to time the delivery of messages. In most abandoned cart campaigns, you want to remind customers quickly so
they don’t lose interest or buy from another site. Typically, the first wait is set between 1 hour and 1 day, depending on your knowledge
of your customer’s buying behavior. The best practice is to send the first email 1 or 2 hours after the customer abandons the cart.
Set the second wait time to anywhere from 24 to 72 hours. We recommend a 1-day wait before sending a second email. Remember to
set a Goal or use a Decision Split to remove customers from the journey if they complete a purchase or clear their cart.

Abandoned Cart for Big Ticket Items


Support customers who left large-ticket items in their cart or who have abandoned a funnel by helping them make an informed choice.

Abandoned cart or funnel campaigns are a sequence of reminder messages, so the journey is fairly simple. The difficulty is in deciding
the timing and content of the messages, and the availability of real-time data from your website. The data enables you to place customers
into the journey in a timely manner or remove them when they make a purchase or clear their cart.
Think about why your customers don’t complete a purchase. If you sell products that customers research extensively before a purchase,
such as auto insurance or electronics, you want to help customers make an informed choice. You can give customers more time and
provide details, such as ratings or links to more information, to help them decide.

224
Marketing Cloud Journeys and Automations Manage Customer Journeys

Entry Source
Timing is important for an abandoned cart or funnel campaign. You want to remind the customer in a timely manner without rushing
them through a decision about a big-ticket purchase.
Contacts can enter a journey from an API event tied to the shopping cart or purchase funnel on your website. That way, the delivery of
the messages is based on customer behavior, not on their inclusion in an audience segment or population.
Configure the journey to allow customers who abandon another cart in the future, to reenter. This setting enables customers to add
products to a cart or review a saved quote, without reentering the journey until they complete the entire campaign sequence.

Message Sequence and Content


For a longer buying cycle, three emails are often sent to support customers as they go through their decision-making. The first message
reminds the customer of what they abandoned and provides a clear call to action to return and complete the purchase.
The second email can incorporate customer ratings, reviews, or more details about the products or services. The third email is generally
your last chance and can include a harder sell than the previous messages. If not used previously, you could also include an incentive
here.

Email 1 Remind customers of their abandoned products or services and


provide a clear call to action to allow customers to complete a
purchase.

Email 2 Include more details, such as customer ratings or reviews, to help


customers make an informed purchasing decision.

Email 3 Include new incentives or a stronger sales pitch.

Journey Path
Waits are important to time the delivery of messages. In most abandoned cart campaigns, you want to remind customers quickly so
they don’t lose interest or buy from another site. But if you expect customers to need extra time to research or decide on their purchase,
make your waits longer.
Set the second wait time to anywhere from 24 to 72 hours. We recommend a 1-day wait before sending a second email. The final wait
can also be from 24 to 72 hours from the previous email, depending on what you know about the customer’s buying behavior.
If contacts complete a purchase or clear their cart, use Decision Splits and Goals Decision Split to remove them from the journey.

Anniversary Campaigns
Even a simple reminder campaign in Journey Builder can help build a relationship with your clients and increase brand engagement.
Typical anniversary campaigns focus on a special date for a customer, like a birthday or sign-up date. These yearly messages can be part
of a renewal strategy. You can also celebrate your company’s milestones or send a reminder to customers who haven’t purchased in a
while.
Here are examples of when you could use an anniversary campaign:

Example: A customer has a yearly subscription to an online fitness website, and they need a reminder before the expiration date
to renew.

Example: A customer entered birthday information as part of signing up for your newsletter so they can receive a special offer
on their birthday.

225
Marketing Cloud Journeys and Automations Manage Customer Journeys

Example: Your company, or a company you do business with, has been in business for five years and you want to send
congratulations to employees.

Simple Anniversary Email


Send a single email to a customer on a specific date on a regular cadence. A simple reminder campaign can help build a relationship
with your clients and increase brand engagement.

Typical anniversary campaigns focus on a special date for customers, like their birthday or sign-up date. In this single-message journey,
you send a message to your customers triggered by a specific date. The goals of a simple anniversary campaign are:
• Strengthen relationship with your customers.
• Encourage engagement with your brand.
• Drive renewal or repeat purchases.

Entry Source
Depending on how you set up your anniversary campaign, you can use a date-based event or a data extension entry source. For example,
if you want to use a client’s birthday or service anniversary, you can use a date-based event. You can create a data extension that includes
contacts who haven’t purchased anything in the last 60 days or are due for renewal.
If you use a date-based event, make sure that you have the data you need, like a client’s birthday, in your Contact Builder data model.
Also, consider timing. You can set the journey start before or after the date. Think about the best time for your clients to get the information:
on the specific date, like a birthday message, or a month before the renewal date.

Message Sequence and Content


In this simple campaign, you send a single message.

Email 1 Communicate the message clearly and succinctly (birthday or


renewal). Provide necessary details and calls to action, like a link
to your website or timing of renewal.

Journey Path
The nice thing about this simple journey is that you can build on it later by copying or versioning the journey and adding more messages
or splits. By starting with a simple journey, you learn the steps for setting up an automated campaign and get some baseline engagement
statistics. When you’re comfortable, you can add complexity to your campaigns.
For example, you can add engagement splits to send reminders based on opens or clicks. Or, add timed waits and explain the benefits
of renewal through a series of messages.

226
Marketing Cloud Journeys and Automations Manage Customer Journeys

Birthday Journey
Make your customers feel special with a birthday coupon. Celebrating birthdays is a great way to engage with your customers and let
them know how much you appreciate their business.

The journey is personalized, using the information you know about the contact, and can remind them of your brand and products or
services on a regular cadence. A birthday journey can:
• Delight your customers by wishing them a Happy Birthday.
• Send them a coupon or redeemable discount to drive conversions.
• Link them to your website, reminding them of your product and services.
• Provide a gift guide and the ability to make a shopping list for family and friends.

Entry Source
Use a date-based event to place contacts into a journey based on data stored in Contact Builder. For birthday journey campaigns, we
recommend that you send the first message a few days before the birth date. This plan allows time for them to redeem the coupon.
Select the attribute in the Contact model where the birthday is stored. If contact demographic data is stored in multiple places, be sure
to select the attribute, from the correct data location. Set the re-entry to Yearly.

Message Sequence and Content


The first email in an anniversary campaign series sends your happy thoughts about the customer's important day and reestablishes your
brand. For coupon redemption, provide the coupon or link to the website and any details that are important, like expiration and limitations.
Ensure that you have a way to capture coupon redemption so you can send reminder emails only if necessary. Personalize subject lines
and provide a clear call to action within the email.

Email 1 Send well wishes for the customer’s happy day and any offer or
celebration coupon, including any information about expiration
or limitations.

Email 1a If the customer has not redeemed their coupon, remind them
about the coupon and emphasize their special day.

227
Marketing Cloud Journeys and Automations Manage Customer Journeys

Email 1b If after the customer receives the first reminder, they still haven’t
redeemed their coupon, send them a second reminder and
emphasize the expiration date.

Email 2 Re-emphasize your customer’s special day and thank them for their
continued engagement with your brand.

Journey Path
To increase the odds of coupon redemption, you can use decision splits to provide timely reminders. Using a decision split, you can
check to see if a customer redeemed their coupon before sending a reminder, eliminating unnecessary customer contact.
You must be able to import customer data from your point of sale into Marketing Cloud and Contact Builder in a timely manner. That
way, the decision split uses the most recent data.
Waits are important to time the delivery of messages. Send the birthday message and coupon to your customers anywhere from a few
days to a week or two before their birthday. You want to give them enough time to redeem the coupon before the first decision split
and send the reminders before the offer or coupon expires.
To set up the waits and decision splits, start with the contact’s birthday or coupon expiration date, and work backward to figure out your
timing. Don’t forget to schedule the data import or update to Contact Builder as part of this planning.

Transactional Send Journeys


Transactional Send journeys enable you to create and manage transactional API messages in the same Journey Builder workspace used
to manage Single Send and Multi-Step journeys. This journey type allows non-technical users to configure a Transactional API entry
source without assistance from a developer. You can also monitor journey performance, such as error counts and queue depth, from
the Journeys Dashboard.
Use a Transactional Send journey to trigger a single message to contacts when they take a specific action. Here are two examples. For
more information, see Get Started with Transactional Messaging API.

Example: Use Case: Services


Renee is the membership renewal manager for a curated beauty products subscription box. She creates a Journey for password
resets collaborating with the login development team.

Example: Use Case: Retail


Chris is the customer service manager for a large online retailer. They create a journey that sends a confirmation of purchase when
a customer places an order. Because they have Event Notification Service enabled, they receive a notification if a message bounces.

Create a Transactional Send Journey


Use the Transactional Send feature in Journey Builder to create messages triggered by the Transactional Send API
Clear a Transactional Send Journey Queue
You can clear a Transactional Send Journey queue when messages in a paused or errored journey are outdated and no longer eligible
for delivery.

228
Marketing Cloud Journeys and Automations Manage Customer Journeys

Update an Email Activity in a Transactional Send Journey


Follow these steps to update an email message in a Transactional Send Journey.

SEE ALSO:
Event Notification Service

Create a Transactional Send Journey


Use the Transactional Send feature in Journey Builder to create messages triggered by the Transactional Send API
1. In Journey Builder, click Create New Journey.
2. Navigate to Transactional Send Journey, and click Email.
3. Enter a journey name. The name can’t be changed after the journey is activated.
If you don’t enter a name, the system generates one.

4. Click the Transactional API Event on the canvas.

Important: To send messages, use the messaging/v1/{channel}/messages API

5. Enter an Event Definition Key.


6. Click Select a Data Extension.
7. Select the data extension to use.
8. Click Done.
9. Click the message activity on the canvas.
10. Click Select Message or New Message.
Follow the steps to create an email in Journey Builder.

11. Click Delivery Options.


12. Choose the subscribers to include and click Select.
13. Select to track clicks, if desired.
14. Click Advanced Options and add carbon copy and blind copy addresses, if desired.
15. Click Summary.
16. Click Done.
17. Click Save.
18. Click Activate.
19. Review the validation results and, if necessary, correct errors.

Clear a Transactional Send Journey Queue


You can clear a Transactional Send Journey queue when messages in a paused or errored journey are outdated and no longer eligible
for delivery.
1. If the journey is Active, select Pause.
2.
Click , and select Clear Message Queue.

229
Marketing Cloud Journeys and Automations Manage Customer Journeys

3. Click Clear Queue.


Any queued messages are terminated and set to a Not Sent.
4. To confirm deletion, click the message activity, and review the Not Sent records or the Errored count in the Transactional view on
the Journey Dashboard.

Update an Email Activity in a Transactional Send Journey


Follow these steps to update an email message in a Transactional Send Journey.
1. In a running journey, click the email activity to edit.
2. Select Activity Summary.
3. Click Edit and make your changes.
4. Click Done.
Changes are applied immediately.

Journey Templates
Journey Templates are pre-defined journeys created by Salesforce or other users. Use a template as-is, or modify it to meet your use
case.
Find a template in Journey Builder via one of these methods.
• Select a template from the gallery on the homepage after you log in to Marketing Cloud.
• In Journey Builder, click the Templates tab.
• In Journey Builder, click Create New Journey, and then click journey template.

Note: To see templates that don’t appear on the first page of results, click View More Templates.

Salesforce Templates
Each pre-designed Salesforce Template includes best practice guidance. Click outside the guide on the canvas, or click X to turn off best
practice guidance.

Note: To disable template guidance for all journeys in your account, including journeys created from a different template, close

the guidance three times using the X. To manually disable or re-enable best practice guidance, click .
Choose a template from these available options.
• Abandoned Cart - Everyday Purchase
• Abandoned Cart - Significant Purchase
• Anniversary Send
• Birthday Journey with Coupon
• Event Follow-up
• Welcome Journey
• Welcome Journey with Engagement
• Behavioral Targeting with Audience Studio
• Re-engagement

230
Marketing Cloud Journeys and Automations Manage Customer Journeys

Shared Templates
Shared templates help you efficiently replicate journeys that address common use cases across your business unit. Users with the Journey
Builder Create/Edit permission for the business unit where the template was created can edit and delete shared templates.

Note: To enable users to share templates at the enterprise level, select Enable Enterprise Level Sharing in the Marketing Cloud
Setup app.

Create a Journey from a Template


To create a journey using a journey template, select a template from the Marketing Cloud home page or in Journey Builder. Alternately,
select a template from the template gallery, which includes both, Salesforce and shared templates. Users with the Journey Builder
Create/Edit permission in the business unit where the template was created can edit and delete shared templates.
Create a Shared Template
Follow these steps to create a shared template from a journey you create in Marketing Cloud’s Journey Builder.

Create a Journey from a Template


To create a journey using a journey template, select a template from the Marketing Cloud home page or in Journey Builder. Alternately,
select a template from the template gallery, which includes both, Salesforce and shared templates. Users with the Journey Builder
Create/Edit permission in the business unit where the template was created can edit and delete shared templates.

Note: Configure the schedule each time you create a journey from a shared template.

1. Select a template

Tip: Access journey templates from the Marketing Cloud home page or the Journey Builder Templates gallery.

2. Click Get Started.


3.
To configure the journey settings, click .
4.
To set a goal, click .
5.
To set an exit criteria, click .
6. Configure the entry source.
When you access a shared template, the entry source is not configured, but it matches the entry source type used in the template.
You can copy the data extension in a template to use it as the entry source or you can choose a different data extension. When you
choose to copy the data extension, you must rename it. If a data extension is deleted after it's included in a template, template users
must choose a different data extension.

7. If applicable, configure each canvas activity.

Note: In a shared template, random split, decision split, and wait activities maintain the configuration that the template’s
creator set. However, you must reconfigure any other activities for the new journey. Decision splits in a journey created from
a template that originated in a different business unit maintain only the number of paths and path names. Decision splits in
a journey created from a template in the same business unit that contain only Contact Data attributes maintain an identical
configuration.

8. Click Save.

231
Marketing Cloud Journeys and Automations Manage Customer Journeys

9. Click Validate.
10. Click Test.
11. Click Activate.

Create a Shared Template


Follow these steps to create a shared template from a journey you create in Marketing Cloud’s Journey Builder.

Note: This feature is not supported in Single Send journeys.

Tip: When you share a template, wait and random split activities are configured when the template user opens the template.
Entry sources and some activities aren’t configured when others use this template.
To allow sharing, ask your admin to enable the Across Enterprise Sharing admin setting for your business unit.
1.
Open the journey in edit mode and click .
2. Click Save as Template.
3. Click Define Template Info.
4. Enter a name and description. You can include instructions for other users.
5. To share the template with all business units in your enterprise, click and enable Sharing.
6. Click Summary.
7. Click Create Template.

Share a Template
Users with Create/Edit permission in Journey Builder can share the template when they create or edit it.
Edit a Shared Template
Users with Create/Edit permission in Journey Builder can edit a shared template. Existing journeys created from the template are
not affected.
Delete a Shared Template
Users with Create/Edit permission in Journey Builder can delete shared templates from a business unit. When you delete a shared
template, it is no longer available to any business unit. Existing journeys created from the template are not affected.

Share a Template
Users with Create/Edit permission in Journey Builder can share the template when they create or edit it.
When you turn off sharing for a template, others in your org can no longer access it in the My Templates gallery. Existing journeys created
from the template are not affected.

Tip: To share a template as you create it, turn on Share Across Business Units.

Follow these steps to share an existing template.


1. Click .
2. In the Sharing section, click Edit.
3. Turn on Share Across Business Units.

232
Marketing Cloud Journeys and Automations Manage Customer Journeys

Edit a Shared Template


Users with Create/Edit permission in Journey Builder can edit a shared template. Existing journeys created from the template are not
affected.

Note: Salesforce templates are not editable.

1. Click Templates.
2. Click My Templates.
3. Click .
4. Click Edit in a template section or click Edit Workflow.
5. Make your changes then click Save Template.

Note: Clicking the template card anywhere but opens the template in journey mode. If you accidentally open the
template in journey mode, click Change Template, then click .

Delete a Shared Template


Users with Create/Edit permission in Journey Builder can delete shared templates from a business unit. When you delete a shared
template, it is no longer available to any business unit. Existing journeys created from the template are not affected.
1. Click Templates.
2. Click My Templates.
3. Click .

Note: Clicking the template card anywhere but opens the template in journey mode. If you accidentally open the
template in journey mode, click Change Template, then click .

4. Click Get Started.


5.
Click .
6. Click Delete Template.
7. Click Delete.

Journey Pause
Pause a running journey to temporarily halt processing contacts and sending messages through the journey. Resume a paused journey
to restart processing contacts. Use this feature to temporarily halt sending messages for business reasons or to update content included
in a journey. You can also pause a journey to allow a higher priority campaign to run instead, and then resume the journey after that
campaign ends.

Paused Journey Behavior


You can pause a particular version or all versions of a journey to halt processing contacts. After a journey is paused, Journey Builder
doesn’t create new sends. Contacts processed by Journey Builder and queued for sending aren’t paused.

233
Marketing Cloud Journeys and Automations Manage Customer Journeys

Journeys can be paused for up to 14 days in 1-day increments. Each day is a 24-hour period starting from when the journey is paused.
While pausing a journey, you can configure it to resume or stop at the end of the pause duration. You can manually resume a paused
journey anytime during the pause duration.
You can extend or not extend the wait time of all Wait by Duration activities on that journey by the duration of the journey’s pause. If
you don’t extend the wait time and the wait expires during a pause, the contact is processed after the journey resumes. Your selection
for this option applies to all Wait by Duration activities on the paused journey (or all versions of the journey). This configuration option
is only available for Wait by Duration activities. The wait time for Wait by Attribute and Wait for Date isn’t extended by default.
The system processes Wait Until activities, but the contact doesn’t go to the next activity until the journey resumes.
While pausing a journey, you can queue any contacts entering a paused journey and process them after the journey resumes. You can
also drop the contacts trying to enter a paused journey. This configuration option isn’t available if Evaluate All Records is selected with
the Data Extension Entry source. In that scenario, contacts entering a paused journey aren’t queued and dropped by default.

Note: If an In-App Message is sent but not yet displayed, pausing the journey doesn’t cancel the message display.

Resume a Paused Journey


When a paused journey resumes, all contacts with expired wait periods are evaluated against any goal criteria. If the option for contacts
to exit upon meeting the goal is selected, then all contacts with expired wait periods are evaluated against goal criteria. Contacts that
meet the criteria are processed for exiting the journey.
Some contacts use a send time determined by the Einstein Send Time Optimization (STO) activity. If that time arrives when the journey
is paused, then those contacts are processed for sending only after the journey resumes.
The Path Optimizer activity performs a test to calculate a winning path. The test continues after a journey is paused. Because no contacts
are processed for sending messages when a journey is paused, the pause can hinder the activity’s ability to determine the winning path.
Automations tied to paused journeys continue to run when the journeys are paused. The paused journey doesn’t affect Other journeys
that use the same automation as a paused journey.

Pause and Resume a Multi-Step Journey


Follow these steps to pause a Multi-Step journey in Marketing Cloud Journey Builder.
Pause and Resume a Transactional Send Journey
Follow these steps to pause and resume a Transactional Send journey in Marketing Cloud Journey Builder.

Pause and Resume a Multi-Step Journey


Follow these steps to pause a Multi-Step journey in Marketing Cloud Journey Builder.

Note: Enable the Activate/Stop/Pause/Resume/Send/Schedule permission to the user’s Journey Builder Role to use this feature.
For more details about the permissions granted with user roles in Journey Builder, see Journey Builder Roles and Marketing Cloud
Roles.

1. Navigate to and click the running journey.


2. Click Pause.
3. Choose whether to pause the current version of the journey or all running versions.
4. Select whether to extend the duration of any Wait By Duration activities by the amount of time you pause the journey.
5. Select the number of days for the pause.
6. Select the action that occurs when the pause expires.

234
Marketing Cloud Journeys and Automations Journey Settings

7. Select whether the journey queues contacts at the entry source for processing after the pause expires.
If you don’t queue the contacts, contacts that enter a paused journey are ignored and not processed. This option is available if you
select Evaluate New Records Only for the Data Extension entry source. By default, this option does not queue contacts. You cannot
change this setting while the journey is paused.

Pause and Resume a Transactional Send Journey


Follow these steps to pause and resume a Transactional Send journey in Marketing Cloud Journey Builder.

Note: Enable the Activate/Stop/Pause/Resume/Send/Schedule permission to the user’s Journey Builder Role to use this feature.
For more details about the permissions granted with user roles in Journey Builder, see Journey Builder Roles and Marketing Cloud
Roles.

1. Navigate to and click the running journey.


2. Click Pause, then click Pause again.

Tip: To view the age of the oldest message in the queue, hover over the number in the queue in the Transactional dashboard.

3. Fix or update the message content or activity settings


4. Click Resume.
To confirm that the journey resumed, return to the Journeys Dashboard, locate the journey, and check the queue.

Note: Messages queued longer than three days aren’t delivered after the journey resumes. Contacts queued longer than
three days are set to Not Sent.

Journey Settings
Choose the settings that determine when the contact enters a Marketing Cloud journey and which address Journey Builder uses to
message that contact.
Use Journey Settings to select the contact entry mode for a journey and designate a primary email address for contacts entering the

journey. Contact entry mode dictates when a contact is eligible to enter a journey. To access settings, click , then Journey
Settings.

Contact Entry
Contact entry mode dictates when the contact is eligible to enter a journey. Journey Builder offers three entry options to define when
contacts can enter a journey. To learn more, see Choose a Contact Entry Mode on page 237.
• Select No re-entry if contacts can’t enter the journey again after a previous entry. For example, in a Welcome Journey, set your entry
to No re-entry because you want your customers to be introduced to your brand only one time. This setting applies across all
versions of a journey. After you activate the journey, you can’t change this option.

Note: Test Mode doesn’t support this setting. When testing a journey, use Re-entry at any time or Re-entry only after
exiting. Then, select No re-entry after testing if necessary.

• Select Re-entry at any time if contacts can enter the journey multiple times before exiting. This setting admits the contact into the
journey each time that contact meets filter criteria. For example, if you use a journey for a post-purchase engagement, you can allow

235
Marketing Cloud Journeys and Automations Journey Settings

contacts to enter the journey whenever they make a purchase. After you select this option and activate the journey, you can change
the option to Re-entry only after exiting after creating another version
• Select Re-entry only after exiting if a contact must exit the journey before reentering it. This setting admits the contact into the
journey when that contact meets filter criteria, if applicable. But the system doesn’t readmit that contact into the journey until after
that contact exits the journey. After a contact exits the journey, the contact can enter again after meeting the filter criteria. For
example, contacts can go through a journey multiple times but not concurrently, such as for a seasonal promotion or a yearly
membership renewal. After you select this option and activate the journey, you can change the setting to Re-entry at any time by
creating another version.
The system applies the Contact Entry setting at the journey level for each version of a journey.

Note: The contact entry setting isn’t configurable for Single Send journeys.

Consider timing and how you want customers to enter the journey. Choose the best cadence for putting users into the journey, and
consider re-entry criteria. For example, in a Welcome Journey, set your entry to No re-entry because you want your customers to be
introduced to your brand only one time. Sometimes, contacts can go through a journey multiple times but not concurrently such as a
seasonal promotion or a yearly membership renewal. In this case, use Re-entry only after exiting. Re-entry anytime allows the contact
to enter the journey multiple times simultaneously. For example, if you use a journey for a post-purchase engagement, you can allow
contacts to enter the journey whenever they make a purchase.

Default Email Address and Mobile Number


Define a default email address and mobile number for each contact before sending messages in a journey. Often, Marketing Cloud stores
more than one email address or mobile number for a single contact. Use this feature to designate which address or number receives
the message.
Before you set a default email address, configure the journey’s entry source. Setting up the entry source populates the entry source email
attribute option.
Do you want your journey to always send to the email address associated with each contact, or can that email address change during
the journey? If the email address can change, choose to identify and use an email attribute from Contacts.
• Select Use email attribute from Contacts. If the email address can change, as in a journey with a long duration, choose to use the
email attribute associated with Contacts.
• Select Use email attribute from Entry Source. If a contact’s email address is unlikely to change or a journey doesn’t allow re-entry,
use the email for the contact at entry.
The same principles apply to the mobile number you select as default.

Considerations
• Many entry source data extensions include a single column with the EmailAddress data type. In this case, that column is identified
as containing each contact’s default primary email address. You can change this setting.
• If more than one entry source data extension column has EmailAddress as its data type, Journey Builder prompts you to select one.
• When journey data from the entry source includes the email address that is used as default, set that email address as default by
selecting Use email attribute from Entry Source.
• The email fields displayed when you choose Use email attribute from Contacts include only the fields present in a data extension
marked as a Population or Synchronized Data Extension.
• If a default email address exists for contacts entering the journey, select Use email attribute from Contacts.
• To set the default mobile number to the priority 1 number stored in the contact record, select Use mobile attribute from Contacts.

236
Marketing Cloud Journeys and Automations Journey Settings

Note: The default address set here overrides the current default email address setting for each contact.

Note: Fields configured with the EmailAddress data type are available only after an entry source is fully configured.

Transaction Key
To identify a contact entering a journey as unique, create a transaction key.

Note: Transaction Key is available with Custom Events only. Add the Transaction Key setting to the config.json file for the journey's
entry event to make it available in Journey Settings.
Transaction keys combine an ID value that Journey Builder generates with a unique contact attribute value to create a wholly unique
identifier. All contact filters in the journey observe this unique identifier, including filters in the entry event and decision split activities.
This identifier prevents contacts from following the unintended path when their ContactID still matches current entry or decision split
criteria due to a previous transaction. The contact attributes available for creating a transaction key are ContactID and ContactKey.
Transaction keys are commonly used when a journey's entry event is initiated via API.

Google Analytics Integration


The Google Analytics 360 or Google Analytics Free integration tracks links in your journey emails and can track links by domain. If enabled
for your account, Google Analytics tracking is available by default in all journeys.

Note: To narrow results, add specific domains to track. By including one or more domains, you see only links pointing to these
domains in journey metrics.

Choose a Contact Entry Mode


Journey Builder observes Contact Entry mode at the journey level and it persists for each version of a journey in Marketing Cloud.
Contact entry mode dictates when a contact is eligible to enter a journey. Journey Builder offers three entry options to define when
contacts can enter a journey.
Enable or Disable Google Analytics
The Google Analytics Free integration allows marketers with Journey Builder to apply automated tracking on email and SMS messages.
Google Analytics users can also see reporting within Journey Builder that provides insights into how their customers are engaging
with their messaging and web-based marketing. Marketing Cloud customers with the GA360 integration can also act on these
insights by creating audiences in Google Analytics, then sending them to Marketing Cloud to use for remarketing.

SEE ALSO:
Transaction Key

Choose a Contact Entry Mode


Journey Builder observes Contact Entry mode at the journey level and it persists for each version of a journey in Marketing Cloud. Contact
entry mode dictates when a contact is eligible to enter a journey. Journey Builder offers three entry options to define when contacts can
enter a journey.
• No re-entry: Contact enters journey one time. Even if they complete a journey, they don't get entered again.
• Re-entry at any time: Contact can enter the journey multiple times, even if they're already in the journey. There are no maximum of
the number of instances of the Contact in a journey.

237
Marketing Cloud Journeys and Automations Entry Sources

• Re-entry only after exiting: Contact can only enter journey if they're not currently in the journey. There’s maximum of one instance
of the Contact in a journey.
1. Create a journey.
2.
Click .
3. Select No re-entry, Re-entry at any time, or Re-entry only after exiting.

Note: Journey Builder verifies that a contact is unique by checking its contact key.

4. Click Done.

Enable or Disable Google Analytics


The Google Analytics Free integration allows marketers with Journey Builder to apply automated tracking on email and SMS messages.
Google Analytics users can also see reporting within Journey Builder that provides insights into how their customers are engaging with
their messaging and web-based marketing. Marketing Cloud customers with the GA360 integration can also act on these insights by
creating audiences in Google Analytics, then sending them to Marketing Cloud to use for remarketing.
To access Google Analytics in Journey Settings, enable the Google Analytics integration.
The Google Analytics integration tracks links in your journey emails and can track links by domain. If enabled for your Marketing Cloud
account, Google Analytics tracking is available by default in all journeys.
1.
Click .
2. To disable tracking for the journey, deselect Track links for all emails in this journey.
3. To disable one or more domains, click X next to each domain. If you don’t deselect Track links for all emails in this journey, links
in journey emails that point to any domain are tracked.

SEE ALSO:
Configure the Google Analytics Integration for Marketing Cloud
Create and manage goals
Conversions reports

Entry Sources
The entry source on the canvas tells Journey Builder where customers entering this journey come from. Each journey must include an
entry source.

Important: Don’t modify a data extension that is used as the entry source in an active journey. When activated, the journey uses
a snapshot of the entry source data extension. Fields added after activation aren’t detected by the running journey. If you must
add a new field to the entry source data extension, create a new version of the journey to include the updated data extension. For
example, you can add a field to allow you to use personalization in messages within the journey.

Note: In an upcoming release, Contact Data Events won’t be supported. Events and journeys created before this change continue
to run without interruption. Use the Data Extension entry source to admit contacts instead.

238
Marketing Cloud Journeys and Automations Entry Sources

Entry Source Administration


An entry event is the action that prompts one or more contacts to enter a journey. Entry events are recorded in a data source, which
Journey Builder monitors on a schedule you set. Entry events can be journey-specific or reusable.
Edit an Entry Source
After you configure an entry source, you can edit it or review its configuration before activation. After activation, you can review the
entry source configuration, but you can’t edit it. To edit an active entry source, create another version of the journey and edit it there.
Configure a Mobile App Event Entry Source
You can use the Mobile App Event entry source in Journey Builder to listen for user behavior and admit contacts who take specific
actions in your mobile app, such as installing the app or making a purchase. You can set a filter using App Event data attributes to
ensure that only intended customers enter the journey. Mobile App Events aren’t stored in a data extension, but you can use Mobile
App Event metadata as journey data.
Configure a MobilePush Message Engagement Entry Source
Easily retarget users by entering them into a journey when they open a push notification.
Configure an In-App Engagement Entry Source
Easily retarget users by entering them into a journey when they dismiss, display, or click a button in an In-App message.
Data Extension Entry Source
The data extension entry source lets you choose a sendable data extension, then admit contacts in that data extension into a journey
in a batch. You can configure a filter to control which contacts enter or admit all contacts in the data extension. You can also use
Automation Studio to create and refresh the data extension, or you can use an SMS list created in MobileConnect.
The Audience Entry Source
Use an audience to admit a list of contacts into a journey. Select from the push, SMS, and published Audience Builder audiences
available in your account. To create or edit audiences, use Contact Builder.
Inbound Chat Message
You can use the Inbound Chat entry source in Journey Builder to admit contacts who send one of the keywords that you selected
to your app channel.
The Contact Event Entry Source
An entry event uses data about customer behavior to put contacts into a journey. Entry events generally require a change in data
about the customer that triggers an evaluation of that contact for admission in the journey. The records Journey Builder evaluates
for events are stored in a data source, which Journey Builder monitors on a schedule that you set.
Admit Contacts Via API
The API event in Journey Builder connects the journey canvas to an API used to admit contacts into a journey. When the API fires an
event, the contacts entering the journey are stored in a Marketing Cloud data extension you choose. You can set a filter using
Marketing Cloud data attributes to ensure that only intended customers enter the journey.
Audience Studio
Admit audiences from your Audience Studio account into Marketing Cloud. The Audience Studio entry source in Journey Builder
lets you choose an audience from your Audience Studio account, then admit contacts from that audience into a journey in a batch.
Configure the filter to control which contacts enter, or admit all contacts in the audience.
The Google Analytics 360 Entry Source
Admit audiences from your Google Analytics 360 account into Marketing Cloud Journey Builder. The Google Analytics 360 entry
source lets you choose an audience from your Google Analytics 360 account, then admit a batch of contacts from that audience
into a journey. Configure a filter to control which contacts enter the journey, or admit all contacts in the audience.

239
Marketing Cloud Journeys and Automations Entry Sources

The Salesforce Data Event


A Salesforce Data Event is an action in Sales Cloud or Service Cloud, such as creating or updating an object record, that injects a
contact into a journey. When the primary object meets rule criteria and reference object filtering criteria, Flow Builder initiates a
Journey Builder event.
Use CloudPages to Admit Contacts into Journey Builder
Use a CloudPages Smart Capture form and Journey Builder to admit Marketing Cloud contacts into a journey using the CloudPages
Form Submit Event.

SEE ALSO:
Marketing Cloud Connect
Journey Builder API

Entry Source Administration


An entry event is the action that prompts one or more contacts to enter a journey. Entry events are recorded in a data source, which
Journey Builder monitors on a schedule you set. Entry events can be journey-specific or reusable.
To find existing reusable events, use the Search field or sort by clicking column headers.
The Reusable Entry Sources page displays this information.

Name and Description The name of the event and a summary of its purpose
Click an event's name to edit.

Last Modified timestamp The most recent date and time the event configuration was
changed

Usage The number of journeys that currently use the event

Availability The status of an event for inclusion in a journey


Administrators can enable or disable event availability or place an
event in Test Mode.

Event Performance The results of testing the event

Actions Administrator options include copy or delete

Note: You can’t delete events that are used by at least one journey.

Note: Salesforce entry sources, including the Salesforce Data, Campaign, and Experience entry sources, are only editable when
no other journey or version uses them. You can't edit the object a Salesforce entry source uses to decide who enters the journey.
To choose a different object in a Salesforce entry source, delete and recreate the entry source.
You can configure Journey Builder to begin a journey based on any event configured within your Marketing Cloud instance.

240
Marketing Cloud Journeys and Automations Entry Sources

Event Availability
The dropdown menu at the top of the page lets you view events according to their availability. Make events on this page unavailable
by clicking the link in the Availability column, if necessary, so they aren’t visible to marketers in a journey.

SEE ALSO:
Email Studio
Create a Data Extension in Contact Builder

Edit an Entry Source


After you configure an entry source, you can edit it or review its configuration before activation. After activation, you can review the
entry source configuration, but you can’t edit it. To edit an active entry source, create another version of the journey and edit it there.

Important: Don’t modify a data extension that is used as the entry source in an active journey. When activated, the journey uses
a snapshot of the entry source data extension. Fields added after activation aren’t detected by the running journey. If you must
add a new field to the entry source data extension, create a new version of the journey to include the updated data extension. For
example, you can add a field to allow you to use personalization in messages within the journey.
If a Journey Builder Audience (Email Studio, Automation Studio, or MobileConnect) was created before January 2018, it now appears on
the canvas as a data extension entry source. Click the entry source icon in a running journey to view its previous configuration. Its icon
matches its previous configuration, so journeys with Email Audiences appear with the same icon, but their label reads Data Extension.

Note: You can't edit the object a Salesforce entry source uses to decide who enters the journey. To choose a different object in
a Salesforce Data, Campaign, or Experience entry source, delete, and recreate the entry source.
1. In a draft journey, hover over the entry source or its schedule.
2. Click the entry source or schedule.
3. To reach the step you want to edit or view, click Back.
4. Save the edited entry source and journey, if necessary.

Configure a Mobile App Event Entry Source


You can use the Mobile App Event entry source in Journey Builder to listen for user behavior and admit contacts who take specific actions
in your mobile app, such as installing the app or making a purchase. You can set a filter using App Event data attributes to ensure that
only intended customers enter the journey. Mobile App Events aren’t stored in a data extension, but you can use Mobile App Event
metadata as journey data.

Important: This feature will be made available on a rolling basis through June 2022.

Important: To use this entry source, first define your Mobile App Events in the Mobile App Event Management screen, and then
implement tracking within the MobilePush SDK.
For Journey Builder to react to App Events, the Name of the event and the attributes defined within Marketing Cloud must exactly match
the name tracked by the MobilePush SDK. Pending your app and desired use cases, you can capture some events or attributes that are
more descriptive than others. For example, purchase versus first purchase.
When selecting App Events, ensure that your app is collecting events that are in line with Journey Builder best practices for API Entry
events. Note the volume of the App Events that you use for Entry.

Note: Unlike other Entry sources, Mobile App Events aren’t saved into data extensions.

241
Marketing Cloud Journeys and Automations Entry Sources

Follow these steps to configure the Mobile App Event source in Journey Builder:
1. Drag the Mobile App Event Entry Source onto the journey canvas.

Note: If you want to add a Mobile App Event Exit source, click and then Mobile Events Exit Criteria.

2. Click Select Event.


3. Select one event from the list.
4. Set the filter event criteria.
5. To review your configuration, click Summary.
6. Click Done.
7. Configure the rest of your journey, and then click Activate.

Note: Exit or entry source can listen for up to 10 events.

Configure a MobilePush Message Engagement Entry Source


Easily retarget users by entering them into a journey when they open a push notification.

Important: This feature will be made available on a rolling basis through June 2022.

1. Drag the MobilePush Engagement Entry Source onto the journey canvas.
2. Select up to 10 push message definitions to listen for push notification opens.
3. Click Summary and review Setup details.
4. Click Done.
5. Configure the rest of your journey.

Note: After it's activated, Journey Builder enters the users who open sent messages from that point forward. Previous open
behavior isn’t evaluated.

Configure an In-App Engagement Entry Source


Easily retarget users by entering them into a journey when they dismiss, display, or click a button in an In-App message.

Important: This feature will be made available on a rolling basis through May 2022.

1. Drag the In-App Message Engagement Entry Source onto the journey canvas.
2. Select up to 10 In-App Message definitions to listen for.
3. Select the engagement type to listen for.
• Display
• Dismiss
• Button Click

4. To review your configuration, click Summary.


5. Click Done.
6. Configure the rest of your journey, and then click Activate.

242
Marketing Cloud Journeys and Automations Entry Sources

Note: After it’s activated, Journey Builder enters the users who open sent messages from that point forward. Previous open
behavior isn’t evaluated.

Data Extension Entry Source


The data extension entry source lets you choose a sendable data extension, then admit contacts in that data extension into a journey
in a batch. You can configure a filter to control which contacts enter or admit all contacts in the data extension. You can also use
Automation Studio to create and refresh the data extension, or you can use an SMS list created in MobileConnect.
After a data extension entry source is configured, you can set a schedule to determine when Journey Builder admits contacts from the
data extension. The schedule also controls whether the data extension is used once or reevaluated to admit more contacts. Scheduling
options include Run Once, Recurring, and Automation.
The Record Count on the Data Extension entry source tile represents the number of records currently present in the data extension. If
the number of records in the data extension changes after the journey is scheduled, this count doesn’t equal the number of records
evaluated for injection. To view the number of records that were evaluated and entered the Journey in the last 30 days, click View Event
Results.
• Use Run Once to admit contacts to the journey one time. Contacts are admitted when you activate the journey or on the date and
time you specify.
• Use Recurring to admit contacts as often as you specify. Choose whether to evaluate all records in the data extension each time
the schedule recurs,or to evaluate only new records. Evaluating only new records generally results in better performance.
• Use Automation to admit contacts based on the schedule of the automation in Automation Studio. The automation must contain
an import, filter, or query activity that directly modifies the data extension used for entry. Contacts are evaluated for entry according
to the automation's schedule. Choose whether to evaluate all records in the data extension each time the schedule recurs or only
new records. Evaluating only new records generally results in better performance.

Note: Automation is available when the automation built-in Automation Studio modifies the selected data extension.

Use the Audience entry source to admit MobileConnect lists. Create an Audience entry source to modify the entry filter or schedule for
a MobileConnect Audience.

Note: MobileConnect Audiences created before the January 2018 release aren’t editable, but continue to process new entries.
You can edit Email Studio Audiences and Automation Studio Audiences created before the January 2018 release if no active
versions of the journey use the audience. These audiences are included as Data Extension entry sources and follow an updated
configuration flow.

Data Extension Entry Source Use Cases


Read about how Northern Trail Outfitters (NTO) used the data extension entry source to hold a raffle, sell winter accessories, and
support disaster relief.
Select a Data Extension for Entry
Consider these recommendations when you select a sendable data extension as an entry source.
Configure the Data Extension Entry Source
To admit Marketing Cloud contacts from a sendable data extension in Journey Builder, use the data extension entry source.
Schedule a Data Extension Entry Source
To define how often Marketing Cloud Journey Builder admits contacts from a data extension entry source, set a schedule. You can
schedule how often you want to check the data extension for updates, from hourly to yearly. You can also choose how long you
want the entry source schedule to run for some entry events. After you configure a data extension entry source, a schedule tile
appears.

243
Marketing Cloud Journeys and Automations Entry Sources

Choose How to Process Entry Source Data


Configure your Journey Builder entry source so it promotes efficient processing. When an entry source includes a repeating schedule,
choosing a processing option is necessary. Processing options tell Journey Builder how to evaluate contacts in a data extension or
list.
Configure the Data Extension Entry Source with Customer Data Platform

Data Extension Entry Source Use Cases


Read about how Northern Trail Outfitters (NTO) used the data extension entry source to hold a raffle, sell winter accessories, and support
disaster relief.

Monthly Customer Raffle


NTO collects purchase information about customers who buy its outdoor lifestyle goods in a data extension called NTO Customer Raffle.
On the first Monday of each month, NTO holds a customer appreciation contest. As part of the contest, an email is sent to customers
who purchased something the previous month. A gift card is awarded to one customer who opens the email.
A marketer at NTO creates a journey to facilitate the contest by clicking Create Journey from Scratch. The marketer drags the data
extension entry source onto the canvas and clicks the entry source to configure it. Then, NTO selects the Customers data extension,
which is linked 1: many to the NTO Customer Raffle data extension in Contact Builder.
The marketer then creates a filter to admit customers whose most recent purchase happened within the past month. The marketer drags
the PurchaseDate attribute into the filter and sets the PurchaseDate to on or before today and PurchaseDate is after Today Minus 30
days.
The marketer then sets the journey’s schedule by clicking Schedule and selecting Recurring. The marketer sets the recurrence to
happen once on the first Monday of every month. Because customers can make purchases at any time during the month to be eligible
for the contest, the marketer selects Evaluate all records.

Winter Accessories Journey


NTO’s marketer creates a journey to market winter hats and gloves to North American customers. To reach only customers in cold-weather
climates, the marketer drags the data extension into the journey and chooses the Customers data extension. The marketer then configures
a filter that includes only customers in colder areas, for example, Region equals Northeast or Region equals Midwest or Country equals
Canada.
To set the journey’s schedule, the marketer clicks Schedule. To end the journey before warm weather arrives, the marketer chooses
Recurring with an end date in April. The marketer then sets the schedule to repeat every Monday.
Because new contacts are continually added to the Customers data extension, the marketer selects Evaluate new records only.

Disaster Relief Campaign


After a natural disaster hits a western U.S. state, NTO creates a journey to solicit disaster relief donations from its most active and loyal
customers. To automate this work, NTO’s marketer creates a journey that runs only once on activation.
To set up the journey, the marketer configures the data extension entry source to admit contacts from the Loyalty_Members data
extension. NTO wants to solicit donations only from customers in the same country where the disaster occurred, so the filter is set to
Country equals United States.
After configuring the entry source, the journey schedule. The intent of this journey is to send a single series of messages related to the
disaster relief effort, the marketer selects Run Once as the schedule type.

244
Marketing Cloud Journeys and Automations Entry Sources

Select a Data Extension for Entry


Consider these recommendations when you select a sendable data extension as an entry source.
• Include fields needed for personalization or dynamic content in the data extension.
• If the data for the journey is stored in multiple data extensions, create a single entry source data extension using a query. Create
queries in Automation Studio using the SQL Query Activity.
• If possible, pre-filter your audience data extension to speed processing.

Data Source Notes


Contact Builder Sendable data extensions created or managed in Contact Builder
are the recommended data source for journeys that use Marketing
Cloud data.

Salesforce Data Extensions Salesforce data extensions are no longer selectable as entry sources
within Journey Builder. To use a Salesforce data extension as an
entry source, use an automation to move its data into a supported
format for entry.
1. Create a data extension that you can populate with data from
a Salesforce data extension.
2. To populate the new data extension with data from a Salesforce
data extension, create an automation with a query activity.

Synchronized Data Sources Use synchronized data extensions to populate an entry source data
extension in journeys that use Sales Cloud or Service Cloud data
and Marketing Cloud data.
To use a synchronized data source’s data to populate an entry
source data extension, follow these steps.
• Use a query activity or another process to target specific data
in the data extension that results from your synchronized data
source.
• Then segment the data into a sendable data extension that
you can use as an entry source.

SEE ALSO:
Contact Builder in Marketing Cloud
Synchronized Data Sources

Configure the Data Extension Entry Source


To admit Marketing Cloud contacts from a sendable data extension in Journey Builder, use the data extension entry source.
1. Drag Data Extension onto the canvas.
2. Click Data Extension.
3. Select a sendable data extension.
4. To refine your audience, click Filter Contacts and configure a filter.

245
Marketing Cloud Journeys and Automations Entry Sources

5. Click Summary, and review setup details.


6. Click Done.
Set a schedule for admitting contacts from the data extension into the journey.

Tip: To use an automation's schedule to control when the journey admits contacts, select a data extension that an automation
updates or modifies. Or set up an automation to modify the data extension you selected before setting the journey schedule.

Schedule a Data Extension Entry Source


To define how often Marketing Cloud Journey Builder admits contacts from a data extension entry source, set a schedule. You can
schedule how often you want to check the data extension for updates, from hourly to yearly. You can also choose how long you want
the entry source schedule to run for some entry events. After you configure a data extension entry source, a schedule tile appears.

Note: The Recurring and Automation options are not supported in Single Send journeys.

If the automation regularly modifies or updates the data extension that you selected, you can use the Automation schedule type. The
journey admits eligible contacts when the automation runs.

Note: Schedule dates must fall between 1/1/1900 12:00:00 AM and 6/6/2079 11:59:59 PM.

1. Click Schedule.
2. To determine when and how often the journey admits contacts, select a schedule type.
3. Click Select.
4. Choose when contacts from the data extension enter the journey.
• When you select Run Once, Journey Builder evaluates contacts on activation or at the specified date and time.
• When you select Recurring, enter a start date when contacts enter the journey, how frequently contacts are evaluated for
admission, and how many times they’re evaluated.
• When you select Automation, the journey evaluates contact records when your chosen automation completes.

Note: When a file drop automation updates the source data extension, all records in the source data extension are evaluated
each time.

5. If the contacts enter on a repeating basis, choose the recordset that Journey Builder evaluates each time the schedule repeats.
6. Click Summary.
7. Click Done.
Activate the journey to start the schedule.

Note: If contact records are being evaluated when the next run is scheduled to begin, the run is skipped. Records are processed
in the next run.

Choose How to Process Entry Source Data


Configure your Journey Builder entry source so it promotes efficient processing. When an entry source includes a repeating schedule,
choosing a processing option is necessary. Processing options tell Journey Builder how to evaluate contacts in a data extension or list.
Choosing how Journey Builder evaluates an entry source to determine which contacts enter the journey also ensures that records are
processed efficiently. You can set up the entry of contacts into a journey in two ways.
• Enter the journey once when it’s activated.
• If the entry source data is continually updated, set a schedule to occur one time or continually.

246
Marketing Cloud Journeys and Automations Entry Sources

When you set a schedule that repeats, you select a processing option.
• To evaluate only new contacts added since the previous run for journey entry, select Evaluate new records only. For the journey's
first scheduled run, choose whether to evaluate all data extension records on only the first run or records added after activation. This
evaluation option is typically used when a process exists to add new rows to the source data extension without deleting or overwriting
existing rows. For example, the automation with an import activity appends records to a data extension. Using this option typically
results in faster, more efficient processing.

Note: When you refresh a filtered data extension, all records are overwritten. We don't recommend using a filtered data
extension with Evaluate new records only option.

• To evaluate all records in a data extension each time according to the entry source's schedule, select Evaluate all records. Use this
option only when records in the data extension are continually updated. Using this option typically results in slower processing.
To improve performance and ensure that all eligible contacts in the entry source enter the journey without slowing the admission
process, select the applicable processing option.

SEE ALSO:
Data Extensions and Data Relationships without Enhanced Subscriber Features in Marketing Cloud

Configure the Data Extension Entry Source with Customer Data Platform
For new Journeys, use Data Extensions in the new activation folders:
• Select Data Extension as the entry source for the Journey.
• Configure the data extension source by selecting the data extension from the ones available in each Activation folder.

Note: Journeys created before BU awareness was enabled in Customer Data Platform must be updated to use the new activations.

To update your Journeys and Activation folders, follow these steps:


1. Create an activation in Customer Data Platform configured to an Activation target with only one BU.
2. Select the journey that you want to update and create a new Journey.
3. Edit the new version to point to the new Data Extension.
4. Remove the existing data entry to remove the existing Data Extension, add a Data Extension entry source and point to the new DE
created by the new activation.
The updated version of the Journey is ready to be activated.

Note: A journey can have multiple versions running at the same time if the user is continuously updating it. Delete the previous
Activation folders to avoid using stale shared data extensions.

The Audience Entry Source


Use an audience to admit a list of contacts into a journey. Select from the push, SMS, and published Audience Builder audiences available
in your account. To create or edit audiences, use Contact Builder.

Note: Audiences are available in accounts provisioned for both Journey Builder and Contact Builder.

Note: The Audiences entry source features new functionality. Audiences created before the January 2018 release continue to
function, but cannot be edited. Use the data extension entry source to access functionality previously found in Journey Builder
Audiences.

247
Marketing Cloud Journeys and Automations Entry Sources

Create an Audience from Contacts


To admit contacts in Journey Builder, create and schedule an audience.
Schedule an Audience
To determine how often Journey Builder admits contacts from an audience, set a schedule. To prompt the schedule tile to appear,
configure an entry source.
Use Customer Data Platform in Journey Builder
Customer Data Platform is optimized for messaging using Journey Builder. You can also use Customer Data Platform to select an
audience in Email Studio and MobileConnect. Audiences can include enriched unified individual records and new records. It’s
important to consider consent management when sending.

Create an Audience from Contacts


To admit contacts in Journey Builder, create and schedule an audience.
Audiences are available in accounts provisioned for Journey Builder and Contact Builder.
1. Create an audience in Contact Builder.
2. Drag Audience onto the canvas.
3. Click Audience.
4. Select a filtered list.

Schedule an Audience
To determine how often Journey Builder admits contacts from an audience, set a schedule. To prompt the schedule tile to appear,
configure an entry source.
The schedule does not start until the journey is activated. If contact records are being evaluated when the next scheduled run begins,
that run is skipped. Remaining records are processed in the next run.
1. Click Schedule.
2. To determine when and how often the journey admits contacts, select a schedule type.
3. Choose when MobileConnect contacts enter the journey.
a. When you select Run Once, choose to evaluate contacts once at activation or at a specific date and time.
b. When you select Recurring, specify a start date when contacts enter the journey, how frequently contacts are evaluated for
admission, and how many times they’re evaluated.

Use Customer Data Platform in Journey Builder


Customer Data Platform is optimized for messaging using Journey Builder. You can also use Customer Data Platform to select an audience
in Email Studio and MobileConnect. Audiences can include enriched unified individual records and new records. It’s important to consider
consent management when sending.
When you create a journey, you select your audience in the Data Extension Entry Source in Journey Builder. To choose Customer Data
Platform audience, choose your audience from the Customer Data Platform Segments folder in the Shared Data Extensions folder.

Managing Consent
We recommend that you employ the following practices to help manage consent when you use unified Customer Data Platform
audiences in Journey Builder.

248
Marketing Cloud Journeys and Automations Entry Sources

• Consider applying Filter Contacts criteria to limit who is included in the audience when you create the Entry Source. If it filters out
many audience members, performance can be degraded on page 199

Note: if the SMS Activity appears later in the journey, you can use a Decision Split instead of filtering criteria for consent to
Customer Data Platform for entry source configuration.

• When you configure an email activity to use a Customer Data Platform audience, consider assigning a Publication or Suppression
list for more consent management options

Email Activities
You can configure email activities in Journey Builder that use Customer Data Platform audiences as either multi-step or single send
journeys.

SMS Activities
When you configure an SMS activity in Journey Builder to use a Customer Data Platform audience, select Send only to contacts who
are subscribed currently in the Delivery Options configuration step. This selection helps prevent sending to individuals who didn’t
opt in to receive the communication.

Push Messaging Activities


For push messaging using Customer Data Platform audiences, use a multi-step journey. You can configure either a Push Notification,
Inbox, or In-App Message activity to activate a MobilePush send. Consent for push messaging is managed in the MobilePush SDK.

Data Extensions
Check out Related Attributes in Activation on our Customer Data Platform Solution Kits page.

Inbound Chat Message


You can use the Inbound Chat entry source in Journey Builder to admit contacts who send one of the keywords that you selected to
your app channel.

Important: To use this entry source, create a chat integration business account through the chat messaging setup app.

You can use the same keyword as an entry source and a valid chat response. If a contact sends the keyword while they are in a Wait Until
Chat Response activity, the contact advances to the next activity in that journey. The keyword is ignored by any other journey listening
for that keyword as a source of entry.

Configure the Inbound Chat Entry Source


Follow these steps to configure the Inbound Chat entry source in Journey Builder.

Configure the Inbound Chat Entry Source


Follow these steps to configure the Inbound Chat entry source in Journey Builder.
1. Drag the Inbound Chat activity onto the canvas and click to open.
2. To configure the app channel, click Edit.
3. Select the app channel to use from the dropdown.
4. Click the Keywords tab.

249
Marketing Cloud Journeys and Automations Entry Sources

5. Create up to 10 keywords. You can use the same keyword in multiple Wait Until Chat Response activities and entry sources.
6. Click Summary, and review setup details.
7. Click Done.

The Contact Event Entry Source


An entry event uses data about customer behavior to put contacts into a journey. Entry events generally require a change in data about
the customer that triggers an evaluation of that contact for admission in the journey. The records Journey Builder evaluates for events
are stored in a data source, which Journey Builder monitors on a schedule that you set.
For a Welcome Series journey, for example, the action or behavior is typically a customer opting into a marketing campaign. For an
Abandoned Cart journey, a contact is put into a journey when they leave items in their web shopping cart. Other events include, but
are not limited to:
• The contact purchases a product.
• A contact signs up for a conference.
• A customer publishes a restaurant review.
• Marketing Cloud customers using CloudPages or Mobile Studio create profile centers or use the email subscription template to opt
users into mobile or email communications.
• User changes to an object’s data stored in Sales or Service Cloud to place a contact into a journey.
• Using a point of sale system in a retail store or on a website, a customer elects to sign up for promotional emails and coupons.
Date-based events use data stored in Contact Builder. Use a date-based event if you want to send a promotion to your customers to
celebrate their birthday or a reminder for an appointment.
If you use a date-based event, make sure that you have the data you need, such as a client’s birthday, in your Contact Builder data model.
Consider timing in your journey. You can set the journey start either before or after the date, so think about the best time for your clients
to get the information: on the specific date, like for a birthday message? Or a month before a renewal date?

Note: In an upcoming release, Contact Data Events will not be supported. Events and journeys created before this change
continues to run without interruption. Use Data Extension or Audiences to admit contacts instead. Some examples of ways entry
events place contacts into a journey are:
• Events can be journey-specific or shared between journeys.
• Configure journey-specific events within a journey for use only in that journey.
• Create shared events in Entry Source Administration for use in multiple journeys.

Select a Reusable Entry Source


Select a reusable entry source in Journey Builder when the event you want to use was already created in another Marketing Cloud
journey or on the Entry Sources page.
Create a Journey-Specific Event
A journey-specific event in Marketing Cloud’s Journey Builder is configured within a single journey. Only that journey can use the
event.
Create a Date-Based Event Entry
You can use the Date-Based Events in Journey Builder to use a date-based attribute from Contact Builder to determine when contacts
enter the journey. Common use cases include birthday and anniversary campaigns. Other typical cases are journeys based on
subscription dates or the last time a contact opened or used an app. If a contact does not have a contact record in Marketing Cloud,
they are not admitted into the journey.

250
Marketing Cloud Journeys and Automations Entry Sources

Create a Shared Entry Event


An Entry Event is an action that prompts one or more contacts to enter a journey in Journey Builder. This topic contains information
for IT administrators to set up shared entry events for marketer use.
Events and Data Extensions
When a journey's entry source is configured in Journey Builder, the data source from which contacts are admitted is usually a data
extension.
Entry Results
Use this page to understand and gauge the flow of contacts into a journey in Journey Builder. This page also shows the journeys
that use this entry source under Journey Usage. View a list of contacts that were not accepted and an explanation by clicking View
Rejected Contacts.
Test an Entry Event
Test your entry event in Journey Builder to ensure that it admits contacts as intended without contacts entering a live journey and
receiving messages.
Prioritization Example: Update Entry Event
In this decision split prioritization example, Journey Builder updates the entry events for a post-purchase confirmation and follow-up
journey.
View Rejected Contacts
Follow these steps in Journey Builder to view a list of contacts that were not accepted into a journey.
Fire an Event
Entry events prompt Journey Builder to evaluate Marketing Cloud contacts for journey entry. An entry event occurs when records
in a journey's entry event data source, often a data extension, are added, updated, or overwritten. Firing an event lets you kick off a
journey using an API or an automation created in Automation Studio.

SEE ALSO:
Linked Data Extensions in Journey Builder

Select a Reusable Entry Source


Select a reusable entry source in Journey Builder when the event you want to use was already created in another Marketing Cloud
journey or on the Entry Sources page.

Note: In an upcoming release, Contact Data Events will not be supported. Events and journeys created prior to this change will
continue to run without interruption. Use Data Extension or Audiences to admit contacts instead.
1. In a new journey, drag Event onto the canvas.
2. Click Event.
3. Select an event from Existing Entry Sources.
4. If the event is unconfigured, create a filter on the next page of the wizard.

Create a Journey-Specific Event


A journey-specific event in Marketing Cloud’s Journey Builder is configured within a single journey. Only that journey can use the event.

Note: In an upcoming release, Contact Data Events will not be supported. Events and journeys created before this change
continues to run without interruption. Use Data Extension or Audiences to admit contacts instead.
1. Drag Event onto the canvas and click it.

251
Marketing Cloud Journeys and Automations Entry Sources

2. Choose an entry source from New Entry Sources.


3. Choose a data source whose contacts enter the journey. Journey Builder evaluates the records in this data extension or file when
the journey is activated.

Note: If no contact record exists in Marketing Cloud for a person entering this journey, the journey does not admit that person.

4. Optionally, set a filter against contact or journey data attributes to add criteria for entering the journey.
5. Set a schedule to dictate when Journey Builder fires this event or evaluates new rows in the data extension to find contacts that
meet entry criteria. The Repeat setting defaults to None, which means the event runs only on the scheduled date and time. This
schedule dictates when Journey Builder checks the event source for new records.

Note: When contacts enter a journey via API call, use the API Event to connect the API to the Journey Builder canvas.

Create a Date-Based Event Entry


You can use the Date-Based Events in Journey Builder to use a date-based attribute from Contact Builder to determine when contacts
enter the journey. Common use cases include birthday and anniversary campaigns. Other typical cases are journeys based on subscription
dates or the last time a contact opened or used an app. If a contact does not have a contact record in Marketing Cloud, they are not
admitted into the journey.

Important: Journey data is not available for messaging personalization or decision split criteria when you use the Date-Based
Event entry.

Note: Only sendable data extensions are available to use.

1. Drag Event onto the canvas.


2. Click Event.
3. Click Date Based Event.
4. Click Next.
5. Configure these settings.
• Choose a Date type attribute. Data type is set in Contact Builder when adding attributes.
• Choose how often this event fires for all contacts found in the data model in Contact Builder:
– Yearly: Allows the event to fire a maximum of one time per year for each contact. This setting is used in birthday and
anniversary scenarios.
– Monthly: Allows the event to fire at most one time each month for each contact. This setting works well for monthly notices
based on a billing date, for example.
– None (run once): This event fires once for each contact. This setting is used for subscription reminders.

Note: Contacts are reevaluated for inclusion each time they are added to the event source data extension.

• Determine the number of days, weeks, or months before or after the date of the event.
• To configure the event by typing a number and using the menus, click Custom.
• Set the time of day of the event and time zone.

252
Marketing Cloud Journeys and Automations Entry Sources

6. Complete configuration and click Next.

SEE ALSO:
Get Started with Contact Builder

Create a Shared Entry Event


An Entry Event is an action that prompts one or more contacts to enter a journey in Journey Builder. This topic contains information for
IT administrators to set up shared entry events for marketer use.
Entry events are recorded in a data source, which Journey Builder monitors on a schedule you set. Entry events can be journey-specific
or shared by more than one journey. Set event availability to give marketers in your organization access to entry events.
1. Click New Event.
2. Choose an event type. Usually, marketers choose a Contact Data event.

Note: Event types don’t dictate the data source that contacts enter a journey from. Choose the data source in a subsequent
step.

3. Add a name, description, event definition key, and icon. The event definition key is used when calling an event via API. If you don’t
have one, Journey Builder provides it automatically.
4. Select a sendable data extension, the data source where customer actions and data is recorded, and tell Journey Builder when and
how often to check it. When Journey Builder finds new customer records, it automatically tries to enter them into the journey. If they
meet the filter criteria set on the next step, Journey Builder admits them.
Journeys that include the email activity must use an event source data extension that includes these fields:

Name Data Type


EmailAddress Email Address

SubscriberKey Text

If one or both fields aren’t in this format, Journey Builder creates them and appends them to the event source data extension.

Note: To prevent errors, ensure that no other fields in the data extension contain the following:
• A field named SubscriberKey, with a data type other than Text
• A field named EmailAddress, with a data type other than Email Address

When the event source is modified, added to, or overwritten, this action constitutes an entry event. A single entry event can be used
to kick off multiple journeys.

5. If necessary, create a filter using contact attributes so the journey only admits contact records that meet the filter criteria set on this
step.
An entry event's configuration details appear on the journey canvas. Determine when and how often Journey Builder checks the
event source for new records to enter the journey.
6. If contacts enter the journey via API or using Automation Studio, select Not Applicable. Setting an entry schedule here isn’t necessary.
7. To have contacts enter the journey according to a schedule, select Run using the following schedule.
8. Set the date, time zone, and repetition schedule. The default repeat setting is None, which means the entry event runs only on the
scheduled date and time.

253
Marketing Cloud Journeys and Automations Entry Sources

The schedule dictates when Journey Builder checks the event source for new records. The schedule set here doesn’t admit contacts
into the journey unless the journey is activated. In cases where the schedule set begins before journey activation, Journey Builder
only admits contacts that are added to the event source following activation.

SEE ALSO:
Data Extensions in Contact Builder
Create a Data Extension in Contact Builder

Events and Data Extensions


When a journey's entry source is configured in Journey Builder, the data source from which contacts are admitted is usually a data
extension.
When an event fires, Journey Builder admits the contacts stored in the entry source data extension that meet entry criteria. Specifically,
Journey Builder evaluates the data extension from its first row and continues until all existing rows are evaluated.
The next time the event fires, the entry source begins evaluating rows from the point where it stopped. This factor prevents contacts
that are already in the journey from entering the same journey again if their contact record is unchanged.

Single Event Source for Multiple Events


Multiple entry sources can use the same data extension.
Three methods exist for admitting contacts into a journey:
• API
• Automation Studio’s Fire Event activity
• The Schedule feature found within Journey Builder’s event setup process
Ensure that the desired contacts enter each journey as intended. Use one of these three methods to admit contacts from an event source
data extension.
Journey Builder now evaluates the event source data extension separately for each individual event.

Events and Shared Data Extensions


A shared data extension can be used as the entry source data extension in more than one business unit. Journey Builder separates the
processing of the data extension for each business unit. Events that run against a data extension in Business Unit A evaluate records
starting at the last row that was evaluated previously. But when an entry source uses this data extension in Business Unit B for the first
time, it begins at the first row.

SEE ALSO:
Create a Data Extension in Contact Builder
Business Units in Marketing Cloud

Entry Results
Use this page to understand and gauge the flow of contacts into a journey in Journey Builder. This page also shows the journeys that
use this entry source under Journey Usage. View a list of contacts that were not accepted and an explanation by clicking View Rejected
Contacts.

254
Marketing Cloud Journeys and Automations Entry Sources

After a journey is activated, click View Event Results to access the journey's entry results over the previous 30 days. You can view these
results on the page:

Subheading Description

Entry Source Evaluation Pending Evaluation These contact records are waiting to enter
the queue for evaluation against the entry
source filter (if the entry source includes a
filter).

Note: This section is only visible


when contacts are pending.

Entry Results for the last 30 days Contacts Evaluated Total number of contacts evaluated for
journey entry which includes both accepted
and rejected contacts.

Contacts Accepted The number of contacts that met entry


criteria and were admitted to the journey.

Test an Entry Event


Test your entry event in Journey Builder to ensure that it admits contacts as intended without contacts entering a live journey and
receiving messages.

Important: Test Mode doesn’t support the Salesforce Data and Campaign events. Date-Based Events aren’t compatible with Test
Mode. Events and journeys created before this change continue to run without interruption. Use Audiences to admit contacts
instead.

Note: Only entry events that weren’t used in a journey are testable. We recommend that you test an event immediately after you
create it.
1. Create or find the entry event on the Entry Sources page.
2. In the Availability column, click the link in your Event's row.
3. Select Test Mode.
4. Save your changes.
5. Fire an event using Automation Studio or the API.
6. Return to the Entry Sources page.
7. Click View Results.
Total Contacts shows how many contacts were evaluated from the data source and matches the total number of contacts in the
event source data extension.
Accepted Contacts shows how many contacts met applicable filter criteria applied and entered the journey.
Journey usage lists journeys that include this entry event. To view a journey, click the journey's name.

8. To see how the event handled each accepted contact, click Contacts Accepted.

255
Marketing Cloud Journeys and Automations Entry Sources

9. To see how the event handled rejected contact, click Contacts Rejected.

SEE ALSO:
Fire an Event via API

Prioritization Example: Update Entry Event


In this decision split prioritization example, Journey Builder updates the entry events for a post-purchase confirmation and follow-up
journey.
The marketing manager at Northern Trail Outfitters follows these steps to configure a prioritized entry event for a post-purchase
confirmation and follow-up journey.
1. In Journey Builder, open the journey named Post Purchase Confirmation and Follow-Up.
2. In the running version, click New Draft.
3. Click Event.
4. Click Back.
5. Under Data Extensions, select Journey Builder Prioritization, then click Next.
6. In the Attributes pane, navigate to Journey Builder Prioritization.
7. Find the PostPurchase attribute.
8. Confirm that the expression reads PostPurchase is True, then click Next.
9. Schedule the event, then click Next.
10. Review the configuration settings and click Done.
11. Save your changes.
12. Click Activate.

View Rejected Contacts


Follow these steps in Journey Builder to view a list of contacts that were not accepted into a journey.
1. In a running or stopped journey, click View Event Results in the entry source column.
2. On the entry results page, click View Rejected Contacts.

Note: The View Rejected Contacts link does not appear when all contacts are accepted into the journey.

On the Journey History page, view the list of contacts that did not enter the journey, including the reasons they didn't enter.

Fire an Event
Entry events prompt Journey Builder to evaluate Marketing Cloud contacts for journey entry. An entry event occurs when records in a
journey's entry event data source, often a data extension, are added, updated, or overwritten. Firing an event lets you kick off a journey
using an API or an automation created in Automation Studio.

1. Create a Journey
Use a Contact Data entry event to fire events in Journey Builder using a Marketing Cloud automation or an API entry event.

256
Marketing Cloud Journeys and Automations Entry Sources

2. Define the Automation


Define a Marketing Cloud automation using the Fire Event activity to fire an event prompting Journey Builder to detect updates.
When you set up the Fire Event Activity, select the same data extension used in the entry event you set up in your journey. Automations
used for journeys can be set up in advance using Scheduled or File Drop Automations.
3. Run the Automation
Prompt Journey Builder to filter contacts into journeys configured to use this entry event.
4. Confirm Journey Entry
Check Journey Builder Analytics.

SEE ALSO:
Fire an Event via API

Create a Journey
Use a Contact Data entry event to fire events in Journey Builder using a Marketing Cloud automation or an API entry event.

Note: Firing an event affects all journeys with an entry event that uses this event source data extension.

1. Drag Event onto the canvas and click it.


2. Select the Contact Data Event Type.
3. Click Next.
4. Click Choose Data Extension and select a sendable data extension. Use the same sendable data extension in the automation you
define to fire the event.
5. Configure the entry event as needed.
6. Save the entry event.
Follow the steps to Define an Automation.

Define the Automation


Define a Marketing Cloud automation using the Fire Event activity to fire an event prompting Journey Builder to detect updates. When
you set up the Fire Event Activity, select the same data extension used in the entry event you set up in your journey. Automations used
for journeys can be set up in advance using Scheduled or File Drop Automations.
Follow the steps to create a journey.

Note: In an upcoming release, Contact Data Events won’t be supported. Events and journeys created before this change continues
to run without interruption. Use Audiences to admit contacts instead.
The only activity the automation must include is the Fire Event activity. Run the automation whenever new data is added to the data
extension, or schedule it to run on a repeating basis.
1. Drag the Fire Event activity into a step of the automation.
2. Click Choose... to select the data extension you chose in the entry event you created.
3. Click Save.

257
Marketing Cloud Journeys and Automations Entry Sources

Follow the steps to Configure your API.

SEE ALSO:
Automate Processes in Automation Studio

Run the Automation


Prompt Journey Builder to filter contacts into journeys configured to use this entry event.
Complete the steps to Confirm Journey Entry

Important: In an upcoming release, Contact Data Events will not be supported. Events and journeys created before this change
continues to run without interruption. Use Audiences to admit contacts instead. Learn More.
After setting up your journey, return to your automation to run it. If you are using a Triggered Automation, this process works only when
a new file has been dropped in the specified file location.
1. Click Run Once to start the Fire Event activity, prompting Journey Builder to evaluate contacts for entry. After the automation runs
the first time, only new contact records are admitted on subsequent runs, depending on Journey Settings.
2. Click Run Once again to fire an event each time new data is added to the data extension.
Complete the steps to Define the Automation.

SEE ALSO:
Run an Automation from the Overview Page

Confirm Journey Entry


Check Journey Builder Analytics.
Complete the steps to Run the Automation.

Important: In an upcoming release, Contact Data Events will not be supported. Events and journeys created before this change
continues to run without interruption. Use Audiences to admit contacts instead. Learn More.
1. Navigate to Journey Builder after running your automation.
• When contacts are admitted, the counts on the Entry Results page increase
• To track individual contacts through a journey, see View a Contact's History In a Journey to track individual contacts through
a journey

SEE ALSO:
Entry Results
View a Contact's Journey History in a Journey
View Rejected Contacts

Admit Contacts Via API


The API event in Journey Builder connects the journey canvas to an API used to admit contacts into a journey. When the API fires an
event, the contacts entering the journey are stored in a Marketing Cloud data extension you choose. You can set a filter using Marketing
Cloud data attributes to ensure that only intended customers enter the journey.

258
Marketing Cloud Journeys and Automations Entry Sources

This event type requires some development work to configure an API. If needed, seek technical help to set up and use an API to put
customers into journeys. Here are some items to consider as you work with an IT resource.
• Note where you capture opt-ins and customer data.
• Review the information you already gather about your customers, such as demographic data, web browsing data, purchase data,
and where it is stored.
• Determine data needs, such as customer data used to target or personalize messages or customer interactions, that drive your
marketing program.
• Determine which customer behaviors you want to act on, and how. Consider timing and targeting.
Create a data extension to store contacts fired via API if you don’t want to use an existing data extension for this purpose.
1. Drag API Event onto the canvas. Use the Event Definition Key to connect this journey to your API.

Warning: Don’t include a period in the Event Definition Key.

2. Click API Event.


3. Choose an API event, or click create an event.

Tip: Events shown in the API Event Summary were created on the Entry Sources page.

4. If you create an API event, choose the data extension to populate.


5. Click Filter Contacts and create a filter, if necessary.

Tip: Use the final step to find the Event Definition Key.

6. If contacts meet filter and entry mode criteria, the journey admits the contacts in respose to an API request.
For reference, find the Event Definition Key on the Summary tile on the canvas.

API Event Entry Source Use Case


A marketer at Northern Trails Outfitters (NTO) works with a developer to set up an API that admits customers into a Marketing Cloud
journey every day. In this example, the marketer and developer work to set up the API Event and API request, then test sending a
single contact into a journey. The API is intended to send a single contact at a time. It admits contacts when they're ready to enter
the journey rather than queuing or batching them.

SEE ALSO:
Journey Builder API
Get Started with Contact Builder

API Event Entry Source Use Case


A marketer at Northern Trails Outfitters (NTO) works with a developer to set up an API that admits customers into a Marketing Cloud
journey every day. In this example, the marketer and developer work to set up the API Event and API request, then test sending a single
contact into a journey. The API is intended to send a single contact at a time. It admits contacts when they're ready to enter the journey
rather than queuing or batching them.
1. Create a journey from scratch.
2. Add the API Event onto the journey canvas as the journey’s entry source.
3. Click to open the entry source.

259
Marketing Cloud Journeys and Automations Entry Sources

4. Copy the Event Definition Key and provide it to the developer.


5. Configure the journey activities. Then save and activate the journey.
6. With the Event Definition Key in hand, the developer uses the instructions here to create the API request to fire the entry event.
7. The developer gets a sample ContactKey that is linked to All Contacts in Contact Builder to put into the API request. This key
corresponds to the contact that enters the journey when the request is fired. The developer then uses an API client to send the test
request.
The request includes the Event Definition Key generated when the marketer sets up the API Event entry source. When the API request
is sent, the contact whose ContactKey is included in the request enters the journey.

SEE ALSO:
Fire an Entry Event

Audience Studio
Admit audiences from your Audience Studio account into Marketing Cloud. The Audience Studio entry source in Journey Builder lets
you choose an audience from your Audience Studio account, then admit contacts from that audience into a journey in a batch. Configure
the filter to control which contacts enter, or admit all contacts in the audience.
1. Drag the Audience Studio entry source tile onto the canvas.
2. Click the tile.
3. Click Select an Audience.
4. Click Select next to the audience to admit.
5. To further refine your audience, configure any necessary filters and complete setup.
6. Click Summary.
7. Click Done.
8. Complete the rest of your journey, then validate and activate it.

Note: Even after filtering, the entry source displays the total number of contacts within the audience.

Audience Studio Use Case


An NTO marketer wants to promote a new line of fitness apparel. The goal is to send highly targeted, cross-channel messaging that
is optimized through data-driven insights using email, advertising, and NTO’s ecommerce site. The marketer creates a journey in
Marketing Cloud Journey Builder using data from Salesforce Audience Studio.

SEE ALSO:
Audience Studio

Audience Studio Use Case


An NTO marketer wants to promote a new line of fitness apparel. The goal is to send highly targeted, cross-channel messaging that is
optimized through data-driven insights using email, advertising, and NTO’s ecommerce site. The marketer creates a journey in Marketing
Cloud Journey Builder using data from Salesforce Audience Studio.

260
Marketing Cloud Journeys and Automations Entry Sources

NTO’s marketing team uses Salesforce Audience Studio to aggregate consumer data across its website, mobile apps, email interactions,
and offline transaction data. These insights help NTO create a segment of users who interacted with campaign awareness display and
search ads or opened the initial campaign email. NTO plans to exclude customers who made a purchase within the last 30 days.
The segment is saved as NTO Promotional Campaign. NTO activates the segment across various demand-side platforms for search and
display activity. NTO activates the segment to Marketing Cloud for direct communications that reinforce the indirect advertising experience.
NTO’s marketer then creates a Marketing Cloud journey for the campaign and drags the Salesforce Audience Studio entry source onto
the canvas. After clicking the activity, the marketer clicks Select an Audience and chooses the NTO Promotional Campaign audience.
The marketer finishes configuring the entry source. When the journey is activated, members of the NTO Promotional Campaign audience
who meet filter criteria are admitted to the journey.

The Google Analytics 360 Entry Source


Admit audiences from your Google Analytics 360 account into Marketing Cloud Journey Builder. The Google Analytics 360 entry source
lets you choose an audience from your Google Analytics 360 account, then admit a batch of contacts from that audience into a journey.
Configure a filter to control which contacts enter the journey, or admit all contacts in the audience.
To make audiences available to select here, configure your Google Audiences in your Google Analytics account.
You can’t configure or manage Google Audiences in the Marketing Cloud.
1. Drag the Google Analytics 360 entry source tile onto the canvas.
2. Click the tile.
3. Click Select an Audience.
4. Click Select next to the audience to admit.
5. To further refine your audience, configure any necessary filters and complete setup.
6. Click Summary.
7. Click Done.
8. Complete the rest of your journey, then validate and activate it.

Note: Even after filtering, the entry source displays the total number of contacts within the audience.

Honor Opt-Out Requests for Personalized Ads


Google Analytics supports a consumer opt-out for personalized ads. Observe your customers’ requests to opt out of personalized
online ads as recorded in Google Analytics. Place a decision split after the Google Analytics 360 entry source in Salesforce Marketing
Cloud. Use a field in the Google Analytics audience data extension to prevent your audiences’ contacts from receiving personalized
ads.
GA360 Use Case
An NTO marketer wants to compel past purchasers to review the item or service they purchased. The marketer creates a journey in
Marketing Cloud Journey Builder using data from their company’s Google Analytics 360 account.

SEE ALSO:
Google Analytics Integration for Marketing Cloud
Create a Google Analytics Audience

261
Marketing Cloud Journeys and Automations Entry Sources

Honor Opt-Out Requests for Personalized Ads


Google Analytics supports a consumer opt-out for personalized ads. Observe your customers’ requests to opt out of personalized online
ads as recorded in Google Analytics. Place a decision split after the Google Analytics 360 entry source in Salesforce Marketing Cloud. Use
a field in the Google Analytics audience data extension to prevent your audiences’ contacts from receiving personalized ads.
Google integration partners can display personalized ads to your customers. If you use Google Analytics to manage your customers’
requests to opt out of personalized ad targeting, use these steps to observe those requests in Salesforce Marketing Cloud. First, add the
Google Analytics 360 entry source, and select your audience. Then, add a decision split to send customers who opted out on a separate
path.
1. In a journey, drag the Google Analytics 360 entry source tile onto the canvas.
2. Click the tile.
3. Click Select an Audience.
4. Click Select next to the GA360 audience to admit.
5. Click Summary.
6. Click Done.
7. Drag a decision split activity onto the canvas.
8. Click the activity.
9. To configure the first path contacts can follow, click Edit.
10. In Journey Data, locate the audience you selected when configuring the Google Analytics 360 entry source.
11. Drag AllowPersonalizedAds into the filter, and select False.

Note: Salesforce customers are responsible for ensuring the accuracy of any consumer consent settings managed by external
platforms such as Google Analytics. See Marketing Cloud Data Protection and Privacy Tools for more information on the privacy
compliance tools available in Salesforce Marketing Cloud.

GA360 Use Case


An NTO marketer wants to compel past purchasers to review the item or service they purchased. The marketer creates a journey in
Marketing Cloud Journey Builder using data from their company’s Google Analytics 360 account.

NTO Creates a Potential Reviewers Journey


To encourage reviews, an NTO marketer creates a journey that admits customers from the GA360 audience and creates a segment of
customers who made a purchase without leaving a review, called Potential Reviewers. To admit customers to this journey, the marketer
sets up the GA360 entry source to admit members of the Potential Reviewers audience.
In Journey Builder, the marketer drags the Google Analytics 360 entry source tile into the journey. After clicking the activity to access
configuration, the marketer clicks Select an Audience and chooses the Potential Reviewers audience.
NTO wants to exclude customers who left a review after being added to the Potential Reviewers audience, but before journey activation.
So after choosing the Potential Reviewers audience, the marketer creates a filter using an attribute called Reviews. The marketer configures
the filter so that audience members enter the journey when the attribute value is null. The marketer adds another line, drags the Reviews
and ReviewDate attributes into it, and configures the filter so that Reviews is not null and ReviewDate is less than today.
The marketer finishes configuring the entry source. When the journey is activated, members of the Potential Reviewers audience that
meet filter criteria are admitted to the journey.

262
Marketing Cloud Journeys and Automations Entry Sources

The Salesforce Data Event


A Salesforce Data Event is an action in Sales Cloud or Service Cloud, such as creating or updating an object record, that injects a contact
into a journey. When the primary object meets rule criteria and reference object filtering criteria, Flow Builder initiates a Journey Builder
event.

Note: You can grant users access to create or edit Salesforce events, except users with the Marketing Cloud Administrator role.

Consider these items when you configure the event:


• Use the Sales Cloud or Service Cloud object as the source of the entry event
• Who enters the journey, such as users, leads, or contacts
• When the user, lead, or contact enters the journey, such as when a record is created or updated
• Select attributes from object data to filter who enters the journey
• Select fields from related objects and the entry object to use for journey data

Note: Limit selection to 250 fields or less. Limit journeys per object to 80 or less.

Each record includes the ID for the user, lead, or contact entering the journey, their email address, and the email opt-out flag status.
After the entry source is configured, you can’t edit the object it uses or who enters the journey. To choose a different object, delete and
recreate the entry source. You can edit the entry criteria, filters, and event data for a configured entry source before it’s published. You
can copy journeys that contain Salesforce entry sources and entry sources are reusable.

Note: Salesforce entry sources are only editable when no other running journey or version uses them.

After you save the entry source, Marketing Cloud creates a data extension that uses event data as columns and the contact ID as the
Subscriber ID. Records that meet the entry source criteria are imported into this data extension when the journey is published. A row is
created in the data extension every time a record meets the criteria, but existing rows aren’t updated. You can have the same record in
the data extension multiple times when it enters the journey more than one time. For more details, see Journey Settings.

Note: The Test Mode feature in Journey Builder doesn’t support Salesforce Entry Sources.

The integration between Marketing Cloud and Sales Cloud uses Flows, Process Builder, Apex, Platform Events, and SOAP APIs. Therefore,
Salesforce Data Events are subject to all APEX Governor Limits. Adding Journey Builder events or your own processes or flows into the
save order of an object can expose or exceed limits within your org. When an integrated journey is activated, the Sales Cloud Flow
Metadata API launches the flow for the object with the conditions specified in the entry configuration. These tools allow your business
to run behind the scenes. Here’s an example that illustrates how the objects are used and how they work from end to end.

APEX Governor Limits


Salesforce Data Events are subject to all APEX limits, or governors, and process limits within the platform. Introducing Journey Builder
Events or Process Builder and Flows into the save order of an object can expose or exceed limits within your org.
• 50 Future invocations: Before the 5.496 Marketing Cloud Connect package, Journey Builder made direct callouts using the future
annotation. This action causes an error on any transaction exceeding 50 records, meeting the Journey Builder Event criteria. To avoid
this error, use Marketing Cloud Connect package 5.496 or above.
• Transactions with more than 2,000 records: A save transaction is limited to less than 2,000 flow invocations. This limit allows up to
2,000 records to enter a flow within a transaction. If multiple flows are triggered or your org has custom logic generating transactions
with more than 2,000 records, the flow invocation fails. To interact with a smaller number of objects, modify transactions.
• Maximum CPU Time: The event adds steps to the target objects save order transaction, which uses a small portion of the allocated
CPU for a transaction. To avoid exceeding this limit, monitor the addition of processes.

263
Marketing Cloud Journeys and Automations Entry Sources

• 50 System.enqueueJob limit: Each Journey Builder callout is queued as an invocable method. Each transaction can enqueue up to
50 invocable methods and can process up to 200 records. If objects meet the criteria for multiple events, this limit can be reached
with 50 unique events on a single object. This limit is shared with non-Journey Builder triggers and flows.

Associated Sales or Service Org Changes


If the Sales or Service Cloud org connected to the Marketing Cloud account changes, delete all associated journeys and events. Journeys
can reference objects or fields that don’t exist in the new org and cause publishing to fail. Create journeys and events to reference the
new org.

Known Issues
• Platform Events Apex Job runs before update transaction is complete
• Journey Builder Salesforce Integration Events will not always fire if another Process Builder finishes later in the same transaction
• If one contact in the batched API call to the Marketing Cloud fails, the entire batch fails to inject.

Configure the Salesforce Data Event


Using this Journey Builder event, contacts enter the journey when a Sales Cloud record is created or updated.
Create a Salesforce Campaign Event
The Salesforce Campaign event in Journey Builder adds contacts to a Marketing Cloud journey when they are added to a Sales Cloud
campaign. You can also use this event to send Salesforce object data into the data extension created upon entry.
Salesforce Experience Cloud
The Salesforce Experience Cloud entry source in Journey Builder starts activities in a journey when new members are added to your
Experience Cloud site. Use the Salesforce Data Event for activities that aren’t related to adding new members.
Person Accounts and Salesforce Data Events
A person account is a type of account that stores information about individual consumers. By default, Salesforce accounts are business
accounts, but administrators can choose to set up person accounts. Person accounts facilitate business-to-consumer functionality
within Sales and Service Clouds. Use the Salesforce Data Event to tell Journey Builder to perform one of these actions:

Configure the Salesforce Data Event


Using this Journey Builder event, contacts enter the journey when a Sales Cloud record is created or updated.
1. Drag Salesforce Data onto the canvas.
2. Click Salesforce Data.
3. Choose Salesforce Data Event.
4. Select a primary object as the event source.
5. Choose to detect records that are created, updated, or both to send contacts into the journey.
6. Choose who enters the journey.

Note: When configuring the event, select who enters a journey, such as leads, contacts, person accounts, or users.

7. Create a filter for the primary object.


8. Add more filtering criteria based on any reference objects, which includes any object cross-referenced from the primary object.

Note: Polymorphic fields aren't supported in secondary filter criteria.

264
Marketing Cloud Journeys and Automations Entry Sources

9. Choose journey data based on primary or reference objects. The event sends data from the selected fields to Journey Builder. Each
record automatically includes the ID related to the person entering the journey, that person's email address, and the email opt-out
flag status as applicable.
10. Configure the remainder of the journey by adding and configuring activities.
11. When journey setup is complete, click Activate to start the journey. This action creates a Flow in the Sales Cloud.

Note: Salesforce entry sources, including the Salesforce Data, Campaign, and Community entry sources, are only editable
when no other journey or version uses them. You can't edit the object a Salesforce entry source uses to decide who enters
the journey. To choose a different object in a Salesforce entry source, delete and recreate the entry source.

Create a Salesforce Campaign Event


The Salesforce Campaign event in Journey Builder adds contacts to a Marketing Cloud journey when they are added to a Sales Cloud
campaign. You can also use this event to send Salesforce object data into the data extension created upon entry.

Note: New users must be explicitly granted access to create or edit Salesforce events, except users with the Marketing Cloud
Administrator role.
The Salesforce Campaign event adds contacts to a journey when they are added to a Sales Cloud campaign.
1. Drag Salesforce Data onto the canvas.
2. Click Salesforce Data.
3. Select Salesforce Campaign Event.
4. Select one or more campaigns whose members are added to the journey when they are added to the campaign.
5. Select whether the Contact or Lead record enters when campaign members enter the journey.
6. On the next page, select Salesforce object data to include in the journey for use in decision splits, and other activities.
7. To select an object field, click it.

Note: If no contact record exists in the Marketing Cloud for a person entering this journey, Journey Builder creates one.

Note: Salesforce Campaign events are not editable.

Salesforce Experience Cloud


The Salesforce Experience Cloud entry source in Journey Builder starts activities in a journey when new members are added to your
Experience Cloud site. Use the Salesforce Data Event for activities that aren’t related to adding new members.

Note: New users must be explicitly granted access to create or edit Salesforce events, except users with the Marketing Cloud
Administrator role.

Note: Salesforce entry sources are only editable when no other journey or version uses them. You can't edit the object a Salesforce
entry source uses to decide who enters the journey. To choose a different object in a Salesforce entry source, delete and recreate
the entry source.
1. Drag Salesforce Data onto the canvas.
2. Click Salesforce Data.
3. Select Salesforce Community.
4. Select a community from your list of connected, active communities and click Next.

265
Marketing Cloud Journeys and Automations Entry Sources

5. Select fields for use in the journey decision splits and other activities.
6. Click Next.
7. Review the entry source definition summary and click Done.

Person Accounts and Salesforce Data Events


A person account is a type of account that stores information about individual consumers. By default, Salesforce accounts are business
accounts, but administrators can choose to set up person accounts. Person accounts facilitate business-to-consumer functionality within
Sales and Service Clouds. Use the Salesforce Data Event to tell Journey Builder to perform one of these actions:
• Create a Person Account, not a Business Account, for each Marketing Cloud contact who enters the journey.
• Fire the event when an object associated with a business account is created or updated.
• Fire the event when an object associated with a person account is created or updated.

Configure Events for Person Accounts


Create a person account for each Marketing Cloud contact who enters the journey. When a person account is created, an identical
contact record is created in Sales or Service Clouds.
Configure Events for Business Accounts
Follow these steps in Journey Builder to configure the event to fire when an object associated with a business account is created or
updated.
Configure Events for Person Account Related Objects
Follow these steps to fire the Journey Builder event when an object associated to a Person Account is created or updated.

Configure Events for Person Accounts


Create a person account for each Marketing Cloud contact who enters the journey. When a person account is created, an identical
contact record is created in Sales or Service Clouds.
The event processes Person Account records only. Journey Builder does not process Business Accounts.
1. Drag Salesforce Data onto the canvas.
2. Click Salesforce Data.
3. Select a primary object to be the event source.
4. Select the account object to be the source of this entry event.
5. Select to fire the event when records are created, updated, or both.
6. Select Person Contact ID (Contact) under Who do you want to inject?
7. Create a filter for the account object.
a. Under Attributes, drag primary object fields into the filter pane.

8. Add more filter criteria using the primary object's related objects if necessary.
9. Select journey data by expanding account fields. This data enters the journey with each contact.
10. To update the Person Account record during your journey, make sure that the field Account ID from the account object is added to
Journey Data.
11. Select data from related objects listed below account if necessary.
12. These fields are added to journey data automatically.

266
Marketing Cloud Journeys and Automations Entry Sources

• The Person Contact ID found in the account record. Use this field to link the data extension to an attribute group. For example,
link Contact Key to Account: PersonContactID.
• The Contact record email address, which is added automatically to Default Channel Addresses
• The Contact record email opt-out flag

Configure Events for Business Accounts


Follow these steps in Journey Builder to configure the event to fire when an object associated with a business account is created or
updated.
1. Drag Salesforce Data onto the canvas.
2. Click Salesforce Data.
3. Choose Salesforce Data Event.
4. Select the account object to be the source of this entry event.
5. Select to fire the event when records are created, updated, or both.
6. Select an ID under Who do you want to inject?

Note: For business accounts, select only list items followed by the label (User).

7. Create a filter for the account object. Under Attributes, drag primary object fields into the filter pane.

Note: Do not use Person Account fields. Use the IsPersonAccount field to define event rules to admit only Business Accounts
or Person Accounts. To admit only Business Accounts, set filter criteria so IsPersonAccount = false. To admit only Person
Accounts, set filter criteria so IsPersonAccount = true.

8. Select data from related objects listed below account if necessary.


9. Select journey data by expanding account fields. These fields bring data into the journey for each contact who enters. The data can
be used later in the journey.
These fields are added to journey data automatically:
• The email address of the record for the person entering the journey. This information is added automatically to Default Channel
Addresses.
• The email opt-out flag for the person entering the journey.

Configure Events for Person Account Related Objects


Follow these steps to fire the Journey Builder event when an object associated to a Person Account is created or updated.
1. Drag Salesforce Data onto the canvas.
2. Click Salesforce Data.
3. Select Salesforce Data Event.
4. Select an object that is related to a Person Account as the source of this entry event.
5. Select to fire the event when records are created, updated, or when either action occurs.
6. Select an ID under Who do you want to inject?
a. To admit the Person account, select Account ID (PersonAccount).
b. To admit a different type of user, select a different ID such as Contact ID, Lead ID, or Owner ID.

267
Marketing Cloud Journeys and Automations Marketing Cloud Mobile App Events Overview

7. Create a filter for the object. Under Attributes, drag primary object fields into the filter pane.
8. Select data from related objects listed below the account, if necessary.
9. Expand the account fields to bring data into the journey for the contact that enters or for related objects.

Note: When a Person Account is created, an identical Contact record is created in the Sales and Service Cloud.

These fields are added to journey data automatically:


• The ID of the person entering the journey - if it is a Person Account, the Person Contact ID of the Account record is added. This ID
must be used to link the data extension to an attribute group.
• The contact record email address, which is added automatically to Default Channel Addresses
• The contact record email opt-out flag

Use CloudPages to Admit Contacts into Journey Builder


Use a CloudPages Smart Capture form and Journey Builder to admit Marketing Cloud contacts into a journey using the CloudPages Form
Submit Event.
Create at least one Smart Capture form in CloudPages before you use this entry source.
1. Drag CloudPages onto the canvas.
2. Click CloudPages.
3. Choose a Smart Capture form and click Next.
When a customer submits the Smart Capture form, that customer is automatically added to a data extension and queued to enter
this journey.

4. Build the rest of the journey, and click Activate to begin admitting contacts who submit the designated Smart Capture form.

SEE ALSO:
CloudPages
Use a Smart Capture Form as a Journey Builder Entry Event

Marketing Cloud Mobile App Events Overview


Highly relevant and contextually aware interactions are the cornerstone of amazing customer experiences. Now, user behaviors on your
mobile app can drive relevant and personalized touchpoints, powered by easy-to-configure listening rules in Journey Builder. Mobile
App Events enable your brand to deliver mobile moments that matter by creating meaningful engagement, increasing brand loyalty,
and generating a higher return on investment for your marketing campaigns.
What Is an App Event?
A Mobile App Event is a direct action taken by the user within your mobile app. Mobile App Events are tracked by the MobilePush SDK
and then submitted to Journey Builder for actioning.
Use Cases
You can use Mobile App Events to enter a user into a journey, trigger the display of an in-app message, and connect with your customers
in several ways
Some examples include:
• Request permission to send push notifications.

268
Marketing Cloud Journeys and Automations Marketing Cloud Mobile App Events Overview

• Ask to take a survey.


• Prompt to sign up or complete an account profile.
• Cross-sell products.
• Highlight a refer-a-friend program.
• Nudge to try a new feature.
• Ask to rate the app.
• Contact customer service.

Get Started with Mobile App Events


Before events can be used to trigger the display of in-app messages, they must first be defined in Marketing Cloud and then
implemented in the MobilePush SDK.
Define Your Mobile App Event Schema
An app event requires a name and can optionally contain many attributes. Depending on your app and desired use cases, you can
capture events or attributes that are more descriptive than others.
Upload Mobile App Events in Journey Builder
Before you can use events within Marketing Cloud, you must define the event schema for your applications. When you complete
your .csv template, you can upload your file into Journey Builder.
Update Existing Mobile App Event Schemas
Use care when updating events that are being used in running journeys. Changing the names or data types of app events can cause
errors if newly defined event doesn't match the inbound data coming from the MobilePush SDK.
Use Mobile App Events in Journey Builder
After you upload your .csv file, you can use Journey Builder to start sending.

Get Started with Mobile App Events


Before events can be used to trigger the display of in-app messages, they must first be defined in Marketing Cloud and then implemented
in the MobilePush SDK.

Important: The name of both the event and the attributes defined within Marketing Cloud must exactly match the name tracked
by the MobilePush SDK. This naming allows Journey Builder to react to app events.

Prerequisites
1. As a marketing team, define the campaigns that use mobile app events. For some inspiration, check out examples and best practices.
2. Work with your mobile app development team to define the app events that are required to power these campaigns.
3. Upload your .csv schema file for the mobile app events that you want to use within Journey Builder.

Note: Journey Builder isn’t intended to act as a dedicated analytics or segmentation platform. Prioritize events to use directly
within a campaign. Marketing Cloud allows a maximum of 20 defined event names per MobilePush app.

4. Have your mobile development team track events with the MobilePush SDK (minimum v 8.0.0), exactly as defined in the .csv schema
file that you uploaded to Journey Builder.
5. Use your mobile app events within Journey Builder’s Mobile App Event Entry Source and in-app messages.

269
Marketing Cloud Journeys and Automations Marketing Cloud Mobile App Events Overview

Template Events
Template Events are mobile app events that are predefined by Salesforce. These events use a standardized naming convention that's
understood by other Salesforce products, such as Customer Data Platform. The names used for Template Events and their Attributes
can't be changed. But you can extend the predefined events by adding attributes to them. Template Events are predefined in the
MobilePush SDK, but they still require implementation.

SEE ALSO:
MobilePush and Journey Builder for Apps SDKs
In-App Messages
In-App Messaging FAQs
Configure an Existing Content Builder In-App Message in Journey Builder
Campaign Planning for Mobile App Events

Define Your Mobile App Event Schema


An app event requires a name and can optionally contain many attributes. Depending on your app and desired use cases, you can
capture events or attributes that are more descriptive than others.

Important: The name of both the event and the attributes defined within Marketing Cloud must exactly match the name tracked
by the MobilePush SDK. This naming allows Journey Builder to react to app events.
Event and Attribute Naming Conventions
• Use only alphanumeric characters and underscores and spaces.
– Acceptable: Added_to_Cart or Added To Cart
– Acceptable: product_ID or product ID
– Unacceptable: Added-to-Cart or Added to [emoji]

• Unicode and double-byte characters, such as emoji and kanji, aren’t supported.
• Leading and trailing whitespaces in names are automatically trimmed.
• Names aren’t case-sensitive.
– MyEvent is equal to myevent
– ViewScreen is equal to viewscreen
– View Screen ! isn’t equal to ViewScreen

Event and Attribute Naming Conventions


Ensure that your organization uses a consistent event and attribute naming convention across your app. This action keeps your account’s
data clean while avoiding the confusion that can result in triggering the wrong campaign based on a misunderstood event. We recommend
starting by brainstorming the most important high-level actions that users perform in your app.
Mobile App Events track user actions and aren’t objects. As a result, we recommend applying a verb-first naming convention for your
events.

Example: User made a purchase: Purchase

Example: User registered for an account: Registered

For events with more than two words, we recommend using spaces or underscores.

270
Marketing Cloud Journeys and Automations Marketing Cloud Mobile App Events Overview

Example: User viewed a specific screen: Viewed Screen

Example: User added a product to a cart: Added_to_cart

Example: User used a new feature: Used [X] feature

When considering your event names, make them generic instead of specific. Then use attributes to capture the specific details or metadata
about the event.
Sometimes, more detailed event names are required. For example, specific campaigns, such as onboarding or first-time user action.

Example: First Order Completed

Example: First App Open

Example: First used [X] feature

Example .csv File


Use the example template to collaborate with your development team and define the event schema that you want to track with the
MobilePush SDK and use throughout Journey Builder. Then create a .csv and upload the file through the App Event Management screen
in Journey Builder.
Important Notes:
• Values must be text, number, or boolean.
• Template fields are mapped by ordinal.
• Values aren’t case-sensitive.
• Event Description is needed only once.

Note: Event Description limit is 250 characters.

• The description is pulled from the first row where the event name occurs.
• Attribute Data Type is a required field for every Attribute Name.
• If not defined, Attribute Required is an optional field that defaults to FALSE.
• Assigned Data Type is required: text, number, or boolean.
• Value length is either blank or a number.

Note: If you don’t specify a maximum length, the default is 50. Maximum allowed value is 100 characters.

• Marketing Cloud currently allows a maximum of 20 unique Event Names to be defined per MobilePush app and up to 10 Event
Attributes per Event.

Table 25: Example .csv


Event Name Event Description Attribute Name Attribute Data Attribute Attribute Value
Type Required Length
Installed App User installs the app

Viewed Screen User views a specific Screen Name Text TRUE 50


screen in the app

271
Marketing Cloud Journeys and Automations Marketing Cloud Mobile App Events Overview

Event Name Event Description Attribute Name Attribute Data Attribute Attribute Value
Type Required Length
Signed Up User registers for an Username Text 100
account

Favorited User adds item to Item Name Text 100


their list of favorites

Favorited User adds item from Item Category Text 100


a specific category to
their list of favorites

Started Checkout User began the Order ID Text TRUE


checkout process

Started Checkout Order Total Number TRUE

Started Checkout Currency Type Text TRUE

Completed User completes an Order ID Text TRUE


Checkout order

Completed User completes an Order Total Text TRUE


Checkout order

Completed User completes Used Coupon Boolean TRUE


Checkout checkout with a
coupon

Upload Mobile App Events in Journey Builder


Before you can use events within Marketing Cloud, you must define the event schema for your applications. When you complete your
.csv template, you can upload your file into Journey Builder.
1. In the Journey Builder dashboard, click Events.
2. From the dropdown, select Mobile App Events.

272
Marketing Cloud Journeys and Automations Marketing Cloud Mobile App Events Overview

3. Click Upload Events.


4. To select the apps that you want to use, click Edit.
5. Select your apps, and click Summary.
6. To upload your event definitions, click Edit.
7. Select whether you want to add and update to your app event schema or overwrite and replace your app’s event schema.

Note: Take caution when updating events that are being used in running journeys. If the newly defined event doesn’t match
the inbound data coming from the MobilePush SDK, changing the names or data types of these events can result in errors.

8. Click Upload File, or drag your .csv file.


9. Click Upload Events.
10. If your file contains errors, correct them, and then upload the file again.
11. Click Summary.

273
Marketing Cloud Journeys and Automations Marketing Cloud Mobile App Events Overview

Note: If you want to edit existing events, upload an updated .csv file, and then select the option to Add and update events for
your selected apps. If you want to delete existing events, upload an updated .csv file with the removed event, and then select
the option to Overwrite and Replace existing schema for your selected apps.

SEE ALSO:
Campaign Planning for Mobile App Events
Campaign Planning for Mobile App Events

Update Existing Mobile App Event Schemas


Use care when updating events that are being used in running journeys. Changing the names or data types of app events can cause
errors if newly defined event doesn't match the inbound data coming from the MobilePush SDK.

Note: To edit existing events, upload an updated .csv file, and then select the option Add and update events for your selected
apps. To delete existing events, upload an updated .csv file with the removed event, and then select the option Overwrite and
Replace existing schema for your selected apps.

Constructive Schema Changes


Extending an event: If you add attributes to an existing event, this action doesn't change your active running journeys that are using
that event.

Example: A Purchase event exists with a Price attribute. You later upload a new schema with the same Price definition, but add
a new Currency attribute. Since the Price attribute hasn't changed, journeys using that event aren't disrupted.

Destructive Schema Changes


Deleting an Event or Attribute: If you Overwrite and Replace your existing event schema with a new schema that doesn't include the
same event names or attributes, the event definitions and attributes are deleted from your account. As a result, all journeys using those
definitions and attributes are affected.

Example: You have a Purchase event that's referenced by many journeys. You later upload a new schema file that doesn't contain
any information about this Purchase event. You select Overwrite and Replace the existing schema for your selected apps.
As a result, Journey Builder is unable to listen for Purchase events because the Purchase event schema is deleted from your account.

Use Mobile App Events in Journey Builder


After you upload your .csv file, you can use Journey Builder to start sending.
1. Click Create New Journey.
2. Under Multi-Step Journey, click Build.
3. Drag the Mobile App Event entry source onto the canvas.
4. Click Select Event.
5. Click Summary.
6. Drag the In-App Message activity onto the canvas.
7. To configure your message, click it.
8. Add an activity name and description.

274
Marketing Cloud Journeys and Automations Use Data in Journey Builder

9. Click Select Message.


10. Click Summary.
11. Next to Message Configuration, click Edit.
12. From the dropdown, select the app channel that you want to use.
13. Click Display Trigger, and configure the event criteria to display messages.
14. Click Summary.
15. Click Done.
16. Configure the rest of your journey, and click Activate.

Use Data in Journey Builder


Journey Builder’s essential functions depend on data. To maximize your journeys’ reach, explore how you can use data for filtering,
personalization, and other Journey Builder tasks.

View Your Contact and Journey Data


Access your contact data and see your Journey and Contact Data attributes in the Journey History dashboard. Journey Data is data
from the data extension of your configured entry source, which is only visible after you configured your entry source. Contact Data
consists of attributes linked to your contact model in Contact Builder.
Create a Filter
Make sure that the intended Marketing Cloud contact enters your journey, follows a split activity path, or reaches the goal by building
a filter in Journey Builder. Use contact data and journey data attributes in a filter as needed.
Journey and Contact Data
Journey data preserves the state of a contact's data at the moment an entry event fires, facilitating the use of that data throughout
a journey. Contact data captures the data values in the event source data extension at the time when Journey Builder evaluates it.
Both are uniquely useful in journey creation.
Linked Data Extensions in Journey Builder
Your data setup affects how Marketing Cloud evaluates the contact attributes used in journey entry source filters, wait activities, or
decision splits. Review how Marketing Cloud evaluates attributes when a contact attribute is stored in a data extension that is linked
to one or more other data extensions.
Specify an Explicit Attribute Path
The filter used in Journey Builder entry sources, decision splits, and goals was updated in the August 2017 Marketing Cloud release.
Attribute to Attribute Comparison
Compare an attribute value to another attribute in entry events and decision splits in Journey Builder.
Personalization in the Journey Builder Email Activity
Personalize email content sent by Journey Builder using the Marketing Cloud's email personalization features.
Email Personalization Use Case
In Journey Builder, email personalization replaces the personalization string in the email with the matching attribute value found in
journey data. This feature means that each personalization string is replaced with the specified attribute value as it exists when the
contact enters the journey. Using journey data to substitute personalization strings for data values ensures that emails are not sent
with blank or unintended data values.

275
Marketing Cloud Journeys and Automations Use Data in Journey Builder

Journey and Contact Data in Decision Splits


Use journey and contact data in Journey Builder decision splits to direct contacts down a path based on changes to an attribute
value during a journey. This step is useful when you want to promote to a specific event, even if that event happened before the
contact is admitted to the journey.

View Your Contact and Journey Data


Access your contact data and see your Journey and Contact Data attributes in the Journey History dashboard. Journey Data is data from
the data extension of your configured entry source, which is only visible after you configured your entry source. Contact Data consists
of attributes linked to your contact model in Contact Builder.
1. Reference attributes to eliminate the need to switch from Journey Builder to Contact Builder when configuring email personalization
or other activities.
2. Verify the data extension that you selected includes the attributes you want.
3. Verify that attribute data types are correct to allow filter comparisons to work as intended.

Create a Filter
Make sure that the intended Marketing Cloud contact enters your journey, follows a split activity path, or reaches the goal by building
a filter in Journey Builder. Use contact data and journey data attributes in a filter as needed.
In entry sources, decision split activities, and other Journey Builder components, marketers can create a filter to admit contacts based
on attribute values. Contacts that meet filter conditions are admitted. Filters consist of an expression, an attribute, an operator like equals
or begins with, and a default or restricted value you choose. Create multiple expressions, and tell Journey Builder how they work
together. Alternately, a filter can include attribute-to-attribute comparison. Compare contact and journey data attributes as needed.
1. To find attributes to use in the filter, click Contact Data.

Note: Because journey data attributes are based on a snapshot of contact data, the attribute sets that appear after clicking
Contact Data or Journey Data. Because journey data occurs after a journey is activated, you can’t use it to filter an entry
source filter.
• Click Journey Data for attributes in the state they were in when the contact entered the journey.
• Click Contact Data for attributes in the state they’re in when evaluation occurs after the event occurs.

2. Find the attribute group you want, then the data extension and attribute.

Note: Encrypted fields and attributes that allow null values can’t be used in attribute-to-attribute comparison.

3. Drag the attribute into the filter expression.


a. When comparing attributes, drag another attribute to the right of the first attribute.
b. If you’re using multiple attributes in the filter expression, drag another attribute under the first attribute.

4. Select an operator.
5. Add a default text value or choose from a list of preconfigured values.
• When using more than one attribute, group filter statements using And and Or operators.

276
Marketing Cloud Journeys and Automations Use Data in Journey Builder

• If using more than two attributes in the filter, create subgroups by clicking between the attribute and the And and Or operators.

SEE ALSO:
Profile and Preference Attributes in Marketing Cloud
Use Restricted Values

Journey and Contact Data


Journey data preserves the state of a contact's data at the moment an entry event fires, facilitating the use of that data throughout a
journey. Contact data captures the data values in the event source data extension at the time when Journey Builder evaluates it. Both
are uniquely useful in journey creation.

Journey Data Contact Data

Initial data value about a customer. Current data value about a customer.

Provides attributes in the state they were in when the contact Provides attributes in the state they are in when evaluation occurs
entered the journey. after the entry event has fired.

Comprised of event data and activity data.

Use when a contact is likely to exist in a journey more than once


simultaneously.

Use for comparison when a data value is expected to change.

For some customer journeys, it's useful to filter against the initial data about a customer. That data value often qualifies the customer to
enter the journey, even if it later changes. For example, the journey data about a customer shows that the first purchase was decaffeinated
coffee. Even if the customer does not purchase that coffee again, you can use that data as a filter in a journey to market a new coffee.
For other journeys, it is necessary to filter against the most recent customer data. For example, the contact data about a customer shows
a purchase of a new regular coffee flavor. This information is useful to filter against in a journey to market a sale on that flavor.
Journey data is the information about a contact that is brought in when the contact enters a journey. It’s like a snapshot of the contact’s
attribute data at the moment the contact is added to the journey. Contact data is updated as the journey goes on, but journey data is
not. Use the different types of data to present before- and after-data points in personalization strings or to detect changes in an attribute.
You can use both journey data and contact data when filtering in entry events as well as decision splits and message personalization.
Events can either be journey-specific or shared. Create a shared event in Entry Source Administration and use it in one or more journeys.
The journey-specific event must be used in the journey within which it is configured.

SEE ALSO:
Link Data Extensions in Contact Builder
Attribute Group Creation in Contact Builder

Linked Data Extensions in Journey Builder


Your data setup affects how Marketing Cloud evaluates the contact attributes used in journey entry source filters, wait activities, or
decision splits. Review how Marketing Cloud evaluates attributes when a contact attribute is stored in a data extension that is linked to
one or more other data extensions.

277
Marketing Cloud Journeys and Automations Use Data in Journey Builder

In Marketing Cloud’s Contact Builder, Data Designer permits linking data extensions to the contact record or to other data extensions.
When you create the relationships between data extensions, you can specify the cardinality for the relationship:
• One-to-One Relationship
• Population
• One-to-Many Relationship
• Many-to-Many Relationship

Tip: Limit the number of rows per contact to 1000 or less. Any contact beyond the 100th row isn’t used for evaluation.

Cardinality refers to how the data extensions relate to each other based on the attribute links between the two data extensions.
Marketing Cloud evaluates contact attributes in activities, entry sources, goals, and exit criteria when a filter is used, so cardinality of the
data extensions is important. If a data extension includes a one-to-many or many-to-many relationship to other data extensions, a
matching attribute value can appear more than one time.
To ensure that Marketing Cloud evaluates the attribute value you intend, use attribute-to-attribute comparison in decision splits and
event entry sources. This feature allows you to compare two attribute values. You can compare an attribute value from journey data to
an attribute value in a linked contact data extension to identify the specific record to evaluate. These examples demonstrate how data
extension linking can affect journeys when a filter is used.

Note: We don’t recommend using data extensions with many-to-many relationships in journey entry sources and activities. When
you must use a data extension with a many-to-many relationship, use an intermediate data extension.

Example: A marketer links a data extension called Customers, which has information about customers, to a data extension called
Purchases, which has purchase records. The data extensions are linked on the Contact Key attribute. The Customers data extension
has only one record per customer. The Contact key is a primary key in Customers. The Purchases data extension allows more than
one record per contact key because a customer can purchase items more than one time. So the marketer links the Customers data
extension to the Purchases data extension in a one-to-many relationship. This approach means that a contact key can appear in
the Customers data extension one time, but can appear in the Purchases data extension many times.

Example: Decision SplitA marketer creates a journey to follow up with survey respondents. The journey sends a follow-up
email based on whether the response indicates positive or negative sentiment as tracked in a Survey Respondents data extension.
Because customers can respond to multiple surveys, customers can be represented in the data extension more than one time. So
the marketer adds a decision split and uses attribute-to-attribute comparison to ensure that the journey evaluates a response
sentiment that is specific to each response. The marketer configures the first decision split path as follows:
Sentiment (from Survey Respondents data extension linked in Contact Builder) = Positive AND
SurveyID (from Journey Data) = SurveyID (from Survey Respondents data extension)

Example: Event Entry SourceA marketer sets up a journey to follow up with customers who leave their website with unpurchased
items in their cart. The marketer configures the Event entry source to admit a contact 1 hour after customers abandon their cart
when the cart value is greater than $50. The marketer sets up the filter using the CartValue attribute from contact data. The filter
is configured as follows:
CartValue is greater than or equal to $50 AND
CartID (contact data) = CartID (journey data)
This filter ensures that the journey doesn't admit a contact a who abandoned a $10 cart, but does admit a contact who abandoned
a $200 cart.

Example: GoalsA marketer creates a journey to incentivize customers to make purchases that are greater than $100. Customer
purchases are tracked in the Purchases data extension, which is linked to the Customers data extension in a one-to-many relationship.
Customers can make multiple purchases. The marketer sets a journey goal that each customer makes a purchase totaling over

278
Marketing Cloud Journeys and Automations Use Data in Journey Builder

$100. The journey counts a contact as meeting goal when they make any purchase over $100. To set up the goal, the marketer
configures the goal filter as PurchaseAmount is greater than 100. Marketing Cloud evaluates the first matching value it finds, even
if there are multiple matching values in the data extension. Contact data attributes can’t be compared to journey data attributes
in goals.

Example: Wait by AttributeA marketer sets up a journey that emails customers after a purchase. The marketer uses the wait
by attribute activity and selects the PurchaseDate attribute from the Purchases data extension. The Purchases data extension is
linked to the Customers data extension in a one-to-many relationship. Because of this relationship, a contact can have more than
one record matching its contact key in the Purchases data extension. When Marketing Cloud evaluates the Purchases data extension,
it uses the first value that matches the contact key. Attributes aren’t compared in the wait by attribute activity, so Marketing Cloud
evaluates the first matching value it finds.

SEE ALSO:
Attribute to Attribute Comparison
Data Designer in Contact Builder
Link Data Extensions in Contact Builder

Specify an Explicit Attribute Path


The filter used in Journey Builder entry sources, decision splits, and goals was updated in the August 2017 Marketing Cloud release.
This update only affects customers whose Contact Builder data model links one attribute set to multiple attribute sets within the same
attribute group. This setup is common for Salesforce Sales & Service Cloud connected customers, who have multiple paths from All
Contacts to the desired attribute.
Where multiple paths to an attribute exist, some filters have an ambiguous path in the filter expression. For instance, the filter could use
an attribute other than the one you intended to determine which path a contact takes. If your filter’s configuration resulted in an
ambiguous path, use these instructions to make the path explicit.
These activities do not support setting explicit paths.
• Wait By Attribute Activities
• Sales Cloud Activities
• Attribute to Attribute Comparison Activities using Contact Builder attributes on the right side of the comparison
• Custom Activities and Update Contact Activities based on Contact Builder attributes
These activities default to using the shortest path to an attribute, even if that path isn't the path you selected when configuring the
activity. We recommend that you create a single data extension with the necessary attributes for your journey that ensures the shortest
path to your data.
1. Open a journey that includes a decision split activity with a filter. Activities that contain an ambiguous path argument display a
warning symbol in the upper right of the activity icon on the canvas.
2. Create a draft of the journey.
3. Click each of the affected activities, then click the warning symbol next to the ambiguous argument.
4. From the Path dropdown at the top of the filter expression, select the desired attribute path.
5. Click Done
6. Save the journey.
7. Activate the new version of the journey. Stop previously running versions of the journey if necessary.

279
Marketing Cloud Journeys and Automations Use Data in Journey Builder

Note: If your filter’s configuration resulted in an ambiguous path, the existing filter still works. Following the August 2017
release, you can edit or confirm the filter path to ensure that they work as intended.

Example: This example shows two paths to the Products attribute set within the same attribute group. The Product SKU is linked
to a SKU in both the Abandoned_Cart and the Order_Details attribute sets. Both of those sets link back to All Contacts via the
Contact Key.

Attribute to Attribute Comparison


Compare an attribute value to another attribute in entry events and decision splits in Journey Builder.
Use filters to ensure that the intended contacts enter their journeys, follow the intended branch after a decision split, or reach the journey's
goal. Many journeys use a simple filter to admit any contact with the specified value in a data field on its contact record. Use attribute
to attribute comparison to compare the contact’s values in two data fields to determine whether to admit the contact.

Note: Attribute to Attribute Comparison can only be applied to the WhoID or the Primary Object ID from the Salesforce Data
Entry Event.
Attribute to attribute comparison is useful when a single contact can enter a journey more than once. Or, you can compare a journey
data attribute to a contact data attribute to determine if a change occurred between time of entry and current time. To perform the
comparison, drag the contact data attribute into the filter.
For example, in a Multiple Entry journey, customers enter the journey each time they make a purchase. The journey includes multiple
paths that are each setup for purchasers of a different product. Each customer has a fixed contactID and is assigned a unique purchaseID
for each purchase. The same contactID exists in the journey multiple times, each time with a unique purchaseID.
To confirm that the customer sees messaging for the right purchase, set the purchaseID from Contact Data to equal the purchaseID from
Journey Data. This expression confirms that journey sends messaging for the correct purchase by confirming that the purchaseID values
are the same.

Considerations
• Compare only attributes of the same data type.
• Attributes that allow null values cannot be used in attribute-to-attribute comparison.
• Encrypted fields are not supported.

Personalization in the Journey Builder Email Activity


Personalize email content sent by Journey Builder using the Marketing Cloud's email personalization features.

Considerations
• In Journey Builder, email personalization replaces the personalization string in the email with the matching attribute value found in
journey data. Each personalization string is replaced with the specified attribute value as it exists when the contact enters the journey.
• Dynamic content also uses journey data, similar to personalization.
• To prompt Journey Builder to use contact data attribute values instead of journey data attribute values, use AMPScript. Personalization
that calls contact data by default instead of journey data applies only to running journeys created before January 27, 2017.
• If you use Send Logging with custom Send Log attributes and expect contact attributes to be updated during the journey, your
Send Log records could be incorrect. To resolve this issue, open a support case through Salesforce Help.

280
Marketing Cloud Journeys and Automations Use Data in Journey Builder

How Personalization Works


To personalize an email, include personalization strings in your email content. Personalization strings are made up of percent signs
combined with an attribute's column name, such as %%FirstName%%. When the email is sent, it is validated and each personalization
string is rendered, showing the intended attribute value by calling it from journey data. Journey data differs from contact data because
it preserves the state of a contact's data at the moment an entry event fires. The journey uses that initial data throughout a journey.
If you are more experienced, use AMPScript for personalization. Use the %%=Lookup()=%% function to personalize an email with data
not found in journey data, or contact data that has changed since the journey started.
Personalization strings operate on a hierarchy for matching field names:
• If the field name exists in the entry data, Journey Builder uses the associated value.
• If the field’s value is null in the entry source, but there is a field with the same name in Profile Attributes for the All Subscribers list,
Journey Builder uses the Profile Attributes field for personalization.
• If the value isn’t found in Profile Attributes, Journey Builder does not insert a value.
When you use a date-based event, there is no entry source data extension associated to the journey. There is no entry data to check. If
there is a match Profile Attributes, Journey Builder uses that value. If there isn’t an attribute matching Profile Attribute for an email sent
from a journey that is configured with a date-based entry event, the email doesn’t pass validation and the journey doesn’t activate. To
use a value from any data extension when using a journey in this scenario, use AMPScript.

Example: A Northern Trail Outfitters (NTO) marketer creates a journey that sends different versions of emails to NTO customers.
The marketer stores contact data about NTO’s customers. Contact data includes data that is not likely to change, such as FirstName,
LastName, and DateOfBirth, and data that is expected to change often. One contact data attribute that changes often is VersionCode,
which determines the email version customers receive.
The email activity calls journey data to render personalization strings. Since journey data does not change throughout the journey,
use simple personalization strings to reference attributes that are not expected to change. The NTO marketer uses %%FirstName%%,
%%LastName%%, and %%DateOfBirth%% strings in the email.
However, the marketer knows the VersionCode attribute to change after contacts enter the journey because the journey includes
an Update Contact activity. This activity is configured to update the VersionCode attribute from ‘Version_1’ to ‘Version_2’ between
the first and second email activities. The second email uses ‘Version_2’ email content. Since the email activity only calls journey
data, which has ‘Version_1’ as the VersionCode value, the marketer must reference contact data directly. Referencing contact data
ensures that ‘Version_2’ is correctly used in the second activity. So the marketer uses the AMPscript Lookup() function to call the
VersionCode attribute.

Consider learning and using AMPscript to personalize emails using contact data attributes to capture the up-to-date attribute
value.

281
Marketing Cloud Journeys and Automations Use Data in Journey Builder

Note: To reference the _CustomObjectKey field on a data extension, which is hidden by default, use an AMPscript lookup,
as you would with contact data personalization.

SEE ALSO:
Personalization Strings in Marketing Cloud
Introduction to Programmatic Marketing Content
Format

Email Personalization Use Case


In Journey Builder, email personalization replaces the personalization string in the email with the matching attribute value found in
journey data. This feature means that each personalization string is replaced with the specified attribute value as it exists when the
contact enters the journey. Using journey data to substitute personalization strings for data values ensures that emails are not sent with
blank or unintended data values.

Tip: For a running journey created before January 27,2017, use, AMPScript to direct Journey Builder to call contact data attribute
values by default instead of journey data attribute values.
For example, a credit monitoring service, Cirrus, launches an email campaign to engage customers whose scores fall below 500 points.
This campaign sends emails encouraging customers to increase their credit scores. Also, emails sent by the service include the low credit
score as an incentive and a reminder.
Assuming Cirrus continually updates a data extension with updated customer credit scores, the service follows this procedure to set up
its journey:
• Cirrus creates a journey called Low Credit Score Email Series.
• Cirrus creates an entry event using Contact Data as the Event Type.
• Cirrus selects the Credit Scores data extension as the event source.
• Using contact data, Cirrus drags the Score attribute into the filter expression.
• To admit all customers whose credit score is below 500, Cirrus uses the is less than operator and types "500" to create its filter.
• To create its first email send, Cirrus drags an email activity onto the journey canvas.
• Cirrus selects an email with messaging that informs recipients their credit score is below 500. The email includes a personalization
string that looks at the journey data Score attribute to locate each customer’s low credit score.
• Cirrus adds a 30-day wait period following this email.
• Cirrus drags a decision split onto the canvas, configuring its first path to include contacts whose credit score is now greater than
500. The marketer configures the second path to include contacts whose credit score is lower than 500.
• In each path following the decision split, the marketer drags an email activity.
• In the first path, the marketer selects an email to congratulate customers who have raised their credit score. The marketer uses a
personalization string to find each customer’s previous credit score in journey data, and AMPScript to find their current score in
contact data. The email includes both scores.
• In the second path, the marketer selects an email to encourage customers who have not yet raised their credit score. The marketer
uses a personalization string to find each customer’s previous credit score in journey data, and AMPScript to find their current score
in contact data. The email includes both scores.

SEE ALSO:
Personalization in the Journey Builder Email Activity

282
Marketing Cloud Journeys and Automations Use Data in Journey Builder

Journey and Contact Data in Decision Splits


Use journey and contact data in Journey Builder decision splits to direct contacts down a path based on changes to an attribute value
during a journey. This step is useful when you want to promote to a specific event, even if that event happened before the contact is
admitted to the journey.
For example, Northern Trail Outfitters sets up a journey to send messaging to customers who buy shoes from their company. Every time
a customer purchases a pair of shoes from NTO, NTO’s Purchases data extension is updated. NTO wants to send messaging that reaches
1) all shoe buyers, and 2) buyers of particular styles of shoe, like hiking boots or sandals. NTO configures the journey's entry event to
admit all customers who purchase shoes.
NTO imports customer purchase data into the Purchases data extension, so they create an entry event that uses Purchases as its Event
Source.
• NTO names the new journey Shoe Sales Email Series.
• NTO creates an event using Contact Data as the Event Type.
• NTO uses the Purchases data extension as the event source.
• To set up a filter using at-the-moment data, NTO uses contact attributes. They access contact attributes by clicking Contact Data.
• NTO drags the PurchaseDate contact attribute into the filter expression, uses the equals operator, and selects Today, then finishes
creating the event.

Note: If you use a scheduled automation to update the entry source data extension, use the operator: is on or before.

• NTO drags the email activity onto the canvas to configure a Welcome email to all shoe purchasers.
• NTO configures a waiting period of 3 days.
• NTO wants to begin a campaign tailored to customers according to the type of shoes they purchase. NTO drags a decision split onto
the canvas.
• NTO clicks Create Filter Expression to configure the first path to include customers who purchased hiking boots, even if they
purchased a different kind of shoe more recently. NTO uses the journey data PurchaseItem attribute.
• NTO configures the decision path by setting the filter as follows:
– PurchaseItem equals hiking boots

• NTO follows the same procedure to configure the three more decision split paths:
– PurchaseItem equals casual shoes
– PurchaseItem equals running shoes
– PurchaseItem equals sandals

• In the next decision split path, NTO sets a filter to segment customers who bought hiking boots, casual shoes, running shoes, or
sandals during the journey. This filter enables them to target messaging to customers even when they didn't enter the journey
because they bought a specific style of shoe.
NTO clicks contact data to use contact attributes when configuring these paths:
– PurchaseItem equals hiking boots
– PurchaseItem equals casual shoes
– PurchaseItem equals running shoes
– PurchaseItem equals sandals

• NTO leaves the remainder path unconfigured. Contacts who do not follow any of the configured paths follow the remainder path.
These contacts receive different targeted messaging.

283
Marketing Cloud Journeys and Automations Goals in Journey Builder

NTO now adds an email with specialized content to each path knowing that each customer is receiving email targeted to the purchase.

Goals in Journey Builder


In Journey Builder, a goal is a measurement of customer actions that you want to promote. Measure goals based on a goal target you
set by creating a filter on contact data. After you activate a journey, Journey Builder evaluates contact data against the filter set as the
goal target. When Journey Builder determines that a contact met the goal, that contact is counted in goal target statistics. Reaching the
goal can also prompt the contact to exit, if applicable.
Goals are optional, but goal target statistics show you how each journey performs. You can set a target for the total number of people
or as a percentage of people reaching the marketing objective. When the option is selected for contacts to exit upon meeting the goal,
Journey Builder evaluates each contact against the goal target at the end of each wait activity. If Exit Option isn’t selected, the goal isn’t
evaluated while the contact is in the wait. The contact doesn’t exit the wait queue early, and they aren’t ejected from the journey when
they meet the goal. Contacts are evaluated every 24 hours.

Note: This feature isn’t supported for Single Send journeys.

Goals as Exit Criteria


Goals can act as exit criteria, but aren’t required. You can configure a goal to prompt contacts to exit before the end of a journey when
they meet the criteria you set. If Exit Option is selected and the contact met the goal, the contact exits the wait queue early. Then the
contact is evaluated against the goal again. If the contact didn’t meet the goal, the contact continues through the journey. If the contact
met the goal, the contact is ejected from the journey. For example, if you set coupon redemption as a journey’s goal, the customer exits
the journey after they redeem the coupon. They don’t receive subsequent messages in the journey.
You can use exit criteria to remove a contact from a journey before completing the full journey path. Goals and exit criteria can be
configured using data attributes, and each can remove a contact. Exit criteria simply removes the contact. If a contact exits using the
goal functionality, the contact is tracked and measured against goal performance.

Set a Goal in Journey Builder


Follow these steps to define a journey's goal in Journey Builder. Goal attainment is measured by whether a contact meets the goal
criteria you set.
Exit Criteria
Create a simple or complex contact filter in Journey Builder to remove contacts from a journey.
Define Exit Criteria
Set exit criteria in Journey Builder to remove Marketing Cloud contacts that the journey is no longer relevant to.

Set a Goal in Journey Builder


Follow these steps to define a journey's goal in Journey Builder. Goal attainment is measured by whether a contact meets the goal criteria
you set.
1.
Click .
2. To set goal criteria, create a filter. Set a complex filter if desired, but only one goal can be created per journey.
3. Set a goal target by entering a number, then electing whether the goal target is measured as a percentage or a total.

284
Marketing Cloud Journeys and Automations Goals in Journey Builder

4. Select Exit Option if each contact that reaches the goal leaves the journey.

SEE ALSO:
Goals in Journey Builder

Exit Criteria
Create a simple or complex contact filter in Journey Builder to remove contacts from a journey.
Exit criteria can remove customers who no longer fit the journey's purpose or for whom the journey's content is no longer relevant. The
goal is your journey’s destination. Marketers use goals to define the journey's purpose and measure how many customers meet the
milestone. Marketers use exit criteria to remove customers who don't fit the journey’s purpose anymore. In this way, using goals with
exit criteria makes all statistics more meaningful. Use goals to track achievement metrics rather than to remove contacts from a journey,
and use exit criteria to remove contacts.

Exit Scenarios
Here are three ways you can configure a welcome series with three messages and a call to action to encourage customers to download
your mobile app.
• Set a Goal that removes a contact after they download the mobile app regardless of where they are in the journey. These contacts
are counted as achieving the goal.
• Contacts can receive all the messages and complete the journey but never download the mobile app. They would exit the journey
in the time allotted with the Exit activity on the journey canvas and wouldn’t be counted as achieving the goal.
• Exit Criteria could use subscription data to remove a contact from the journey when they unsubscribe from your email marketing
program.
For an abandoned cart campaign with a single email and 72-hour wait after the message, you could configure exits in this way.
• The goal would track if customers bought an item out of their cart and exit them from the journey.
• If customers don’t buy an item within the 72-hour window, they exit the journey and aren’t counted as part of goal achievement.
• Exit criteria could be used to exit customers from the journey when they remove the items from their cart.

Considerations
• Contacts that are removed via exit criteria are logged, and the count of contacts removed from the current version is visible. All
contacts removed from a journey are visible in the Health Stats panel on a running journey.
• Exit criteria can be defined differently for each version of a journey.
• Journey Builder evaluates exit criteria for each contact in the journey when their time in each wait activity expires.
• If you have both Goals and Exit Criteria configured, Goals are processed before Exit Criteria.

Define Exit Criteria


Set exit criteria in Journey Builder to remove Marketing Cloud contacts that the journey is no longer relevant to.
1.
Click .
2. Name and, if necessary, describe the exit criteria.
3. To define which contacts exit the journey, apply a filter on contact data attributes.

285
Marketing Cloud Journeys and Automations Activities Reference

Tip: Use fewer than 20 filter criteria for optimal journey performance.

4. To view your filter criteria in a text string form for simple validation, click Filter Text.
5. Finish and save the exit criteria.
a. To remove currently defined exit criteria, click Remove this Exit Criteria when the journey is in Draft mode.

6. Activate your journey.

Note: Contacts are removed based on the first filter criteria matched, even if they meet multiple filters.

When a contact meets any of the exit filter criteria upon leaving a wait activity, the contact is removed from the journey.

Activities Reference
Learn what each Journey Builder activity does.

Messages

Activity Name Description


Email Sends any email created in Email Studio or Journey Builder to
contacts that reach this activity

SMS Sends SMS messages configured in MobileConnect to contacts


that reach this activity

Push Notification Sends push notifications to contacts that reach this activity

Inbox Sends a message to the app inbox of contacts that reach this
activity

Sends a full-page, modal, or banner message to contacts that reach


this activity

LINE Carousel Message Sends a LINE carousel or multi-content message to contacts that
reach this activity

Advertising

Activity Name Description


Advertising Audiences Creates an Advertising Audience from available social networks

Advertising Campaign Creates an Advertising Audience and a simple Facebook advertising


campaign

286
Marketing Cloud Journeys and Automations Activities Reference

Flow Control

Activity Name Description


Decision Split Divides contacts based on a change in data associated with a
contact. When you add a Decision Split activity, the journey
evaluates contact data to decide path to send each contact on

Random Split Divides the group of contacts in the journey into random groups
in a configurable number of branches

Engagement Split Divides contacts based on a customer behavior. You configure the
customer action that Journey Builder evaluates to determine which
path to send contacts down

Join Directs contacts from one branch into another branch. Marketers
split contacts into two or more branches; then reunite the contacts
on the same branch so they flow toward the same endpoint

Wait By Duration Keeps contacts from reaching the next activity for the time period
set by a marketer.

Wait By Attribute Keeps contacts from reaching the next activity until the day and
time stored in a date-based attribute for that contact.

Wait Until Date Keeps contacts from reaching the next activity until the specified
end day and time.

Custom Split Enables marketers and their organizations to customize a split


activity to meet company-specific needs

Customer Updates

Activity Name Description


Update Contact Automatically updates a contact’s data in a data extension.
Marketers select a data extension where the activity updates data
and choose the Attribute or Value that the activity is to update.
Updating an Attribute or Value overwrites a value in an existing
row. The existing value does not increase incrementally and new
rows are not added.

Note: If no rows for the associated Contact Key exist, they


system adds a new row. If there are one or more existing
rows for the associated Contact Key, the system updates
existing rows and does not add new rows.

287
Marketing Cloud Journeys and Automations Activities Reference

Sales & Service Cloud

Activity Name Description


Object Activity Creates or updates a Sales or Service Cloud record in an object
when a contact in the journey reaches it. Use this activity when a
journey creates or updates a custom object

Contact Creates or updates a contact in the Sales and Service Cloud for
each Marketing Cloud contact that reaches this activity

Opportunity Creates an opportunity record in Sales and Service Cloud. Marketing


Cloud contact attributes can be used to populate fields on the
opportunity record

Convert Lead Converts qualified leads from Sales and Service Cloud

Task Creates or updates a task in Sales and Service Cloud for each
Marketing Cloud contact that reaches this activity

Update Campaign Member Updates a Campaign record in Sales and Service Cloud

Add Member to Campaign Looks up Campaigns in Sales and Service Cloud and adds Marketing
Cloud contacts to them

Account Creates or updates an account in Sales and Service Cloud for each
contact that reaches this activity

Choose Object Creates or updates any type of object record in Sales and Service
Cloud. Select the object to update; then select the fields to update
with Marketing Cloud attribute data

Lead Creates or updates a lead record in Sales and Service Cloud for
each contact that reaches the activity

Case Creates a case and associates it to Sales and Service Cloud contact
that matches the Marketing Cloud contact's ID

Custom

Activity Name Description


{Custom} An activity fully configured by the marketer

SEE ALSO:
MobileConnect and Journey Builder
MobilePush and Journey Builder
Create Custom Activities
Configure the Journey Builder Activity in Interaction Studio (Legacy)

288
Marketing Cloud Journeys and Automations Activity IDs in Journey Builder

Activity IDs in Journey Builder


Find any activity’s unique identifier in a draft, running, paused, or stopped journey after the journey is saved. This feature helps customers
and Support agents locate the issue when troubleshooting an activity.
You can also use the ActivityID in SQL query activities using the Journey Activity Data View.

Note: ActivityIDs can change when you create a journey version.

1. Open the journey canvas then press Shift + Alt and click the activity.
2. Click Copy.

SEE ALSO:
Data View: Journey Activity

Message Activities
Messaging activities include email, SMS, LINE message, push notification, inbox message, in-app message, or any other form of content
sent to contacts. To provide a mix of information about your brand or your product, vary the message content. Create message content
before you build a journey.
You can use any data stored in Marketing Cloud, including journey data, for personalization strings. Make sure that the attribute names
used in personalization strings and dynamic content match the attribute names in the data extension exactly. Define a default value for
every attribute so that the personalization string is never blank. If you insert a personalization string and the subscriber attribute isn't
populated, the string is blank in the email. For example, set the First Name field default to Customer so that Dear Customer appears in
the message if that field is blank in the data extension.

Tip: Make sure to map attributes for personalization or dynamic content to the appropriate data source. If you use journey data
and contact data, the values in the journey data are static, while contact data can change.

Email Activity in Journey Builder


The Journey Builder email activity uses the power of Email Studio to send to Marketing Cloud contacts in a journey. Configure and
review statistics without leaving Journey Builder.
Mobile Activities in Journey Builder
Journey Builder includes the SMS, LINE Message, Push Notification, In-App Message, and Inbox activities for sending to mobile
devices from a journey. Add MobilePush inbox messages without leaving the journey. Configure SMS, LINE Message, In-App Message,
and Push Notification Journey Builder activities to use messages created in Mobile Studio and Content Builder.

Email Activity in Journey Builder


The Journey Builder email activity uses the power of Email Studio to send to Marketing Cloud contacts in a journey. Configure and review
statistics without leaving Journey Builder.

Considerations
• Each journey version has its own triggered send for each email activity. A new triggered send is created when a new journey version
is activated.
• Triggered send validation compares the email's personalization strings to event data from the journey entry source. Entry source
event data contains the field names and corresponding data types in the journey's entry source data extension.

289
Marketing Cloud Journeys and Automations Message Activities

• Update email properties, such as Send Classifications or Publication Lists, by editing the email activity.
• Update images, content, and other Email Studio-related components by pausing, publishing changes, and restarting the triggered
send.
– Dynamic subject rules
– Send classifications
– Sender profiles
– Delivery profiles
Journey Builder email activities that use the email do not automatically receive these updates. Implement changes to emails by
updating each email activity while in draft mode, then reactivating the journey. Alternately, update the send on the classic Journey
Builder Sends page.
• When validation errors occur, make sure the email's personalization strings are calling data values included in the entry source data
extension. If the email personalization includes a field that is not in the entry source data extension, email validation can fail.
• Emails using AMPScript can use the Data Extension Lookup() function to interact with data extensions in your account.
• Emails using AMPscript for personalization are not required to call data values found in the event source data extension.

Configure the Email Activity


Use an email activity to power Journey Builder email sends to Marketing Cloud contacts in a journey.
Managing Contacts in a Journey Builder Email Activity
To manage contacts in a Journey Builder email activity, use Marketing Cloud’s advanced sending options.
Update an Email Activity in a Journey
Follow these steps to edit an email in a running journey.
Things to Know About Journey Builder Triggered Send
When you create a Journey Builder email, a triggered send is created automatically. Activating the journey creates the triggered
send definition that the journey’s email activity uses.
Marketing Cloud Journey Email Activity Tracking
Find tracking information for each Marketing Cloud journey email on your running journey’s canvas. More Journey Builder email
tracking is available in Email Studio.
View Email Activity Statistics
In Marketing Cloud, see the results of each email activity send on the Journey Builder canvas.
View Google Analytics 360 Email Activity Metrics
Email activity-level metrics measure the impact of your journey email message activities on your customers’ behavior. You can track
each email activity’s performance in your journeys against the Analytics 360 goals you define. Revenue and transaction tracking is
included, too.

SEE ALSO:
Send Classifications for Marketing Cloud Email
Send Logging in Email Studio
Triggered Emails in Email Studio
Marketing Cloud Connect

290
Marketing Cloud Journeys and Automations Message Activities

Configure the Email Activity


Use an email activity to power Journey Builder email sends to Marketing Cloud contacts in a journey.
1. Drag the Email activity onto the canvas.
2. Click the activity.
3. Enter a name and description.

Note: The email’s name becomes the title of the activity unless you provide a custom title. If you don’t provide a description,
the system-generated description is provided.

4. Click Select Message.

Tip: For details on creating an email, see Create a Content Builder Email.

5. Click Message Configuration and complete the configurations.


• Saved Send Classification: Sets a send classification to use for this activity.
• Sender Profile: Determines whether the send uses a different sender profile than indicated in the send classification.
• Delivery Profile: Determines whether the send uses a different delivery profile than indicated in the send classification.
• Subject Line: Subject line of the email message sent by this activity. To send a dynamic subject email, select the Insert Dynamic
Content icon next to the subject line. To add personalization to the subject line, select the Insert Personalization icon.

Important: When you edit the subject line, you must save the draft again to apply the change to this send.

• Preheader: Text displayed after the subject line when you preview an email. To send a dynamic subject email, select the Insert
Dynamic Content icon next to the subject line.

Important: When you edit the preheader, you must save the draft again to apply the change to this send.

6. Click Delivery Options, and complete the options.


• Publication List: Adds subscribers to the send. The email activity checks this list for each contact to determine whether to send
the email.
• Suppression List: Select a list of subscribers to suppression from the send. By selecting a suppression list that you want the system
excludes any email addresses on the list from the send.

Note: Contacts often don’t proceed in the journey when they’re excluded from a send. Journey Builder excludes contacts
from a send due to factors such as domain exclusion, List Detective, presence on a suppression list, or opt-out list exclusion.

• Domain Exclusions: Select a data extension that contains a list of email domains to exclude from the send. By selecting your
domain exclusion list, the system excludes any email addresses that use that domain.
• Exclusion Script: To exclude subscribers from the send, enter AMPscript logic. Use the exclusion AMPscript function.
• Send Throttling: To set a maximum quantity of emails that can be sent each hour, select and set a delivery window and an hourly
threshold. This setting requires both values to perform correctly when the journey is activated.

Note: Contacts that remain in the queue longer 72 hours exceed the Triggered Send Expiration Policy and don’t receive
the message.

• Track Clicks: Determines whether the system collects tracking information on the links in an email.
• Suppress From Send Report—Determines whether sends with this activity are included in reports. If selected, sends from this
journey are excluded from reports.

291
Marketing Cloud Journeys and Automations Message Activities

• Retain Send Log Data: Determines if send data is saved to the SendLog data extension.
• Send Tracking Results to Sales Cloud: Automatically send tracking results to the Sales Cloud. Accounts that use Marketing Cloud
Connect see this option. To send tracking data to Sales Cloud, the contact ID must be related to All Subscribers on Subscriber
Key in the event source data extension. The Contact ID must be the 18-digit Contact ID value created by Sales Cloud and Service
Cloud. The 15-digit version isn’t supported.

Note: This condition is automatically met when using the Salesforce Data Event to admit contacts. Send Tracking Results
to Sales Cloud isn’t available for Transactional Send journeys.

• Campaign Association: Associate a message with a campaign.


a. Click Add....
b. Select a campaign.
c. Click Save & Continue.

7. Complete the advanced options section.

Note: To enable any of these features, contact your Marketing Cloud account executive for more information.

• Triggered Send Name: When you create a Journey Builder email, a triggered send is created. Activating the journey creates the
triggered send definition that the journey’s email activity uses. Triggered Send Name is a system-generated value and can’t be
modified.
• Message Priority: Enables your account to choose the priority of triggered sends. For information about configuring your account
to observe priority, see the Triggered Emails Guide.
• Add a Keyword: A piece of text metadata that is passed through with the email for use in Analytics and tracking.
• Multipart MIME: Determines whether the system sends the message using multi-part MIME. Multi-part MIME provides an HTML
version of the message content to inboxes that can display it and a text-only version to inboxes that can’t render HTML.
• Disable API calls after error threshold reached: An error threshold is a configurable limit that stops a send job when a designated
number of errors occur. This option helps prevent a single error from stopping the entire job. For more information, contact your
Marketing Cloud account executive.
• CC: Sends a copy of the email to the addresses entered in this field. Email addresses in this field are visible to all recipients of the
email.
• BCC: Sends a copy of the email to the addresses entered in this field. Email addresses in this field aren’t visible to recipients of
the email.

8. Click Summary, and complete configuration.


Configure and validate each activity on the canvas before journey activation.

SEE ALSO:
Managing Contacts in a Journey Builder Email Activity

Managing Contacts in a Journey Builder Email Activity


To manage contacts in a Journey Builder email activity, use Marketing Cloud’s advanced sending options.
Publication lists allow email contacts to opt into and out of a single communication, without opting out of all communications at once.
Before sending an email, Journey Builder checks publication lists associated with the email to see if a contact is subscribed. If subscribed,
Journey Builder sends the message to that contact. If the contact is unsubscribed or received emails that bounced too many times,
Journey Builder doesn’t send the email.

292
Marketing Cloud Journeys and Automations Message Activities

Note: Publication list is a required field. If no publication list is selected, the email activity uses the All Subscribers list. When the
message’s CAN-SPAM classification is transactional, Journey Builder sends an email regardless of subscription status.
Domain exclusions exclude a single domain’s email addresses from a Journey Builder send. For example, use domain exclusions when
a list Journey Builder sends to include employee email addresses from a competitor’s company. By adding the domain in this field, all
email addresses with this domain are excluded from the send, ensuring competitors don’t receive the email.

Note: If your account has subscriber key enabled, the system excludes recipients using the subscriber key value. If your account
doesn’t have subscriber key enabled, the system excludes recipients using email address.

Update an Email Activity in a Journey


Follow these steps to edit an email in a running journey.

Note: To update AMPscript in an email that is part of a running journey, pause and republish its associated triggered send.

1. Open the journey canvas.


2. Click Pause.
3. Click the email activity.
4. Select Activity Summary from the Email Analytics dropdown menu.
5. Select Edit Message from the Preview & Test dropdown menu.
You can click Edit in the corresponding sections to change message configuration, delivery options, or advanced options.

Important: When you edit the subject line, you must save the draft again to apply the change to this send.

6. Make your changes, and click Save and Exit from the Save dropdown menu.
If you edit the message configuration, delivery options, or advanced options, click Summary when you’re done.

7. Click Done.
8. Click Resume.

SEE ALSO:
Things to Know About Journey Builder Triggered Send

Things to Know About Journey Builder Triggered Send


When you create a Journey Builder email, a triggered send is created automatically. Activating the journey creates the triggered send
definition that the journey’s email activity uses.
When you create a journey version, the previous triggered send continues to run. Activating a new version defines a new triggered send.
Also, you can stop the triggered send that is associated to a Journey Builder email activity. You can modify the email’s content, then
restart the triggered send to re-enable sending within the journey. The triggered send name is a system-generated value and cannot
be modified. If an external key is not provided at the time of creation, the system adds a key.

SEE ALSO:
Update an Email Activity in a Journey

293
Marketing Cloud Journeys and Automations Message Activities

Marketing Cloud Journey Email Activity Tracking


Find tracking information for each Marketing Cloud journey email on your running journey’s canvas. More Journey Builder email tracking
is available in Email Studio.

Note: Users with standard Marketing Cloud roles can access expanded email activity metrics by default. Users with custom roles
or permission granted at the user level sometimes don’t have access. To gain access, enable the View permission for Reporting in
the Analytics application for your account. Contact your Marketing Cloud administrator for more information. Tell me more
In a Sent, Running, or Stopped journey, access an email message's performance metrics by clicking the email activity in the journey. To
access the Email Performance tile, click View Details.
Click the Contacts tab to review contact-level data for the send, including opens, clicks, bounces, and unsubscribes. Identify individual
contacts by their Contact Key value.

SEE ALSO:
Tracking in Email Studio
Clicks and Opens Behavior
Tracking in Email Studio
Single Send Journeys
Multi-Step Journeys

View Email Activity Statistics


In Marketing Cloud, see the results of each email activity send on the Journey Builder canvas.

Note: Users with standard Marketing Cloud roles can access expanded email activity metrics by default. Users with custom roles
or permissions may not have access. To gain access, enable the View permission for Reporting in the Analytics application for your
account. Contact your Marketing Cloud administrator for more information. Tell me more
1. Click an email activity in a running or stopped journey.

294
Marketing Cloud Journeys and Automations Message Activities

The Send Email Analytics pane displays the Email Performance tile. Detailed email performance analytics appear, including a
configurable date range.
2. For a breakdown of email activity statistics, click View Details.

SEE ALSO:
Tracking in Email Studio

View Google Analytics 360 Email Activity Metrics


Email activity-level metrics measure the impact of your journey email message activities on your customers’ behavior. You can track
each email activity’s performance in your journeys against the Analytics 360 goals you define. Revenue and transaction tracking is
included, too.
1. In Journey Builder, open an active journey, and click an email activity.
The Email Analytics drawer opens.

2. To access more analytics, click View Details.

Mobile Activities in Journey Builder


Journey Builder includes the SMS, LINE Message, Push Notification, In-App Message, and Inbox activities for sending to mobile devices
from a journey. Add MobilePush inbox messages without leaving the journey. Configure SMS, LINE Message, In-App Message, and Push
Notification Journey Builder activities to use messages created in Mobile Studio and Content Builder.

295
Marketing Cloud Journeys and Automations Message Activities

Create the Carousel LINE Activity in Journey Builder


Use a carousel message in a LINE Message activity to power Marketing Cloud Journey Builder sends to Marketing Cloud contacts in
a journey. A carousel message is a LINE message that can include 10 different messages within one carousel. To create LINE messages,
your account must have LINE channels enabled. To learn more about how to get LINE access and channels, contact your Marketing
Cloud account representative.
Configure an Existing Content Builder Carousel Message in Journey Builder
Use a carousel message in a LINE Message activity to power Marketing Cloud Journey Builder sends to Marketing Cloud contacts in
a journey. A carousel message is a LINE message that can include 10 different messages within one carousel. To create LINE messages,
your account must have LINE channels enabled. To learn more about how to get LINE access and channels, contact your Marketing
Cloud account representative. You can add carousel messages you created in Content Builder to a Journey Builder LINE activity.
Create the In-App Message Activity in Journey Builder
Use the in-app message activity to power Journey Builder sends to Marketing Cloud contacts in a journey. An in-app message is a
full-page, modal, or banner message that’s sent to users of your mobile app. The message appears when the user opens the app.
Use in-app messages to announce offers, invite users to take a survey, or encourage them to turn on push notifications or location
settings for your app.
Configure an Existing Content Builder In-App Message in Journey Builder
Use the in-app message activity to power Journey Builder sends to Marketing Cloud contacts in a journey. An in-app message is a
full-page, modal, or banner message that is sent to users of your mobile app. The message displays when the user opens the app.
You can use in-app messages to announce an offer for a new product or content within your app, invite the user to take a survey,
or gently encourage the user to turn on push notifications or location settings for your app. You can add in-app messages you
created in Content Builder to a Journey Builder Push activity.
Configure the Inbox Activity in Journey Builder
Use the inbox activity to power Journey Builder MobilePush Inbox message sends to Marketing Cloud contacts in a journey.
Create the Multi-Content Message LINE Activity in Journey Builder
Use a multi-content message in a LINE Message activity to power Marketing Cloud Journey Builder sends to Marketing Cloud contacts
in a journey. A multi-content message can include a single video, image, audio, or text message or up to five of these elements in
one message.
Configure an Existing Content Builder Multi-Content Message in Journey Builder
Use a multi-content message in a LINE Message activity to power Marketing Cloud Journey Builder sends to Marketing Cloud contacts
in a journey. A multi-content message can include a single video, image, audio, or text message or up to five of these elements in
one message. You can add multi-content messages you created in Content Builder to a Journey Builder LINE activity.
Create the Push Notification Activity in Journey Builder
Use the push notification activity to power Marketing Cloud Journey Builder push notification sends to Marketing Cloud contacts in
a journey.
Configure an Existing Content Builder Push Notification in Journey Builder
Use the push notification activity to power Marketing Cloud Journey Builder push notification sends to Marketing Cloud contacts in
a journey. You can add push notifications you created in Content Builder to a Journey Builder Push activity.
Create the SMS Activity in Journey Builder
Use the SMS activity to power Marketing Cloud Journey Builder SMS sends to Marketing Cloud contacts in a journey.
Configure an Existing Content Builder SMS in Journey Builder
Use the SMS activity to power Marketing Cloud Journey Builder SMS sends to Marketing Cloud contacts in a journey. You can add
SMS messages you created in Content Builder to a Journey Builder SMS activity.

296
Marketing Cloud Journeys and Automations Message Activities

Marketing Cloud WhatsApp Chat Messaging


Use Marketing Cloud WhatsApp Chat Messaging to expand your omnichannel engagement. Use Contact Builder to manage your
audience. Use Content Builder for content generation, preview, and personalization. Use Journey Builder to send your customers
messages as part of a customer journey.
View SMS Analytics in Journey Builder
SMS activity-level metrics measure the impact of Journey Builder SMS message activities on your customers’ behavior. You can track
each SMS activity’s performance in your journeys against the Analytics 360 goals you define. SMS activity-level metrics aggregate
usage data for all versions of a journey.
View Google Analytics 360 SMS Activity Metrics
SMS activity-level metrics measure the impact of your journey SMS message activities on your customers’ behavior. You can track
each SMS activity’s performance in your journeys against the Analytics 360 goals you define.
Mobile Activity Tracking
Find tracking information for each mobile message activity on your running journey’s canvas. Click a mobile message activity to
access statistics. Select a timeframe for your analytics from the date field. Access more Journey Builder mobile message tracking in
Mobile Studio.

Create the Carousel LINE Activity in Journey Builder


Use a carousel message in a LINE Message activity to power Marketing Cloud Journey Builder sends to Marketing Cloud contacts in a
journey. A carousel message is a LINE message that can include 10 different messages within one carousel. To create LINE messages,
your account must have LINE channels enabled. To learn more about how to get LINE access and channels, contact your Marketing
Cloud account representative.

Important: To create journeys with LINE, select a data extension that has a contact key as the primary key and relate the contact
key to the subscriber key. Ensure that selected contact key has a LINE address ID associated with it. To add Email or SMS activities
to your journey, check that your data extension has email and mobile attributes. Journeys with LINE plus Push or Inbox activities
are not supported.
1. In Journey Builder, drag the LINE Message activity to the canvas.
2. Click the LINE Message activity, and add a name and description.
3. Click New Message.
4. Click the Carousel template and click Select.

Important: You can add up to 10 messages within one carousel, but all messages in a carousel must have the same number
of images, buttons, and fields.

5. To add an image, click Browse or add a URL.

Note: Use a JPEG or PNG image with a maximum 1024-px width. The image URL maximum is 1,000 characters.

6. Add a title to your message. The maximum character count for the title is 40.
7. Enter your message. The maximum character count for messages is 60 characters.

Note: AMPscript can be used in all message fields and does not count toward the character limit.

Note: If the height limitation is exceeded, the lower part of the text display area gets cut off. For this reason, depending on
the character width, the message text may not be fully displayed even when it is within the character limits.

297
Marketing Cloud Journeys and Automations Message Activities

8. Add buttons to your message. Buttons can take users to a specified URL. Each message must have one button and can have a
maximum of three buttons.
a. Add labels for each button. Button label maximum is 20 characters.
b. Add a behavior for each button.
c. In the Button Action field, add the URL you want the button to take users to when they click. The Button Action URL maximum
is 1,000 characters.

9. To select your background color for each message, click the Design tab and choose your color from the dropdown. You can also
enter a hex code.
10. Click the Message Configuration tab.
11. Select the LINE channel you want to use from the dropdown.
12. Click Save Message and Return.
13. Click Summary.
14. For a subscriber-level preview of your message, click Subscriber Preview.
15. Repeat these steps for each message in your carousel. Click + if you want to add more than 3 messages.
16. Click Save Message and Return.

SEE ALSO:
Preview Mobile Subscriber Details
Create LINE Carousel Messages in Content Builder

Configure an Existing Content Builder Carousel Message in Journey Builder


Use a carousel message in a LINE Message activity to power Marketing Cloud Journey Builder sends to Marketing Cloud contacts in a
journey. A carousel message is a LINE message that can include 10 different messages within one carousel. To create LINE messages,
your account must have LINE channels enabled. To learn more about how to get LINE access and channels, contact your Marketing
Cloud account representative. You can add carousel messages you created in Content Builder to a Journey Builder LINE activity.

Important: To create journeys with LINE, select a data extension that has a contact key as the primary key and relate the contact
key to the subscriber key. Ensure that selected contact key has a LINE address ID associated with it. To add Email or SMS activities
to your journey, check that your data extension has email and mobile attributes. Journeys with LINE plus Push or Inbox activities
are not supported.
1. In Journey Builder, drag the LINE Message activity to the canvas.
2. Click the LINE Message activity, and add a name and description.
3. To access an existing message, click Select Message, and select your message from Content Builder Messages.
4. Click Summary.
5. Next to Message Configuration, click Edit.
6. Select your LINE channel from the dropdown.
7. Click Save Message and Return.
8. Click Summary.
9. To view a detailed version of your message, click Detail View.
10. To get a subscriber-level preview for your message, click Subscriber Preview.

298
Marketing Cloud Journeys and Automations Message Activities

11. Click Done.

Create the In-App Message Activity in Journey Builder


Use the in-app message activity to power Journey Builder sends to Marketing Cloud contacts in a journey. An in-app message is a
full-page, modal, or banner message that’s sent to users of your mobile app. The message appears when the user opens the app. Use
in-app messages to announce offers, invite users to take a survey, or encourage them to turn on push notifications or location settings
for your app.

Note: By default, only one in-app message is shown per app session. You can update this setting in MobilePush Administration.
To see another in-app message, the user has to background or close the app.
1. In Journey Builder, drag the In-App Message activity to the canvas.
2. Click the In-App Message activity, and add a name and description.

Note: If applicable, name your activity. Otherwise, your content name serves as your activity name and is visible in all reports.

3. Click New Message.


4. Follow the directions to configure your in-app message.
5. Next to Message Configuration, click Edit.
6. Select the app that you want to send to.
7. Select the Active Message Timeframe.
• To send the message whenever the contact reaches the activity, select Always Active.
• To send the message only when the contact reaches the activity during a specified timeframe, select Custom Timeframe. Then
select the start and end dates, times, and time zone.
• To send and display the message when the user reaches the activity, select Dynamic Timeframe. Then define how long to wait
before a message appears.

8. To configure the criteria to display your message, click Display Trigger.


9. To set the priority and message delay for the message, click Delivery Options.
10. To preview your message, click Summary. Use the device and view dropdowns to see how your message renders.
11. Click Summary.
12. For a subscriber-level preview for your message, click Subscriber Preview.
13. Click Done.

SEE ALSO:
iOS SDK for In-App Messaging
Android SDK for In-App Messaging
Configure an Existing Content Builder In-App Message in Journey Builder

299
Marketing Cloud Journeys and Automations Message Activities

Configure an Existing Content Builder In-App Message in Journey Builder


Use the in-app message activity to power Journey Builder sends to Marketing Cloud contacts in a journey. An in-app message is a
full-page, modal, or banner message that is sent to users of your mobile app. The message displays when the user opens the app. You
can use in-app messages to announce an offer for a new product or content within your app, invite the user to take a survey, or gently
encourage the user to turn on push notifications or location settings for your app. You can add in-app messages you created in Content
Builder to a Journey Builder Push activity.
1. In Journey Builder, drag the In-App Message activity to the canvas.
2. Click the In-App Message activity, and add a name and description.

Note: If applicable, name your activity. Otherwise, your content name serves as your activity name and is visible in all reports.

3. Click New Message.


4. Follow the directions to configure your in-app message.
5. Next to Message Configuration, click Edit.
6. Select the app that you want to send to.
7. Select the Active Message Timeframe.
• To send the message whenever the contact reaches the activity, select Always Active.
• To send the message only when the contact reaches the activity during a specified timeframe, select Custom Timeframe. Then
select the start and end dates, times, and time zone.
• To send and display the message when the user reaches the activity, select Dynamic Timeframe. Then define how long to wait
before a message appears.

8. To configure the criteria to display your message, click Display Trigger.


9. To set the priority and message delay for the message, click Delivery Options.
10. To preview your message, click Summary. Use the device and view dropdowns to see how your message renders.
11. Click Summary.
12. For a subscriber-level preview for your message, click Subscriber Preview.
13. Click Done.

Configure the Inbox Activity in Journey Builder


Use the inbox activity to power Journey Builder MobilePush Inbox message sends to Marketing Cloud contacts in a journey.

Note: When you use a data extension as an entry source in Journey Builder, you can add personalization strings in the subject
line or CloudPage.

Warning: If you copy an existing Inbox message, be sure to update the End Date to reflect your desired message parameters.

1. Create your inbox message in MobilePush.


2. Navigate to Journey Builder.
3. Drag the Inbox activity onto the canvas.
4. Click the Inbox activity.
5. Select your inbox message from the list.
6. Click Done.

300
Marketing Cloud Journeys and Automations Message Activities

Create the Multi-Content Message LINE Activity in Journey Builder


Use a multi-content message in a LINE Message activity to power Marketing Cloud Journey Builder sends to Marketing Cloud contacts
in a journey. A multi-content message can include a single video, image, audio, or text message or up to five of these elements in one
message.

Important: To create journeys with LINE, select a data extension that has a contact key as the primary key and relate the contact
key to the subscriber key. Ensure that selected contact key has a LINE address ID associated with it. To add Email or SMS activities
to your journey, check that your data extension has email and mobile attributes. Journeys with LINE plus Push or Inbox activities
are not supported.

Note: To create LINE messages, your account must have LINE channels enabled. To learn more about how to get LINE access and
channels, contact your Marketing Cloud account representative.
1. In Journey Builder, drag the LINE Message activity to the canvas.
2. Click the LINE Message activity, and add a name and description.
3. Click New Message.
4. Click the Multi-Content Message template and click Select.
5. Click Add Content and choose the element you want to add. You can add up to 5 elements to your message.

Note: If you use AMPscript in media URL fields, verify in Subscriber Preview that it renders a URL.

• To add a text message, click Text and insert your message.

Note: The maximum character count for messages is 2,000 characters.

• To add an image, click Browse or add a URL and enter alt text for your image.

Note: Use a JPEG image with a maximum 1024-px width. The image URL maximum is 1,000 characters.

• To add a video, click Browse or add a URL. Do the same for the Preview field.

Note: A wide or tall video may be cropped when played in some environments. It is a best practice to keep your video
files under 1 minute or 10 megabytes and to use a URL if the file is over 3 megabytes.

• To add an audio file, click Browse or add a URL, and enter the required duration of your audio file.

Note: It is a best practice to keep your audio files under 1 minute or 10 megabytes and to use a URL if the file is over 3
megabytes.

• To add an Imagemap, select a layout and add a URL and behavior for each section of your layout.

Note: Image must be 1040 x 1040 px.

• To add a Sticker, select from sticker packages in the top row, and then select the individual sticker.

6. When you are done entering the elements of your message, click Save Message.
7. Click the Message Configuration tab.
8. Select the LINE channel you want to use from the dropdown.
9. Click Summary.
10. For a subscriber-level preview for your message, click Subscriber Preview.
11. Click Summary.

301
Marketing Cloud Journeys and Automations Message Activities

12. Click Done.

SEE ALSO:
Preview Mobile Subscriber Details

Configure an Existing Content Builder Multi-Content Message in Journey Builder


Use a multi-content message in a LINE Message activity to power Marketing Cloud Journey Builder sends to Marketing Cloud contacts
in a journey. A multi-content message can include a single video, image, audio, or text message or up to five of these elements in one
message. You can add multi-content messages you created in Content Builder to a Journey Builder LINE activity.

Important: To create journeys with LINE, select a data extension that has a contact key as the primary key and relate the contact
key to the subscriber key. Ensure that selected contact key has a LINE address ID associated with it. To add Email or SMS activities
to your journey, check that your data extension has email and mobile attributes. Journeys with LINE plus Push or Inbox activities
are not supported.

Note: To create LINE messages, your account must have LINE channels enabled. To learn more about how to get LINE access and
channels, contact your Marketing Cloud account representative.
1. In Journey Builder, drag the LINE Message activity to the canvas.
2. Click the LINE Message activity, and add a name and description.
3. To access an existing message, click Select Message, and select your message from Content Builder Messages.
4. Click Summary.
5. Next to Message Configuration, click Edit.
6. Select your LINE channel from the dropdown.
7. Click Summary.
8. To view a detailed version of your message, click Detail View.
9. To get a subscriber-level preview for your message, click Subscriber Preview.
10. Click Done.

Create the Push Notification Activity in Journey Builder


Use the push notification activity to power Marketing Cloud Journey Builder push notification sends to Marketing Cloud contacts in a
journey.

Important: If Custom Key functionality is enabled for the MobilePush, navigate to the Advanced Options section to input Custom
Key values.
1. In Journey Builder, drag the Push Notification activity to the canvas.
2. Click the Push Notification activity, and add a name and description.

Note: If applicable, name your activity. Otherwise, your content name serves as your activity name and is visible in all reports.

3. Click New Message.


4. Add a title and subtitle to your message, if applicable. Use the personalization and emoji dropdowns as needed.
5. Choose whether to show or hide the title and subtitle in the message preview.
6. Enter the message.

302
Marketing Cloud Journeys and Automations Message Activities

Note: If you insert personalization strings or AMPscript, the number of bytes used is not available.

7. To personalize the content of your message, click inside the Message field, and select contact attributes from the personalization
dropdown menu.
8. Optionally, add media to your message.
• Insert a URL or AMPscript, or select media from the Content Builder library.

Note: If you use AMPscript in this field, verify in Subscriber Preview that it renders a URL.

• Choose whether to show or hide the media.


• Enter alternate text.
• Select whether to use different media for Android, if applicable.

9. Select an open behavior.


• Open the App: Opens the app when the user taps the message.
• Go to App URL: Insert a URL in the field that goes to a specific page in your app.
• Go to Web URL: Insert a URL in the field that goes to a web page.
• Go to CloudPage: Takes the user to a CloudPage.

10. Preview your message. Use the device and view dropdowns to see how your message renders.
11. Click Save.
12. Next to Message Configuration, click Edit.
13. Select the app you want to use.
14. Click Delivery Options.
• If you enabled Custom Sound for your app, select which sound to play when a push message arrives.
• Select whether to update the number of unread messages displayed on the iOS icon for this app when you send the message.
• To associate this message with a campaign, click Add Campaign Association and select the campaign.

15. Click Summary.


16. For a subscriber-level preview for your message, click Subscriber Preview.
17. Click Done.

SEE ALSO:
Create a Push Notification in Content Builder
Preview Mobile Subscriber Details

Configure an Existing Content Builder Push Notification in Journey Builder


Use the push notification activity to power Marketing Cloud Journey Builder push notification sends to Marketing Cloud contacts in a
journey. You can add push notifications you created in Content Builder to a Journey Builder Push activity.
1. In Journey Builder, drag the Push Notification activity to the canvas.
2. Click the Push Notification activity, and add a name and description.
3. Click Select Message, and select the type of message: Content Builder or MobilePush Messages.

303
Marketing Cloud Journeys and Automations Message Activities

Note: MobilePush Messages are the legacy messages of Journey Builder push notifications that were created in the MobilePush
app. Push notifications are now created in Content Builder and can be selected from the Content Builder tab in the push
notification activity in Journey Builder.

4. Select the message to send.


5. Click Message Configuration.
6. Select the app you want to use.
7. Click Summary.
8. For a subscriber-level preview for your message, click Subscriber Preview.
9. Click Done.

Note: Referencing other Content Builder content in blocks returns table and HTML wrappers instead of text. To reference this
content, use code snippets. See ContentBlockbyID.

Create the SMS Activity in Journey Builder


Use the SMS activity to power Marketing Cloud Journey Builder SMS sends to Marketing Cloud contacts in a journey.

Note: To send SMS from a journey, the normalized phone number (country code + phone number with no dashes or parentheses)
is required in your data extension. Locale field isn’t required to send an SMS from Journey Builder. The field type must be Phone.
1. In Journey Builder, drag the SMS activity to the canvas.
2. Click the SMS activity.
3. Click New Message.
4. Enter the message.
• To find hidden non-GSM characters like unicode straight quotes that can be included when pasting text from another source,
select Highlight Non-GSM.
• To combine messages beyond 160 characters into one, check Concatenate Message.

Note: Message concatenation isn’t available in all markets, including the United States. The concatenate option only
displays when you select a short or long code for a location that allows concatenation. Click here for more information
about message concatenation.

• To shorten a URL, click Shorten URL, paste your URL, and click Apply. If you use Google UTM parameters to track links, UTM
parameters are applied when you shorten a URL.

5. Preview the code type, if applicable.


6. Click Save.
7. If applicable, name your activity. Otherwise, your content name serves as your Activity Name and is visible in all reports.
8. Click Message Configuration.
9. Select the code you’re sending the message from.
10. Select a From Name, if applicable.

Note: A From Name sends the message to a customer’s mobile device as if your business is one of the customer’s contacts.
Recipients can’t directly respond to a message from a From Name.

11. Click Delivery Options.

304
Marketing Cloud Journeys and Automations Message Activities

Note: If a contact doesn’t have a valid mobile number, MobileConnect attempts to deploy the send to the priority one number
stored on a given contact record.

12. To acknowledge that you allow your customers to opt out, read and agree to the Opt-Out Availability Policy.
13. If you choose to subscribe all contacts to a keyword, confirm subscriber opt-in.
If users are already unsubscribed from a keyword, this action doesn’t resubscribe them.

14. Set a send blockout window, if applicable.


15. To associate this message with a campaign, click Add Campaign.

Note: If you don’t set a campaign name in Delivery Options, campaign names aren’t included in tracking.

16. Click Advanced Options to review your Next Keyword, if applicable.


17. Click Summary.
18. For a subscriber-level preview for your message, click Subscriber Preview.
19. Click Done.

Note: If you use Google Analytics 360, the UTM parameters you applied are appended when you activate the journey. Tracking
results include any last-minute changes you make.

SEE ALSO:
Preview Mobile Subscriber Details
Create an SMS Message in Content Builder

Configure an Existing Content Builder SMS in Journey Builder


Use the SMS activity to power Marketing Cloud Journey Builder SMS sends to Marketing Cloud contacts in a journey. You can add SMS
messages you created in Content Builder to a Journey Builder SMS activity.

Note: To send SMS from a journey, the normalized phone number (country code + phone number with no dashes or parentheses)
is required in your data extension. Locale field isn’t required to send an SMS from Journey Builder.
1. In Journey Builder, drag the SMS activity to the canvas.
2. Click the SMS activity, and add a name and description.
3. To access an existing message, click Select Message, and select the type of message: Content Builder or SMS Messages.
4. Select the message to send and click Edit Selected Message.
5. Configure the SMS activity.
6. Click Save Message and Return.
7. For a subscriber-level preview for your message, click Subscriber Preview.
8. Click Done.

Note: Referencing other Content Builder content in blocks returns table and HTML wrappers instead of text. To reference this
content, use code snippets. See ContentBlockbyID.

305
Marketing Cloud Journeys and Automations Message Activities

Marketing Cloud WhatsApp Chat Messaging


Use Marketing Cloud WhatsApp Chat Messaging to expand your omnichannel engagement. Use Contact Builder to manage your
audience. Use Content Builder for content generation, preview, and personalization. Use Journey Builder to send your customers messages
as part of a customer journey.
WhatsApp encourages its customers to work with an official solution provider to use WhatsApp Business API. Marketing Cloud partners
with Sinch, an official WhatsApp partner, to help you with WhatsApp account and channel creation and template message approvals.
Sinch’s Chat Messaging Setup app is integrated into Marketing Cloud AppExchange.
We recommend getting familiar with Sinch’s policies and other requirements.
• WhatsApp Opt-in Policies
• API Capacity and Rate Limits

Prerequisites and Important Information for WhatsApp Users


Customer Opt-In: WhatsApp requires that your brand has explicit opt-in from customers to send template messages. And to be able
to send WhatsApp messages to opted-in users, brands must store and manage their opt-in information.
If customers feel like they didn’t opt in to receive messages, they can block or report a business. User feedback signals like these are
inputs into a business’ quality score. WhatsApp limits businesses when their quality score is low for a sustained period. To flag policy
violations, WhatsApp can also reactively evaluate a business’ opt-in flows, including user feedback.

WhatsApp Message Types and Use Cases


You can send two types of WhatsApp messages: template and session.
Get Started with WhatsApp Chat Messaging
Follow these steps to start chatting with your customers.
Create Your WhatsApp Business Account
To send WhatsApp messages, you need a WhatsApp Business Account. To view the available and in-use stock-keeping units (SKUs)
for your account, check the right side of the AppExchange screen.
Create Your WhatsApp Channels
After your WhatsApp Business account is approved, you see your account in the Onboarded Accounts section. Now, you’re ready
to create your WhatsApp channels.
Create Your WhatsApp Template Messages for Approval
After your channel is approved, you can start creating templates for WhatsApp transactional messages. Template messages must
be approved before you can start sending. You can send session messages while waiting for template message approval.
Create Your WhatsApp Audiences
Build your audience for WhatsApp Chat Messages in Contact Builder.
Personalize Your WhatsApp Template Messages
After your template message is approved, you can personalize your messages using Content Builder.
Send WhatsApp Template Messages in Journey Builder
After you personalize your template messages, use Journey Builder to start sending.
Create Default WhatsApp Session Messages
In WhatsApp Administration, you can create a default Session message to respond to your users. As a best practice, send users
messages with support contact details.

306
Marketing Cloud Journeys and Automations Message Activities

Personalize Your WhatsApp Session Messages


Use Content Builder to create session messages to respond to user-initiated conversations. When a user sends a message to your
WhatsApp channel, you can respond without using a template. Session messages are free-form messages and don’t need approval.
Send WhatsApp Session Messages in Journey Builder
After you personalize your session messages, use Journey Builder to start sending.
WhatsApp Chat Message Analytics
After you activate your journey, you can view your WhatsApp Chat Message performance.
Create a Chat Messaging Data Extract
Use Automation Studio and Contact Builder to create Chat Messaging Data Extracts and learn more about your message metrics.
WhatsApp Status Errors
Review WhatsApp status errors. These status errors are generated by WhatsApp and are subject to change.

WhatsApp Message Types and Use Cases


You can send two types of WhatsApp messages: template and session.

Template Messages
Template messages are transactional. Some examples of template messages include:
• Shipment notifications
• Order confirmations
• Booking or event reminders
• Abandoned cart reminders
• Loyalty program information
• Finance account and balance details
• Reservation and ticket updates
• Transportation updates
Every template message requires WhatsApp approval. The WhatsApp Template message creation and approval flow is managed in Chat
Messaging Setup. Approved templates appear in Marketing Cloud Content Builder.
Examples of approved templates:
• Welcome {{1}}. What company do you work for?
• Your {{1}} appointment is coming up on {{2}}.
• Your {{1}} appointment is coming up on {{2}}. Reply with {{3}} or {{4}}.
• Unfortunately your pending booking didn’t go through. No charges were made to your bank account. You can try to rebook the
hotel again. We sincerely apologize for the inconvenience.
Examples of rejected and improved templates:
• Rejected: Reminder: {{1}}.
• Rejected: {{1}} was added {{1}}, {{2}}!
• Rejected: Ready! Thank you for your purchase of {{1}}. You can find your receipt at {{3}}. Download the App and get a $10
credit {{4}}.
– Revised and approved: Thank you for your purchase of {{1}}. You can find your receipt at {{2}}.

307
Marketing Cloud Journeys and Automations Message Activities

• Rejected: Hi {{1}}! Not sure how to activate your Prepaid Card? It’s quick and easy! Get your new Prepaid Card in your pocket and
start to enjoy all the advantages! Access at {{2}}.
– Revised and approved: Hi {{1}}! Our records show that your new Prepaid Card is delivered. Reply “ACTIVATE” to activate your
card now.

• Rejected: “...trying to touch base with you over text as I couldn't connect with you either by phone or email...”
• Rejected: Thank you for your booking. Now refer your friends and earn credits. Ask your friends to book with code {{1}}.

Note: {{1}}, {{2}} are personalization fields. WhatsApp only checks the remaining content. After the template is approved,
you can edit these fields with personalization strings in Content Builder.

Session Messages
Session messages are responses to user-initiated conversations. When a user sends a message to your WhatsApp channel, you can
respond to them without using a template. Session messages are free-form messages and don’t need approval. Session messages have
many different uses. Brands can auto-reply to users with welcome messages, ask them their preferences to capture personalization
details, navigate them to a product, or send questions about a product.

Get Started with WhatsApp Chat Messaging


Follow these steps to start chatting with your customers.
In Journey Builder, check for a WhatsApp Message activity in the list. If you don’t see this activity, contact your Marketing Cloud Account
Executive.

1. Drag the WhatsApp Message activity onto the canvas.


2. To purchase the SKUs, click the WhatsApp Message activity.
3. Download the package from the Salesforce AppExchange.
4. Log in to the Marketing Cloud account where you want to install this package.

308
Marketing Cloud Journeys and Automations Message Activities

Note: If you’re already logged into your Marketing Cloud account, log out, and then log back in to see the updates.

5. After you authenticate your account, your screen looks like this.

6. Click Install.
7. Agree to the Salesforce Terms & Conditions.
8. In the Access tab, select which user for this package.
9. Log out of your Marketing Cloud account. Then log back in.
10. Ensure that you see Chat Messaging Setup in the App Exchange dropdown.

Next, create your WhatsApp Business Accounts.

Create Your WhatsApp Business Account


To send WhatsApp messages, you need a WhatsApp Business Account. To view the available and in-use stock-keeping units (SKUs) for
your account, check the right side of the AppExchange screen.
1. Click Chat Messaging Setup in the AppExchange dropdown.
2. In the left navigation, click Accounts.

Note: This screen lists your provisioned and pending accounts. This screen is empty the first time you see it.

309
Marketing Cloud Journeys and Automations Message Activities

3. Click New Account.


4. Enter your account name.
5. Enter the legal name of your company.
6. Enter your Facebook Business Manager ID.

Note: Your Facebook Business Manager ID must align with your channel names. For example, if you have a Facebook Business
Manager named NTO Taiwan, you can’t create channels named NTO HK or NTO Singapore. Using a more generic name, such
as NTO, lets you use all types of channel names with that ID.

7. Click Submit.
8. The system sends a verification notification to Facebook Business Manager. To validate your account, click this message in Facebook
Business Settings Requests.
9. Verify your account in Facebook Business Manager. Facebook Business Manager ID is required. If you have a Business Manager
account, locate your ID Business Settings Business Info in the Facebook Business Manager Console.
a. Click Business Settings.
b. Click Security Center.
c. Click Start Verification.

Note: If you haven’t properly validated your account, the Start Verification button is disabled.

Next, create your WhatsApp channels.

Create Your WhatsApp Channels


After your WhatsApp Business account is approved, you see your account in the Onboarded Accounts section. Now, you’re ready to
create your WhatsApp channels.
1. Click Channels in the left navigation.

Note: This screen lists your provisioned and pending accounts. This screen is empty the first time you see it.

2. Click New Channel.


3. Add details for your channel.
a. Name: Maximum of 64 characters

Note: If you want to change your channel name after initial creation, contact [email protected] to request a change.

b. Logo: Maximum of 5 MB, 640x640 pixels PNG or JPG


c. Description: Maximum of 256 characters
d. Phone number associated with your WhatsApp business account

Tip: You can use your own phone number for the channel if it’s not associated with another WhatsApp account. Or, you
can have Sinch supply a phone number. Sinch number provisioning varies by country and is subject to change. See the
table in this topic for details.

e. Address: Maximum of 256 characters


f. About: Maximum of 256 characters
g. Email: Maximum of 128 characters

310
Marketing Cloud Journeys and Automations Message Activities

h. Vertical: Maximum of 128 characters


i. Website: Maximum of two websites, 256 characters each

4. Within 10 minutes, enter the two-factor authentication that you received via text or call.
5. Click Submit Request.
If your country isn’t listed, contact your account executive.

Table 26: Sinch Phone Number Provisioning


Country Sinch Number Provisioning
Australia Yes

Brazil Yes

Canada Yes

Colombia No

France Yes

Hong Kong Yes

India No

Indonesia No

Israel Yes

Italy Yes

Lithuania Yes

Malaysia No

Mexico Yes

Peru Yes

Philippines No

Poland Yes

Portugal Yes

Russia Yes

Singapore Yes

Spain Yes

Sweden Yes

Taiwan No

Thailand Yes

United Kingdom Yes

United States Yes

311
Marketing Cloud Journeys and Automations Message Activities

After your channel is approved, you can start creating template or session messages.

Create Your WhatsApp Template Messages for Approval


After your channel is approved, you can start creating templates for WhatsApp transactional messages. Template messages must be
approved before you can start sending. You can send session messages while waiting for template message approval.

Note: After a template is approved, you can’t edit it. Instead, submit a new template message for approval. You can share an
approved template across WhatsApp channels but not across business units.
1. In the left navigation, click Message Templates.
2. Click New Template.
3. Select a registered account from the dropdown.
4. Name your template.
5. Select a Template Category from the dropdown.
6. Select the language from the dropdown.
7. Complete the Message Content section.
a. Add an optional header.
b. Complete the Message Body section.
c. Add an optional footer.
d. Add optional buttons.

8. Click Submit Request.

Tip: If you include a URL in your template message, ensure that your URL has a valid landing page and belongs to your business.
Templates with invalid URLs are rejected.
You can view the status of your submitted templates in the Message Templates screen, and then create your audience to send your
WhatsApp messages to.

Create Your WhatsApp Audiences


Build your audience for WhatsApp Chat Messages in Contact Builder.
When opting in customers, consider these best practices.
• If you skip importing contacts, your messages don’t send.
• Flag opted-out contacts so that Journey Builder doesn’t send messages to them.
• Use Journey Builder to send emails or SMS messages to ask customers to opt in, and then collect the subscribers in a data extension.
• Customers have to opt in only to your WhatsApp channel and not every template message that you use.
1. In Contact Builder, create a contacts import definition.
2. Create an audience for WhatsApp.
Now that your audience is available for use in Journey Builder, personalize your template and session messages to start sending.

Personalize Your WhatsApp Template Messages


After your template message is approved, you can personalize your messages using Content Builder.
1. In Content Builder, click Create.

312
Marketing Cloud Journeys and Automations Message Activities

2. In the dropdown, select Chat Messaging, and then select WhatsApp Template Message.
3. To see your approved templates, click Browse.
4. Select the language you want to use, and click Next.
5. Select the variables to use in your message.

Note: After approval, you can add only variables to templates. You can’t edit the rest of the message.

a. Complete the header using personalization tags or AMPscript.


b. Complete the message body using personalization tags or AMPscript.

Note: Though templates and headers are approved through WhatsApp, ensure that any personalization or variables don’t
exceed the 60-character limit for headers and the 1,024-character limit for messages. Facebook rejects messages that
exceed limits.

c. Add button text up to 20 characters.

6. Save your changes.


Now your template messages are ready to send in Journey Builder.

Send WhatsApp Template Messages in Journey Builder


After you personalize your template messages, use Journey Builder to start sending.

Note: You can’t use Journey Builder Engagement Splits and Campaigns with WhatsApp messages.

1. Click Create New Journey.


2. Click Build under Multi-Step Journey.
3. Drag your entry source onto the canvas. You can use Data Extension or API Event.
4. To configure your entry source, click it.
5. Click Summary.
6. Click Done.
7. Drag the WhatsApp Message activity onto the canvas.
8. To configure your message, click it.
9. Add an activity name and description.
10. Click Select Message.
11. In the Content Builder Messages screen, select the template message you want to use.
12. Click Summary.
13. Next to Message Configuration, click Edit.
14. Select the App Channel that you want to use from the dropdown.
15. Click Summary.
16. Click Done.
17. Configure the rest of your journey, and click Activate.

313
Marketing Cloud Journeys and Automations Message Activities

Create Default WhatsApp Session Messages


In WhatsApp Administration, you can create a default Session message to respond to your users. As a best practice, send users messages
with support contact details.
1. In the app switcher, hover over your name, and click Setup.
2. Search for WhatsApp.
3. Next to the default message, click Edit.
4. Complete the message body.

Note: Session messages are limited to 4,096 characters, including personalization and emojis. Facebook rejects messages
that exceed these limits.

5. To use an image, upload a JPEG or PNG file that’s 100 MB or less.


6. Save your changes.
When you create a journey with Inbound Chat keywords, the system checks to see if the user message has one of those keywords. If
not, the default message is sent.

Personalize Your WhatsApp Session Messages


Use Content Builder to create session messages to respond to user-initiated conversations. When a user sends a message to your
WhatsApp channel, you can respond without using a template. Session messages are free-form messages and don’t need approval.
1. In Content Builder, click Create.
2. In the dropdown, select Chat Messaging, and then select WhatsApp Session Message.
3. Select the message type from the dropdown.
4. Complete the message body using personalization tags.
A session message can be up to 4,096 characters, including personalization and emoji. Facebook rejects messages that exceed these
limits.

Note: If you’re using an AMPscript string, define it within the personalization fields.

5. To add an image, upload a JPEG or PNG file up to 100 MB.


6. Save your changes.

Send WhatsApp Session Messages in Journey Builder


After you personalize your session messages, use Journey Builder to start sending.

Note: You can’t use Journey Builder Engagement Splits and Campaigns with WhatsApp messages.

1. Click Create New Journey.


2. Click Build under Multi-Step Journey.
3. Drag the Inbound Chat entry source onto the canvas.
4. Configure your Inbound Chat entry source.
a. Click the entry source, and then click Edit next to App Channel.
b. Select the App Channel that you want to use from the dropdown.
c. To configure your Keywords, click Keywords.

314
Marketing Cloud Journeys and Automations Message Activities

5. Click Summary.
6. Click Done.
7. Drag the WhatsApp Message activity onto the canvas.
8. Add an activity name and description.
9. Click Select Message.
10. In the Content Builder Messages screen, select the session message you want to use.
11. Click Summary.
12. Next to Message Configuration, click Edit.
13. Select the App Channel channel you want to use from the dropdown.
14. Click Summary.
15. Click Done.
16. Configure the rest of your journey, and click Activate.

Note: If you create a draft version of this journey while the previous version is still running, the Inbound Chat entry source is in a
read-only state. To edit the entry source, stop the first journey. Alternatively, you can delete the Inbound Chat entry source in the
draft version and replace it with a new Inbound Chat Entry Source.

WhatsApp Chat Message Analytics


After you activate your journey, you can view your WhatsApp Chat Message performance.
WhatsApp doesn’t give opt-out information back to brands. Brands can discern opt-out rates by evaluating their message bounces. This
analysis also shows users who are offline and bounced messages.

Note: Sends, deliveries, read, and failed statuses are aggregated and reported via the Salesforce platform.

1. In the Journeys Dashboard, click the journey you want to view.


2. Click the WhatsApp Activity.
3. Select the timeframe that you want analytics for.
4. View the message delivery and open rates.
To view more detailed message data, you can create a data extract on page 315.

Create a Chat Messaging Data Extract


Use Automation Studio and Contact Builder to create Chat Messaging Data Extracts and learn more about your message metrics.
1. Navigate to Automation Studio.
2. Click New Automation.
3. Drag the Data Extract activity to the Automation canvas.
4. Click Choose.
5. Click Create New Data Extract. Follow the directions here.
a. Select extract type ChatMessagingDetailExtract.

Note: : If using wild cards in your file name, only use trailing ones. For example,
test_mo_log_%%Year%%%%Month%%%%Day%%.zip

315
Marketing Cloud Journeys and Automations Message Activities

b. Channel ID: The phone number for your WhatsApp channel. Use the country code and phone number with no symbols.
c. Channel Type: WHATSAPP
d. Include MOLog: Provides a raw data file with inbound messages from customers.
e. Include Tracking Detail: Provides detail disposition for Sends and the corresponding Inbound Tracking. If you choose to not
include tracking detail, some delivery receipts aren’t included if they’re near the end of the set sending time period. If you use
a rolling range, you get a complete data set.
f. Include Potential Bounces: WhatsApp doesn’t provide unsubscribe information. If a user hasn’t received a message three times
in the last 30 days, they’re counted as bounced users. It’s possible bounced users opted out and blocked the brand’s WhatsApp
channel.

6. Create a File Transfer Activity.


a. When you run the data extract, the file is stored in a Salesforce Safehouse. The file transfer activity moves the file to a configure
file location.

Note: Use the same file naming pattern you used when you created the Data Extract Activity.

7. Retrieve your files from the FTP.

• Tracking file name: chat_{filename}_tracking.csv.


• Inbound messages file name: chat_{filename}_inboundmessagelogs.csv
• Potential unsubscribes file name: chat_{filename}_potentialunsubs.csv
• If you wanted to add a date to any of the logs, an example would be:
chat_test_mo_log%%Year%%%%Month%%%%Day%%_tracking.csv

8. Import your information into a data extract.


a. Create a data extension in Contact Builder.
b. Create an import definition in Contact Builder.

Table 27: Tracking File Details


Name Description Data Type
TrackingType Send disposition in Marketing Cloud. Is either string
DeliveryReport or SEND

MID Member ID for the sender bigint

EID Enterprise ID number for the sender bigint

ContactKey Contact key of the receiver string

MobileNumber Phone number of receiver string

EventDateUTC UTC date and time of the event. datetime

AppID Application ID of the provider string

316
Marketing Cloud Journeys and Automations Message Activities

Name Description Data Type


ChannelID Phone number of the registered channel string

ChannelType Channel platform (WhatsApp) string

ChannelName Name of channel used string

Status Send status provided by sender or Marketing string


Cloud

Reason If Status is negative, this field provides further string


details.

JBDefinitionID Unique identifier for the journey a message was unique identifier
deployed from

SendIdentifier Internal Marketing Cloud identifier for a send. unique identifier

Important: This identifier associates a


unique SEND”with the corresponding
“DeliveryReport” information. Order or
date can’t be verified when sending to
the same contact many times. This field
is your source of truth for data association
of send and delivery reports.

AssetID Asset ID associated with the Send. Available on bigint


Send type only.

MessageTypeID Internal send type ID. int

Table 28: Inbound Message Details


Name Description Data Type
ChatMessagingMOLogID Unique database identifier in sequential order bigint

ChannelID Phone number of the registered channel string

ChannelType Channel platform (WhatsApp) string

MobileNumber Phone number of contact who responded the string


channel

MessageData JSON-formatted data from our partner. The Text string


field displays inbound text.

DateCreatedUTC UTC date and time the inbound message was datetime
received in the Marketing Cloud

317
Marketing Cloud Journeys and Automations Message Activities

Table 29: Potential Unsubscribe Details


Name Description Data Type
MID Member ID for the sender bigint

EID Enterprise ID number for the sender bigint

ContactKey Contact key of the receiver string

MobileNumber Phone number of receiver string

ChannelID Phone number of the registered channel string

ChannelType Channel platform (WhatsApp) string

ChannelName Name of channel provided by customer string

FirstDateUTC UTC date and time of first send without delivery datetime
tracking

LastDateUTC UTC date and time of last send without delivery datetime
tracking

WhatsApp Status Errors


Review WhatsApp status errors. These status errors are generated by WhatsApp and are subject to change.

Error Description
MEDIA_TOO_LARGE The media used in the message is above the 5-MB limit specified
by WhatsApp.

MEDIA_TYPE_UNSUPPORTED The media used in your message is an unsupported type. Upload


a JPEG or PNG.

BAD_REQUEST One of these descriptions:


• Message length exceeds 4,096 characters.
• A required parameter is missing.
• The value entered for a parameter is of the wrong type or other
problem.
• Message contains a parameter that isn’t required.
• The request isn’t valid.
• Parameter length is too long.
• Translated text is too long.
• Whitespace policy is violated.
• Format character policy is violated.
• The template media format used isn’t supported.
• A required component in the template is missing.
• URL in button component is invalid.
• Phone number in button component is invalid.

318
Marketing Cloud Journeys and Automations Message Activities

Error Description
• Parameter format doesn’t match format in the created
template.

MEDIA_NOT_REACHABLE Failed to download the media from the sender.

CHANNEL_BAD_CONFIGURATION Channel rejected the given channel credentials.

DELIVERY_TIMED_OUT One of these descriptions:


• Message failed to send because it was pending for too long.
Resend the message.
• Message failed to send during its Time To Live (TTL) duration.

DELIVERY_REJECTED_DUE_TO_POLICY Message failed to send because there are restrictions on how many
messages can be sent from this phone number. This failure can
occur if too many messages were blocked or flagged as spam.

RECIPIENT_INVALID_CHANNEL_IDENTITY One of these descriptions:


• Failed to send the message because this user's phone number
is part of an experiment. Skip sending messages to this user.
• Message failed to send since the user with this phone number
has potentially changed.
• User isn’t valid.
• You can’t send messages to yourself.

TEMPLATE_INSUFFICIENT_PARAMETERS Number of parameters provided doesn’t match the expected


number of parameters.

RECIPIENT_NOT_REACHABLE Given channel identity not reachable on this WhatsApp channel.

View SMS Analytics in Journey Builder


SMS activity-level metrics measure the impact of Journey Builder SMS message activities on your customers’ behavior. You can track
each SMS activity’s performance in your journeys against the Analytics 360 goals you define. SMS activity-level metrics aggregate usage
data for all versions of a journey.
The Journey Analytics dashboard appears when you click an SMS activity in a running journey.
1. In Journey Builder, open an active journey and click an SMS activity.
The SMS Performance drawer opens.

2. To open the analytics tile, click SMS Performance.

SEE ALSO:
Review Undelivered Messages

319
Marketing Cloud Journeys and Automations Journey Builder Activities

View Google Analytics 360 SMS Activity Metrics


SMS activity-level metrics measure the impact of your journey SMS message activities on your customers’ behavior. You can track each
SMS activity’s performance in your journeys against the Analytics 360 goals you define.
The Journey Analytics dashboard appears when you click an SMS activity in a running journey.

Important: Campaign Source, Campaign Medium, Campaign Name, sfmc_activityID, and Campaign ID parameters are tracked
for SMS activities. Campaign Term, Campaign Content, and Subscriber ID are not tracked.
1. In Journey Builder, open an active journey, and click an SMS activity.
The SMS Activity drawer opens.
2. To open the analytics tile, click Analytics 360 Goals Summary.
3. Click View Details.

Mobile Activity Tracking


Find tracking information for each mobile message activity on your running journey’s canvas. Click a mobile message activity to access
statistics. Select a timeframe for your analytics from the date field. Access more Journey Builder mobile message tracking in Mobile
Studio.

Note: Analytics aren’t available for Inbox activities.

To access mobile message performance metrics in a running journey, click a configured mobile activity.
To view configuration details, click a mobile activity in a running journey and select Summary from the dropdown.

Note: Mobile activities in a running journey can’t be edited. To edit a mobile activity in a running journey, create another version
of the journey.
Tracking for SMS, LINE message, in-app message, and push notification activities is also available on the MobileConnect, GroupConnect,
and MobilePush Overview screens.

SEE ALSO:
Review Specific Message Activity
Journey Versions
Account, App, and List Statistics

Journey Builder Activities


Canvas activities include messages, decisions, updates, or a combination of these elements, dragged onto the Journey Builder canvas.
In a Multi-Step journey, the activities you configure affect each contact until they reach a goal or the end of the journey.
Activities appear in the builder panel according to their headings: Messages, Advertising, Flow Control, Customer Updates, Sales & Service
Cloud, and Custom.

Note: Single Send journey activities are auto-populated on the canvas. The builder panel is not shown.

Split Activities
Split activities divide contacts into separate cohorts that follow different paths. The split allows each cohort to receive a different set of
subsequent activities. For example, you want to separate the contacts in a journey into two groups by age: contacts who are older than

320
Marketing Cloud Journeys and Automations Journey Builder Activities

35 and contacts who are younger than 35. Place a decision split after the entry event, or any activity in a journey, to prompt Journey
Builder to evaluate each contact’s data. In this example, Journey Builder sorts contacts by age. It funnels contacts who are older than 35
into one branch of the split and contacts who are younger into the other branch.

Note: Custom split activities that use a data decision can allow a True or False (Boolean) decision, or a multiple-answer decision.
Multiple-answer decisions send contacts down more than two decision branches. In other words, a custom activity can segment
the audience into two or more paths based on the purpose of the activity.

Customer Update Activities


Customer update activities prompt the Marketing Cloud system to automatically update a contact’s data in a data extension. You select
a data extension where the activity updates existing data and choose the attribute or value that the activity is to update. Updating an
attribute or value overwrites the value in an existing row; the existing value does not increase and new rows are not added.

Note: If no rows for the associated contact key exist, a new row is added. If there are one or more existing rows for the associated
contact key, existing rows are updated. New rows are not added.

Note: Only sendable data extensions can be used with this activity.

Sales & Service Cloud Activities


Use Sales & Service Cloud activities to interact with the Salesforce Sales & Service Cloud. These activities are available in accounts with
the Marketing Cloud Connector installed.

Custom Activities
The marketer or the marketer's organization fully configures custom activities. Examples of custom activities include custom messaging
through uncommon channels or custom data update activities such as an evaluation of only specified data fields on contact records.
For more details about developing custom activities, see Journey Builder API.

Find Out More


Find specific information about Journey Builder activities on each activity’s help page.

Activity Type Reference


This table identifies and explains Activity Type messages displayed on the Contacts page in Journey Builder.
Undo or Redo a Canvas Action
Before you save or activate a journey, you can undo or redo up to 50 consecutive actions, one at a time, in Journey Builder.
Reuse a Journey Builder Activity
Make building a Marketing Cloud journey faster and easier by copying activities or groups of activities. Copied activities, with a few
exceptions, don’t have to be configured again after you paste them on the Journey Builder canvas.
Path Optimizer Test Activity in Journey Builder
The Path Optimizer activity enables you to test up to 10 variations of a journey path to determine which path performs best. Use a
sample from your contacts to test multiple versions of messages, wait times, channels, and message frequencies during an active
journey. You can let Journey Builder pick the winner automatically based on email metrics such as opens, clicks, or unsubscribes. Or
you can manually choose a winner at any time based on metrics tracked inside or outside Marketing Cloud. The remaining contacts
take the winning journey path.

321
Marketing Cloud Journeys and Automations Journey Builder Activities

Wait Activities in Journey Builder


To manage the timing of messages in Journey Builder, add wait activities. A wait activity holds customers between activities for a
specified amount of time before they move to the next activity. During wait activities, Journey Builder evaluates customers to see if
they met a goal, reached criteria for a decision split, or engaged with a message.
Journey Builder Split and Join Activities
Journey Builder’s split activities allow you to customize a contact’s path through a journey. The join activity allows you to bring
contacts from two or more paths into a single path.
Use the Ad Audience Activity
Use the Ad Audience activity to build an audience in Journey Builder. To use this activity, set up Facebook Twitter, Google Adwords,
or LinkedIn as destinations in Marketing Cloud Advertising Audiences Administration. This activity is available only in accounts
provisioned to use Advertising Audiences.
The Advertising Campaign Activity
Create an Advertising Audience and a simple Facebook advertising campaign without leaving Journey Builder. Extend the reach of
your email marketing and keep your brand top of mind by targeting your email subscribers with Facebook advertisements.
Update a Contact
Update or modify a Marketing Cloud contact record in Journey Builder using the update contact activity.
Configure the Sitecore Connect for SFMC Activity
Use the Sitecore Connect for SFMC activity to send contact status from Marketing Cloud to Sitecore as a contact moves through a
journey.

SEE ALSO:
MobileConnect and Journey Builder
MobilePush and Journey Builder
Marketing Cloud Connect
Configure the Journey Builder Activity in Interaction Studio (Legacy)

Activity Type Reference


This table identifies and explains Activity Type messages displayed on the Contacts page in Journey Builder.
Use Activity Type with the value shown in the Status column to understand exactly where a contact is at a given moment.

Note: The Join activity isn’t shown as an Activity Type. Instead, when a Join activity sends a contact from one path to another,
the next activity in that path is shown. Check the journey to see a contact's path after a Join activity and confirm the contact's
route.

Activity Type Meaning


EMAIL The contact reached an Email activity.
The contact receives an email unless goal criteria was met at this
step.

WaitActivity The contact is in or has left a wait period.


The value shown in the Status column indicates whether the
contact is in a wait period, or has recently left a wait period.

322
Marketing Cloud Journeys and Automations Journey Builder Activities

Activity Type Meaning

• When the Status value is Waiting, the contact is in a wait period.


• When the Status value is Complete, the wait period expired.
The contact continued to the next activity.

CONTACTDECISION The contact reaches a decision split and is sent down one of two
or more paths depending on the activity's settings.
Look for the next activity this contact reaches to find out which
path the contact took.

StartInteractionActivity The journey detected the event and started.

Trigger The journey is evaluating contacts to see whether they meet filter
criteria.

undefined This type isn’t an activity. This message shows when the contact
isn’t in the journey yet.
The value shown in the Status column shows the state of the
journey.

StopInteractionActivity The contact exited the journey. Check the status column to see if
this contact met goal criteria before reaching the exit.

RANDOMSPLIT The contact was sent down one of two or more paths at random
based on this activity's specific configuration.

REST This type is an activity that was built via REST API. The person who
created this activity added the Activity Name.

Other This type is for behind the scenes validation or compliance


activities-such as contact status checks, contact exit checks, and
entry mode settings. These activities determine if the contact
continues through the journey.

DATAEXTENSIONUPDATE The contact reached an Update Contact activity.


Check the activity's specific configuration to determine how this
contact's data was modified.

GoalCriteriaActivity The journey is evaluating the contact against the journey's goal
criteria. Journey Builder checks goal criteria for every contact before
sending them to the subsequent activity.
When a contact meets goal criteria, and goal criteria has been set
as exit criteria, the contact exits the journey. Check the Status
column for specific information.

323
Marketing Cloud Journeys and Automations Journey Builder Activities

Undo or Redo a Canvas Action


Before you save or activate a journey, you can undo or redo up to 50 consecutive actions, one at a time, in Journey Builder.
When you activate or navigate away from the journey, the journey action history is erased.

Note: This feature is not supported in Single Send journeys.

1.

Navigate to the journey menu and click to undo or to redo.


2. If needed, repeat step 1 to undo or redo up to the last 50 actions you took to configure the journey.

Reuse a Journey Builder Activity


Make building a Marketing Cloud journey faster and easier by copying activities or groups of activities. Copied activities, with a few
exceptions, don’t have to be configured again after you paste them on the Journey Builder canvas.

Tip: To copy a group of activities, select activities that adjoin one another on the canvas.

1.
To select one or more activities to copy, click .
2. Click one or more adjoining activities to copy.
3. Click Copy Selection.
4. Drag the copied activity or group of activities from the Copied Activities Clipboard onto the canvas.

Note: Some activities require reconfiguration after pasting.

Note: The Copied Activities Clipboard is not saved when you navigate away from the journey.

Path Optimizer Test Activity in Journey Builder


The Path Optimizer activity enables you to test up to 10 variations of a journey path to determine which path performs best. Use a sample
from your contacts to test multiple versions of messages, wait times, channels, and message frequencies during an active journey. You
can let Journey Builder pick the winner automatically based on email metrics such as opens, clicks, or unsubscribes. Or you can manually
choose a winner at any time based on metrics tracked inside or outside Marketing Cloud. The remaining contacts take the winning
journey path.

Example: Nonprofit Organization


A museum has an existing journey used to drive engagement and membership renewals. The museum’s membership relationship
manager decides to test three aspects of the journey. In the first Path Optimizer test, they set up a two-path test for its first email
to determine which email subject line drives the highest numbers of clicks on the member benefits link. For the second email,
they include another Path Optimizer test that breaks the audience into three paths. They use this test to test which cadence and
message content result in the highest open rate. The final Path Optimizer test divides the journey into two paths, with one path
adding in an SMS message reminder to Renew Membership Now. They manually select the winner based on which path results
in the most renewals.

Configure a Path Optimizer Test Activity


Follow these steps to configure the Path Optimizer Test activity in Journey Builder.

324
Marketing Cloud Journeys and Automations Journey Builder Activities

Configure a Path Optimizer Test Activity


Follow these steps to configure the Path Optimizer Test activity in Journey Builder.
1. Drag the Path Optimizer activity onto the canvas.
2. Add activities to the paths between the start and finish points of the Path Optimizer.
The activity defaults to two paths, but you can add up to 10 paths for testing.

3. Click the Path Optimizer activity.


4. Click Configure Winner Evaluation.
• To pick a winner automatically based on email metrics, click Email Engagement. Then choose the metric and evaluation period.
The evaluation period is how long the system waits after contacts pass through the longest path before picking the winner. You
can configure the evaluation period in hours or days with a minimum of 1 hour and a maximum of 99 days.
• To review your data and manually pick a winner, select Manual Engagement. If you don’t select a winner within 7 days of
activation, the test expires and contacts are held back as if they’re now part of a Random Split.

5. Click Split.
6. Select the percentage of contacts to send on each path.
To include more paths in your testing, click Add Path.

7. Click Holdback.

Important: The Holdback feature is only available when you use a Data Extension entry source set to Run Once.

8. Select the percentage of contacts to include in the test. The rest of the contacts wait in the Holdback group until a winner is selected,
then enter the journey on the winning path.

Tip: To allow the system time to track engagement for all preceding messages, add a wait activity after the last message
included in the test.

9. Click Done.
10. Activate your journey.
11. Click the Path Optimizer activity.
12. Review Test Summary.
13. For Email Engagement tests, review the results of your running test. These results include all email metrics, which path is in the lead,
and elapsed time of the test. To end the test early, click Select Winning Path. Select the winning path, and click Select Winner.

Note: The test duration is the sum of the evaluation period you select and the length of the longest path including wait
activities.

14. For Manual Engagement tests, click Select Winning Path. Select the winning path, and click Select Winner.
15. Click the Analytics dropdown, and select Summary to view the activity configuration.
After the test is complete, the activity shows Test Summary metrics that are snapshots of test stats at the time the winner was selected.
Also, Post-Test Performance stats show elapsed time, how many contacts passed through, and engagement metrics after the winner
was selected. This information allows you to compare performance for ongoing optimization of your journey.

325
Marketing Cloud Journeys and Automations Journey Builder Activities

Note: If you copy a journey with a Path Optimizer activity and you select a winning path, only that winning path remains in the
copied journey. If you didn’t select a winner, all potential paths copy into the new journey.

SEE ALSO:
Data Extension Entry Source

Wait Activities in Journey Builder


To manage the timing of messages in Journey Builder, add wait activities. A wait activity holds customers between activities for a specified
amount of time before they move to the next activity. During wait activities, Journey Builder evaluates customers to see if they met a
goal, reached criteria for a decision split, or engaged with a message.
Here are some things to keep in mind when you use wait activities.
• Plan the timing of waits based on your content and the message cadence expectations that you want to set.
• Determine the best time of day to reach your customers and an optimal wait duration.
• Avoid waits that are shorter than an hour, except when testing a journey.
• Avoid unnecessary waits, especially short waits at the beginning of a journey.
• You can't place two wait activities side by side on the canvas.
• The asterisk next to timezones in the picklist indicate that timezone observes Daylights Savings Time (DST).

Wait by Duration
Use the Wait by Duration activity to provide a consistent experience for all contacts processing through a journey. A wait ends after a
specified amount of time elapses with the default duration of 1 day. To customize duration, you can add an expiration time and a time
zone. When a contact reaches the activity, the expiration date and time of the wait duration begins at the time they entered. A contact
who reaches this activity after the specified end time remains in the activity until the following day at the configured end time.

Wait Until Date


Use the Wait Until Date activity to hold contacts until the day and time that you configure. After the wait expires, the contact immediately
proceeds to the next activity. If the contact reaches the activity after the date, the contact immediately proceeds to the next activity.

Wait by Attribute
Use the Wait by Attribute activity to hold contacts until the day and time value stored in a contact’s date-based attribute that you select.
If the specified day and time passes before the contact reaches the wait activity, or if the attribute value is missing, the contact immediately
proceeds to the next activity.

Wait Until Chat Response


Use the Wait Until Chat Response activity to hold contacts until they respond to an outbound message or the maximum wait time you
configure expires. If contacts don’t respond with a keyword before the maximum wait time expires, they exit the wait activity and
continue along the no response journey path.

326
Marketing Cloud Journeys and Automations Journey Builder Activities

Wait Until API Event


Use the Wait Until API Event activity to allow an external event to trigger an action mid-journey. Configure the activity to hold contacts
until an event, such as a purchase, occurs before moving to the next activity in a journey. You can also create customized experiences
for contacts who don’t take the specified action within a defined timeframe.

Evaluate Goal and Exit Criteria during Wait Activities


If you configure a goal for the journey, Journey Builder evaluates each contact daily while they’re held by the wait activity. If the contact
meets the goal while in the wait, and the exit option is selected for the goal, the contact exits the journey. If the goal's exit option isn't
selected, the contact proceeds to the next activity when the wait expires. When you configure a goal and exit criteria, contacts are
evaluated against both criteria when the wait expires. If a contact meets the goal and the exit criteria, the goal is evaluated first. This
order of operations ensures that if the contact met the goal during the wait, the journey records goal statistics accurately.

Configure a Wait by Duration Activity


Follow these steps to configure a Wait by Duration Activity in Journey Builder.
Configure a Wait Until Date Activity
Follow these steps to configure a Wait Until Date activity in Journey Builder.
Configure a Wait by Attribute Activity
Follow these steps to configure a Wait by Attribute activity in Journey Builder.
Configure a Wait Until Chat Response Activity
Follow these steps to configure a Wait Until Chat Response activity in Journey Builder.
Configure a Wait Until Event Activity
Follow these steps to configure a Wait Until API Event activity in Journey Builder. This feature uses the same API events configured
for journey entry events.
Configure a Wait Until Push Engagement Activity
Orchestrate a journey and react in real time based on whether the contact opens a push notification within a certain period. If the
engagement doesn’t occur within the predefined time, you can send the contact on an alternate path.
Configure a Wait Until In-App Engagement Activity
Orchestrate a journey and react in real time based on whether the contact interacts with an in-app message within a certain period.
If the engagement doesn’t occur within the predefined time, you can send the contact on an alternate path.

Configure a Wait by Duration Activity


Follow these steps to configure a Wait by Duration Activity in Journey Builder.

Note: By default, one Wait by Duration activity is on the canvas and configured to a duration of 1 day.

1. If necessary, drag the Wait by Duration activity onto the canvas.


2. Click the activity.
3. Set the duration.

Note: The maximum duration is 5 years.

4. To specify an end time, select Extend wait duration until specific time. Then choose the time and time zone.
5. Click Done.

327
Marketing Cloud Journeys and Automations Journey Builder Activities

Example: Northern Trail Outfitters (NTO) previously set up a journey to send messages to customers who buy shoes from their
company. Every time a customer purchases a pair of shoes online, NTO sends them a confirmation message. Then NTO sends
another message to follow up on the order and ask the customer to complete a review 3 days later. In the journey’s second version,
NTO wants to ensure that the product review message is sent after 9:00 AM.
After creating another version of the Shoe Sales Email Series journey, the marketer edits the Wait By Duration activity that follows
the Purchase Confirmation email. Then the marketer adds an end time of 9:00 AM and sets the time zone to (GMT-05:00) Eastern
Time (US and Canada). Then the marketer configures the rest of the journey and clicks Activate.
• In scenario one, a customer enters the Wait By Duration activity on Monday at 8:00 AM. The wait duration is observed, which
equates to Thursday at 8:00 AM. The wait then ends on the next instance of 9:00 AM, which is Thursday at 9:00 AM, at which
point the contact proceeds to the next activity.
• In scenario two, a customer enters the Wait By Duration activity on Monday at 9:30 AM. The wait duration is observed, which
equates to Thursday at 9:30 AM. The wait then ends on the next instance of 9:00 AM, which is Friday at 9:00 AM, at which point
the contact proceeds to the next activity.

SEE ALSO:
Configure a Wait Until Date Activity
Configure a Wait by Attribute Activity

Configure a Wait Until Date Activity


Follow these steps to configure a Wait Until Date activity in Journey Builder.
1. Drag the Wait Until Date activity onto the canvas.
2. Click the activity.
3. To select a date for the wait to end, click the calendar.

Note: You can’t select the current date. To set a wait time for the current date, use the Wait by Duration activity.

4. Select the time from the dropdown.


5. Select a time zone from the dropdown.
6. Click Done.

SEE ALSO:
Configure a Wait by Duration Activity

Configure a Wait by Attribute Activity


Follow these steps to configure a Wait by Attribute activity in Journey Builder.

Note: If the attribute is part of contact data, it can be continually updated and appended. Depending on the journey’s entry
settings, contacts sometimes continue in the journey when new data is added to the data extension. When new data is added,
the wait activity’s duration doesn't change based on the new data. The wait time is determined at the moment the contact reaches
the wait activity. To allow contacts to proceed based only on the attribute’s value when the contact entered the journey, use the
attribute in journey data.
1. Drag the Wait By Attribute activity onto the canvas.
2. Click the activity.

328
Marketing Cloud Journeys and Automations Journey Builder Activities

3. Click Select Attribute.


4. To select the attribute, use the search box, or manually navigate to it in the attribute library.
5. Click Summary.
6. To set the wait interval, click Edit.
7. Set the duration and time zone.
8. To specify an end time, select Extend wait duration until specific time. Then choose the time and time zone.
The time zone set in User Preferences for the user configuring the activity becomes the default time zone.

9. Click Summary.
10. Click Done.

Example: Northern Trail Outfitters is hosting in-store fishing seminars for new anglers. The seminars happen three times per
week. A customer can sign up for a seminar up to 5 days in advance. NTO wants to send a confirmation message at the time of
registration, then wait until 3 days before the event to send a reminder.
NTO's marketer adds a Wait By Attribute activity to the journey. To select the attribute from the contact as they're admitted into
the journey, the marketer goes to Journey Data | Entry: Fishing Seminars and selects SeminarDate. In Wait Interval, the marketer
configures the wait to 3 days before. To ensure that messages are sent at a specific time, the marketer sets the end time to 9:00
AM and the time zone to (GMT-05:00) Eastern Time (US & Canada).

SEE ALSO:
Configure a Wait by Duration Activity
Configure a Wait Until Date Activity

Configure a Wait Until Chat Response Activity


Follow these steps to configure a Wait Until Chat Response activity in Journey Builder.

Important: This feature will be made available on a rolling basis through May 2022.

Note: A chat message activity must appear in the journey immediately before this wait activity.

1. Drag the Wait Until Date activity onto the canvas.


2. Click the activity.
3. Click Select.
4. Choose the channel to use from the dropdown.

Important: Use the same channel used in the chat message activity.

5. Click the Keywords tab.


6. Choose up to 10 keywords.

Note: You can use the same keyword in multiple Wait Until Chat Response activities. A contact can be in multiple Wait Until
Chat Response activities that are listening for the same keyword. In this case, if the contact responds with the keyword, the
contact moves into the next activity following the wait most recently entered. The contact takes the No Response path for
any other Wait Until Chat Response activity.

7. Click the Maximum Duration tab.

329
Marketing Cloud Journeys and Automations Journey Builder Activities

8. Set the maximum wait length in the number of days, weeks, or months.
9. Click Summary.
10. Click Done.

SEE ALSO:
Wait Activities in Journey Builder
Marketing Cloud WhatsApp Chat Messaging

Configure a Wait Until Event Activity


Follow these steps to configure a Wait Until API Event activity in Journey Builder. This feature uses the same API events configured for
journey entry events.
When a journey version containing a Wait Until Event activity goes into a Finishing status, events are ignored. Contacts are held in the
Wait Until Event activity and exited at the configured Maximum Wait Duration time.

Important: If you copy an existing journey and change the copied Wait Until API event, this action impacts other journeys or
versions.
1. Drag the Wait Until API Event activity onto the canvas.

Note: The system adds a no-event path to the canvas for contacts who don’t respond.

2. Click to open the wait activity.


3. Select an API event or create one.
4. Click the Filter Criteria tab and set the filter criteria.

Note: You can use Contact data or journey event data for the filter. Journey event data is the data related to the API event
you chose rather than the journey’s entry source.

5. Click Done.
6. Click the Maximum Wait Duration tab and set the maximum time that contacts are held in this activity before taking the no-event
path.

Note: The minimum wait time is one day.

7. Click Summary and review your settings.


8. Click Done.

Tip: Don’t forget to configure the no-event path. You can re-engage customers or have them exit the journey.

SEE ALSO:
Create a Filter
Journey and Contact Data
Admit Contacts Via API
API Event Entry Source Use Case

330
Marketing Cloud Journeys and Automations Journey Builder Activities

Configure a Wait Until Push Engagement Activity


Orchestrate a journey and react in real time based on whether the contact opens a push notification within a certain period. If the
engagement doesn’t occur within the predefined time, you can send the contact on an alternate path.

Important: This feature will be made available on a rolling basis through May 2022.

1. Create a push notification in Journey Builder, or configure an existing Content Builder push notification.
2. Drag the Wait Until Push Engagement activity onto the journey canvas immediately after your configured Push Notification
activity.
3. Click the Wait Until Push Engagement activity.
4. Click Edit in the Maximum Wait Duration tab.
5. Select your duration.

Note: Select a wait duration of up to 7 days or 168 hours. If the engagement event doesn't occur within this period, the
contact follows the No Event path.

6. To review your configuration, click Summary.


7. Click Done.
8. Configure the rest of your journey, and then click Activate.

Configure a Wait Until In-App Engagement Activity


Orchestrate a journey and react in real time based on whether the contact interacts with an in-app message within a certain period. If
the engagement doesn’t occur within the predefined time, you can send the contact on an alternate path.

Important: This feature will be made available on a rolling basis through June 2022.

1. Create a push notification in Journey Builder, or configure an existing Content Builder In-App Message.
2. Drag the Wait Until In-App Engagement activity onto the journey canvas immediately after your configured In-App Message
activity.
3. Click the Wait Until In-App Message Engagement activity.
4. Select the engagement type to listen for.
• Display
• Dismiss
• Button Click

5. Click Edit in the Maximum Wait Duration tab.


6. Select your duration.

Note: Select a wait duration of up to 7 days or 168 hours. If the engagement event doesn't occur within this period, the
contact follows the No Event path.

7. To review your configuration, click Summary.


8. Click Done.
9. Configure the rest of your journey, and then click Activate.

331
Marketing Cloud Journeys and Automations Journey Builder Activities

Journey Builder Split and Join Activities


Journey Builder’s split activities allow you to customize a contact’s path through a journey. The join activity allows you to bring contacts
from two or more paths into a single path.
Engagement Split: Determines a contact’s journey path based on their interaction with your message, such as opens or clicks.

Example: A marketer at Northern Trust Outfitters (NTO) wants to send a holiday coupon offer message to NTO customers. The
marketer intends to send an email message when customers enter the journey and measure engagement. Then the marketer
wants to send another email to customers who don’t open the first one. To ensure that all customers in the journey get the message,
the marketer uses an engagement split activity.
Decision Split: Determines a contact’s journey path based on their data attributes. For instance, to customize the experience for silver,
gold, and platinum-level customers, you can use a decision split.

Example: A marketer for a healthcare provider prepares a journey for its patients in three different US states. The healthcare
provider sends different messages to patients depending on their state of residence. The healthcare provider uses a data extension
that contains user information for all users in the tri-state area as its entry source. The marketer creates a separate data extension
called StateOfResidence that includes only contact ID and state of residence for each contact.
Random Split: Selects the journey path for each contact randomly. You determine the percentage of contacts assigned to each path.

Example: A regional grocer wants to encourage more customers to subscribe to their weekly specials email messages. As an
incentive, their marketer creates a campaign to send $10 off certificates to 20% of new subscribers during the month of June. They
create two versions of their subscription confirmation message; one with the certificate and one without. Then they create a
journey that includes a random split. They configure the split so that 80% of contacts receive the confirmation messages without
a certificate and 20% receive the certificate.
Einstein Scoring Split: Customize contact’s journey based on specific engagement levels or personas. For more information, see the
Einstein Engagement Scoring Personas help page.
Einstein Frequency Split: Segments contacts automatically, then sends each contact on a split path based on the engagement frequency
that’s individualized for them.
Join Activity: Merge contacts from two or more paths into a single path.

Configure an Engagement Split


Journey Builder’s Engagement Split activity sends contacts down a Yes or No path based on whether they open or click a link in an
email or the email bounces.
Configure a Decision Split
Journey Builder’s Decision Split activity evaluates contact journey data, then sends each contact down a path based on the filter
criteria you set. The paths in a decision split are evaluated in succession from top to bottom. Contacts who meet more than one set
of criteria for a path follow the path they qualify for first. Contacts that don’t meet conditions to follow one of the paths you configure
follow the Remainder path.
Configure a Random Split
Journey Builder’s Random Split activity divides contacts in the journey into random groups. Contacts are grouped in up to 10
configurable paths that you create. As each contact reaches the activity, the contact is assigned a path at random based on the
distribution that you select.
Configure Einstein Scoring Splits
Use the Einstein Scoring Split activity in Journey Builder to segment customers into logical split paths according to prebuilt Einstein
personas. Each persona is built on engagement score segments.

332
Marketing Cloud Journeys and Automations Journey Builder Activities

Configure a Join Activity


Use Journey Builder’s Join activity to bring contacts from two or more paths into a single path.
Configure a Frequency Split
Journey Builder’s Frequency Split activity sends each contact down a path based on their individual engagement frequency. Real-time
engagement analysis enables Einstein to automatically segment contacts, even in a running journey.

SEE ALSO:
Einstein Engagement Scoring Personas

Configure an Engagement Split


Journey Builder’s Engagement Split activity sends contacts down a Yes or No path based on whether they open or click a link in an email
or the email bounces.
To use an Engagement Split, enable the tracking feature for your email message. At least one message activity must occur before an
Engagement Split. To allow the system time to track engagement for all preceding messages, a wait activity must occur between the
last message and the Engagement Split.

Note: Mailto links aren't supported. When you track clicks, all message links, engagement results include clicks that unsubscribe
or update profile links.

Important: The term Open refers to when a subscriber clicks a link in an email. If a subscriber has images disabled in their inbox,
opens related to that image aren't recorded. If this subscriber clicks a link in the same message, it’s counted as an open.
1. Drag the engagement split activity onto the canvas.
At least one email activity must precede the split.

2. Click the activity.


3. To configure the engagement split, select an email message to monitor.
Journey Builder lists all applicable messages in activities that come before the engagement split in the journey.

4. Click Message Metrics.


5. To send contacts down the Yes branch, choose the criteria.
Choosing the criteria enables you to track opens and clicks for the first email. This action also enables email tracking at multiples
places in a journey and where contacts can reenter a journey.

6. Click Summary.
7. Click Done.
8. To view Yes and No paths, hover over the path beneath the configured activity.

Tip: After configuration, you can hover over the activity to view details.

SEE ALSO:
Get Started with Content Builder

333
Marketing Cloud Journeys and Automations Journey Builder Activities

Configure a Decision Split


Journey Builder’s Decision Split activity evaluates contact journey data, then sends each contact down a path based on the filter criteria
you set. The paths in a decision split are evaluated in succession from top to bottom. Contacts who meet more than one set of criteria
for a path follow the path they qualify for first. Contacts that don’t meet conditions to follow one of the paths you configure follow the
Remainder path.
You can use either a sendable or non-sendable data extension in a Decision Split activity. For more information, see Connect the Data
Extension for a Decision Split.

Tip: To help you decide where and how to store data to use in decision splits, see Journey and Contact Data.

1. Drag the Decision Split activity onto the canvas.


2. To enter a name, click .

Tip: We recommend that you use a name that describes its purpose.

3. Click the activity.


4. To configure the first path, click Edit.
5. Select Contact Data or Journey Data.
6.
To configure a filter, click to narrow the attribute selection.
7. Drag the attributes to use into the filter.
8. To set the filter criteria, click next to an attribute.
9. Click Done.
10. After you set all filter criteria, click Summary.
11. To configure more paths, click Add Path, and repeat steps 4 through 10.

Note: You can create up to 20 paths.

12. Click Done.


13. Configure the remaining activities for each path.

Example: A marketer sets up a decision split to divide Active Subscribers, Lapsed Subscribers, and Subscribers with an Abandoned
Cart Transaction. The goal of the split is to separate customers and subscribers who are actively engaged with the brand from the
customers who aren't. Apart from these two cohorts, the marketer wants to send messages to any customer with an Abandoned
Cart transaction. This setup evaluates each contact for active subscribers first, lapsed subscribers second, and then for any subscriber
who abandoned a purchase.

Connect a Data Extension for Decision Splits


To use data that isn’t in the entry source or that changes in a Decision Split in Journey Builder, follow these steps to link a data
extension in Contact Builder.
Use Restricted Values
To control the values available to select in the filter expression, an admin can use restricted values. Users who build the filter expression
can choose from designated values only, not a default or blank value. In practice, restricted values are created in Contact Builder.
Then when a user creates a journey, the dropdown menu used to set the attribute value displays a list of preselected values only.

334
Marketing Cloud Journeys and Automations Journey Builder Activities

Copy a Decision Split Path


To save time, you can copy decision split paths in Journey Builder. After you make a copy, edit the attribute values to make it distinct
from other paths. You can't activate a journey when two decision split paths are configured identically.
Reorder Decision Split Paths
Journey Builder evaluates contacts that reach a Decision Split activity against the split’s filter criteria in succession from top to bottom
on the canvas. You can change the order of the paths.

SEE ALSO:
Linked Data Extensions in Journey Builder
Journey and Contact Data
Connect a Data Extension for Decision Splits

Connect a Data Extension for Decision Splits


To use data that isn’t in the entry source or that changes in a Decision Split in Journey Builder, follow these steps to link a data extension
in Contact Builder.
To learn more about how and when to use contact or journey data in a Decision Split, see Journey and Contact Data in Decision Splits.
1. Navigate to Contact Builder.
2. On the Data Designer tab, click Create Attribute Group.
3. Name the group Prioritization.
4. Click Link Data Extensions.
5. Select the data extension you want to link.
6. Set the data extension to match your data requirements. For example, link Contact Key from "Customer Data" to "Subscriberkey"
from your data extension.
7. Click Journey Builder Contacts.
8. Set the data relationship to match your data requirements.
For more information, see Use Linked Data Extensions in Journey Builder.

9. Save your changes.


10. Click the link tab next to the new attribute set.
11. In the Select Data Extension section, navigate to Journey Builder Prioritization.
12. Click Journey Builder Prioritization.
13. In the Journey Builder Contacts section, click SubscriberKey.
14. In the Journey Builder Prioritization section, click SubscriberKey.
15. Save your work.

Prioritization Example: Update Entry Event


In this decision split prioritization example, Journey Builder updates the entry events for a post-purchase confirmation and follow-up
journey.
Prioritization Example: Update the Abandoned Cart Journey
In this decision split prioritization example, Journey Builder updates the entry events for an abandoned cart journey.

335
Marketing Cloud Journeys and Automations Journey Builder Activities

Prioritization Example: Update the Reengagement Journey


In this decision split prioritization example, Journey Builder updates the entry events for a re-engagement journey.

SEE ALSO:
Journey and Contact Data
Configure a Decision Split

Prioritization Example: Update Entry Event


In this decision split prioritization example, Journey Builder updates the entry events for a post-purchase confirmation and follow-up
journey.
The marketing manager at Northern Trail Outfitters follows these steps to configure a prioritized entry event for a post-purchase
confirmation and follow-up journey.
1. In Journey Builder, open the journey named Post Purchase Confirmation and Follow-Up.
2. In the running version, click New Draft.
3. Click Event.
4. Click Back.
5. Under Data Extensions, select Journey Builder Prioritization, then click Next.
6. In the Attributes pane, navigate to Journey Builder Prioritization.
7. Find the PostPurchase attribute.
8. Confirm that the expression reads PostPurchase is True, then click Next.
9. Schedule the event, then click Next.
10. Review the configuration settings and click Done.
11. Save your changes.
12. Click Activate.

Prioritization Example: Update the Abandoned Cart Journey


In this decision split prioritization example, Journey Builder updates the entry events for an abandoned cart journey.
The marketing manager at Northern Trail Outfitters follows these steps to configure a prioritized entry event for an abandoned cart
journey.
1. In Journey Builder, open the journey named Abandoned Cart.
2. In the running version, click New Draft.
3. Hover over the entry event.
4. Click Remove Entry.
5. Click Delete.
6. Click Configure Event.
7. Click New Event.
8. Select Contact Event then click Next.
9. Under Data Extensions, select Journey Builder Prioritization, then click Next.

336
Marketing Cloud Journeys and Automations Journey Builder Activities

10. In the Attributes pane, navigate to Journey Builder Prioritization.


11. Find the AbandonedCart attribute.
12. Confirm that the expression reads AbandonedCart is True and click Next.
13. Schedule the event, then click Next.
14. Review the configuration settings.
15. Click Done, then Save your changes.
16. Click Activate.

Prioritization Example: Update the Reengagement Journey


In this decision split prioritization example, Journey Builder updates the entry events for a re-engagement journey.
The marketing manager at Northern Trails Outfitters follows these steps to configure a prioritized entry event for a re-engagement
journey.
1. In Journey Builder, open the journey named Re-Engagement.
2. In the running version, click New Draft.
3. Hover over the entry event.
4. Click Remove Entry.
5. Click Delete.
6. Click Configure Event.
7. Click Event.
8. Select Contact Event, then click Next.
9. Under Data Extensions, select Journey Builder Prioritization, then click Next.
10. In the Attributes pane, navigate to Journey Builder Prioritization.
11. Find the Re-engagement attribute.
12. Configure the expression to read Re-engagement is True, then click Next.
13. Schedule the event as desired, then click Next.
14. Review the configuration settings, then click Done.
15. Save your changes.
16. Click Activate.

Use Restricted Values


To control the values available to select in the filter expression, an admin can use restricted values. Users who build the filter expression
can choose from designated values only, not a default or blank value. In practice, restricted values are created in Contact Builder. Then
when a user creates a journey, the dropdown menu used to set the attribute value displays a list of preselected values only.

337
Marketing Cloud Journeys and Automations Journey Builder Activities

Note: Contact Builder doesn't limit data that is accepted into data extensions according to data type. Not all records in a data
extension meet a data value condition set when setting restricted values. Contacts that don't meet restricted values conditions
are sent down the Remainder path.

SEE ALSO:
Get Started with Contact Builder
Data Designer in Contact Builder
Create an Attribute

Copy a Decision Split Path


To save time, you can copy decision split paths in Journey Builder. After you make a copy, edit the attribute values to make it distinct
from other paths. You can't activate a journey when two decision split paths are configured identically.
1. Click the activity on the canvas.
2. Click Edit.
3. To copy a path, click Copy.
4. To make it distinct from other paths, change the configuration of the path’s activities.
5. Click Done.

Note: The Done button is disabled until all paths in the split are unique.

Example: A marketer wants to send targeted communications to military service members based on their branch affiliation. The
marketer uses a data extension that includes a contact attribute that contains each branch of the military. When configuring the
split, the marketer drags the Military Branches attribute into the filter expression. In this example, the marketer standardized the
list of values available in the dropdown menu by configuring restricted values. So the marketer selects Army and configures the
rest of the path. After configuring the first path, the marketer follows the steps to make a copy and configure it for the Navy. Then
the marketer repeats the process to configure paths for the other branches of the military.

Reorder Decision Split Paths


Journey Builder evaluates contacts that reach a Decision Split activity against the split’s filter criteria in succession from top to bottom
on the canvas. You can change the order of the paths.
1. Click the split activity.
2. Click Edit.
3. To change the order of a Decision Split's paths, click a path, and drag it into the desired position in the succession.

Note: If the path you moved was named, it keeps its name. If the path you moved wasn't named, it takes the name of the
path it replaced.

Example: After configuring a Decision Split, a marketer realizes that subscribers who abandoned a purchase could also meet the
criteria for Active Subscribers or Lapsed Subscribers. The current configuration would separate these subscribers regardless of
whether they meet the criteria for Abandoned Cart. The marketer decides to move the Abandoned Cart path to the first position
in the split. The marketer follows these steps to reorganize the split. As a result, contacts are evaluated according to the value in
the Abandoned Cart attribute first, then for Active Subscriber and Lapsed Subscriber attribute values. This evaluation lets the
marketer send targeted communication to subscribers who abandoned a purchase regardless of the subscribers' status.

338
Marketing Cloud Journeys and Automations Journey Builder Activities

Configure a Random Split


Journey Builder’s Random Split activity divides contacts in the journey into random groups. Contacts are grouped in up to 10 configurable
paths that you create. As each contact reaches the activity, the contact is assigned a path at random based on the distribution that you
select.
Each path is populated randomly, so its distribution of contacts often doesn’t match the configured percentage exactly. As contacts
proceed through the activity, each path’s population gradually comes closer to its configured distribution percentage.
1. Drag the random split activity onto the journey canvas.
2. Add up to 10 paths.
By default, the activity shows two paths.

3. Use the slider to set the contact distribution percentage for each path.
To ensure that the sum of all paths equals 100, Journey Builder adjusts the values that you enter.

4. Click Done.

Example: To test new creative content in Northern Trail Outfitters’ (NTO) email messaging, a marketer adds a random split activity
with three paths to a journey. The marketer sets up two paths to use as test groups and sets distribution for the first path at 20%.
This path includes an email activity with the new creative content. The remaining 80% of contacts follow the second path, which
includes an email activity with existing content.
When a contact reaches the random split activity, that contact has a 20% chance of being assigned to one of the 10% paths. The
same contact has an 80% chance of following the remainder path. After numerous contacts enter the journey, the marketer uses
journey analytics to understand which path contains creative content that drives greater sales.

Configure Einstein Scoring Splits


Use the Einstein Scoring Split activity in Journey Builder to segment customers into logical split paths according to prebuilt Einstein
personas. Each persona is built on engagement score segments.
When you choose not to add all paths, Journey Builder adds a remainder path for contacts that don’t belong in the split paths you add.
Rename the activity and change the path types as desired.
1. Drag the Scoring Split activity onto the canvas.
2. Click the activity.
3. Select a channel according to the type of message activity that you plan to use.
4. Select a split option.
5. Click Next.
6. Click Add Path for each segment you want to include as a path in the journey. To remove a path that you added, click Delete.
3

Configure a Join Activity


Use Journey Builder’s Join activity to bring contacts from two or more paths into a single path.
1. Drag the activity endpoint to the point on the destination path where contacts join it.
To indicate where path contacts come from and which path they're joining, the join activity is represented by its original path and
destination path.

3
Rights of ALBERT EINSTEIN are used with permission of The Hebrew University of Jerusalem. Represented exclusively by Greenlight.

339
Marketing Cloud Journeys and Automations Journey Builder Activities

Note: Multiple join activity endpoints can be dragged to the same point on a destination path. Or drag the join activity
endpoint to a different point on this or another destination path according to the journey’s purpose.

2. To name the activity, hover over it, and enter a name.


3. To remove a single join activity from a destination path, hover over the activity on its original path, and click .
4. Hover over the point on the destination path where multiple join activities meet to remove multiple joins.
5. Select the paths you want to disconnect and confirm.
6. Hover over the point on the destination path where multiple joins meet. Then click Delete.

Configure a Frequency Split


Journey Builder’s Frequency Split activity sends each contact down a path based on their individual engagement frequency. Real-time
engagement analysis enables Einstein to automatically segment contacts, even in a running journey.
When a contact lacks enough engagement history for Einstein’s model, the contact follows the On Target path.
A remainder path is included if you don’t add all paths. When you add the On Target, Undersaturated, and Saturated paths, there’s no
remainder path. When you add all paths, there’s no remainder path.
1. Drag the Frequency Split activity to a place on the canvas where you want Einstein to segment your audience.
2. Click the activity.
3. Select the channel you’re sending from.
a. When you select a mobile channel, select the app that you’re sending from.

4. To configure the split, click Add Path next to each of the segment paths to include.
a. When you add the Almost Saturated path, select the appropriate saturation limit that indicates which contacts on this path
reached saturation.

5. Click Done.
To view your configured paths, hover over the split activity or any path. To update the activity’s configuration, stop the journey, then
add or remove a path. When you remove a path, all activities on the path are removed, too.

View Frequency Split Analytics


Einstein Engagement Frequency’s activity-level analytics in Journey Builder show how many contacts were evaluated after reaching
the activity, and which paths those contacts took in the journey.

SEE ALSO:
Einstein Engagement Frequency
The Einstein Engagement Frequency Dashboard

View Frequency Split Analytics


Einstein Engagement Frequency’s activity-level analytics in Journey Builder show how many contacts were evaluated after reaching the
activity, and which paths those contacts took in the journey.
When one or more contacts have insufficient data for Einstein to assign a frequency score, Einstein assigns the score according to global
model data. When a contact is assigned a score according to global model data, a No appears in the Personalized column. In this case,
activity-level analytics sometimes don’t match analytics on the Einstein Engagement Frequency dashboard.

340
Marketing Cloud Journeys and Automations Journey Builder Activities

When the Frequency Split is used in a Single Send Journey, only two paths appear.
1. In Journey Builder, open an active journey, and click a Frequency Split activity.
The analytics drawer opens.
2. To see a list of all contacts that reached the activity, when, and which contacts were assigned a personalized path, click View Details.
3. To access a summary view, select Activity Summary.

SEE ALSO:
The Einstein Engagement Frequency Dashboard

Einstein Send Time Optimization for Journey Builder


Marketing Cloud Einstein Send Time Optimization (STO) uses machine learning and 90 days of email or push notification engagement
data to determine the best time within the next 24 hours to send a message to each contact. Include the Einstein STO activity in a journey
immediately before an email or push notification activity to reach contacts when they’re most likely to engage. Or preview Einstein’s
optimal send times for a data extension before you send.
Einstein Send Time Optimization helps marketers increase engagement with email or mobile messages. The Einstein STO Journey Builder
activity can send email or push notifications to each contact at the time when that contact is most likely to engage with the message.

How Send Time Optimization Works


Einstein gathers data for approximately 20 factors. Factors include engagement metrics such as the number of messages sent to and
opened by a contact and the day of the week the message is opened. Then, using machine learning, Einstein assigns a weight to each
factor according to that factor’s influence on predicting future engagement behavior. Einstein analyzes this data and assigns a likelihood
score to each of the 168 hours in a week for each contact. Send Time Optimization uses this information to recommend the send times
that lead to increased engagement.
With Einstein Send Time Optimization you can preview the best send times for a data extension that you plan to use for sending. Einstein
analyzes a sample of the total number of contacts to identify the best send times for those contacts. Navigate to the Einstein Overview
to preview send times for a data extension.
This feature is available to customers with Marketing Cloud Einstein terms for Corporate, Enterprise, or Pro edition accounts with the
Journey Builder add-on. To use this activity, activate Einstein Send Time Optimization for your business unit.

SEE ALSO:
Activate Einstein Send Time Optimization
Einstein Send Time Optimization Dashboard

Einstein Send Time Optimization Use Cases


Focus on increasing overall engagement, measure the impact of send time optimization, and optimize send times when there’s a wait
activity between messages.

Optimize the Send Time of Each Message in a Journey


To increase overall engagement for a journey, add the Einstein Send Time Optimization (STO) activity before each email and push
notification activity. The STO activity assigns the best hour to send based on individualized analysis. Each message is sent to each contact
in the journey at the hour within the next 24 hours that when the contact is most likely to engage with it.

341
Marketing Cloud Journeys and Automations Journey Builder Activities

For example, a marketer named Alex sets up a journey with one email message containing a coupon offer for new customers. When
customers make an online purchase and opt in to receive offers from Alex’s company, completing the transaction enters each customer
in Alex’s journey.
The first customer enters the journey Monday evening at 8:34 PM after purchasing and opting in. Einstein Send Time Optimization’s
analysis determines that the customer is most likely to engage with email messages from 4:00–4:59 PM. So, the journey sends this
customer Alex’s coupon offer email at 4:00 PM on Tuesday, the day after the customer opted in.
A second customer enters the journey at 10:07 PM on Monday night. Einstein STO determines that the customer is most likely to engage
with email messages from 10:00–10:59 PM. Because the customer reached the activity during the same hour Einstein identifies as best
for sending, Einstein chooses the next best hour to send to this customer. STO analysis shows the next best hour as 7:00 AM. Thus, the
journey sends the coupon to this customer at 7:00 AM on Tuesday morning.
A third customer enters the journey at 10:12 PM on Monday night. Einstein STO analysis shows that this customer is most likely to engage
with push notifications from 11:00–11:59 PM. So, the journey sends the coupon offer to this customer via push message at 11:00 PM
the same night. Einstein doesn’t send the message at 11:12 PM--exactly one hour after the contact entered the journey-- because Einstein
STO sends always occur at the beginning of the best scoring hour for each customer.

Add a Random Split Activity to Measure Impact


To measure the impact of send time optimization, add the Einstein Send Time Optimization (STO) activity after a random split activity
in a journey. Send more contacts down the Einstein-optimized path in your next journey, or in a subsequent version of this journey. For
example, the split in a marketer’s journey directs half the contacts in the journey to a path where a wait activity precedes an email activity.
The split directs the other half to a branch where the Einstein STO activity precedes an email activity. The marketer later checks the
engagement rate for each email activity and compares them.

Combine with a Wait Activity


To optimize send times when there’s a minimum one-day wait between email messages in a customer journey, combine a wait activity
and the Einstein STO activity.
Northern Trails Outfitters (NTO) marketing manager, Lisa, wants to optimize customer engagement for a welcome campaign. After
customers subscribe to the NTO newsletter, they receive a series of three emails that set expectations and highlight the benefits of
subscribing. Before the second and third messages, Lisa has included a wait activity that instructs the system to wait two days before
sending the next message. To ensure that an email is sent to each subscriber when that subscriber is most likely to engage with it, Lisa
adds the Einstein STO activity between the wait activity and email activity for the second and third messages.
A customer named Alice and a customer named Bjorn both subscribe to the newsletter on a Tuesday. They each receive the initial
welcome message within a few minutes. Remember, the journey doesn’t include an Einstein STO activity before this message. So the
message sends when Alice and Bjorn reach the first email activity in the journey. The second message is scheduled to send on Thursday.
Based on Alice’s individual subscriber engagement behavior over the past 90 days, the journey sends the second message to Alice at
11:00 AM. Based on Bjorn’s engagement history, the journey sends the message to Bjorn at 7:00 PM.

Use the Einstein Send Time Optimization Activity


Add the Einstein Send Time Optimization (STO) activity immediately before an email or push notification activity in a customer journey
to maximize the chance that recipients engage with your message. When a contact reaches the activity, Einstein finds the best upcoming
hour to send, starting at the beginning of the next hour.

Tip: Add an Einstein Send Time Optimization activity before each email or push notification activity.

1. Drag the Einstein STO activity to a position immediately before the email or push notification activity you want to optimize.
2. Click the activity.

342
Marketing Cloud Journeys and Automations Journey Builder Activities

3. Select the period that Einstein optimizes send times for.


a. To use a custom time frame, first click Next 12 hours, Next 24 hours, Next 48 hours, Next 72 hours, or Next 7 days.
b. Click Custom.
c. Drag the slider to set the custom time frame, which is shown on the right end of the slider.

Note: When a contact reaches the activity, the contact is eligible to be sent your message beginning in the first minute of
the next full hour. Messages are sent only at the beginning of the best hour to send, even if a contact reaches the Einstein
Send Time Optimization activity later during the hour.

4. To include a control path to test your send time optimization against, use the Random Send Option.
5. Click Done.

Create a Control Path with Random Send


Find out how Einstein Send Time Optimization (STO) performs when you compare the engagement rates of random sends to optimized
sends. Use the Random Send option to send to some contacts at randomized times. To use Random Send, enable Einstein STO first.
1. Drag the Einstein STO activity to a position directly before the message activity you want to optimize.

Note: The Einstein STO activity doesn’t support the SMS activity.

2. Click the activity.


3. After configuring the sending time frame, select Randomize send times for contacts on this path.

View Einstein STO Activity Analytics


Get deeper insight into which Marketing Cloud contacts have exited and which contacts are waiting to exit, including their send time
personalization status. Einstein Send Time Optimization (STO) activity-level analytics show how many contacts have entered, are waiting
in, or have exited the activity in close to real time.
1. In Journey Builder, open an active journey, and click an Einstein STO activity.
The analytics drawer opens.
2. To see a list of all contacts who have entered, are waiting in, or have exited that you can filter, click View Details.
3. To access a summary view you can filter, select Activity Summary.

SEE ALSO:
Einstein Send Time Optimization Dashboard
Einstein Send Time Optimization Dashboard

Use the Ad Audience Activity


Use the Ad Audience activity to build an audience in Journey Builder. To use this activity, set up Facebook Twitter, Google Adwords, or
LinkedIn as destinations in Marketing Cloud Advertising Audiences Administration. This activity is available only in accounts provisioned
to use Advertising Audiences.
Journeys that use the Ad Audience activity must include email addresses as the attribute in the Entry Event. Contacts in a journey that
don’t include an email address can’t populate an Advertising Audience. Refresh Rate determines how often the ad audience pulls in
data from Journey Builder. Refresh Rate is set to refresh as soon as possible according to how your account is provisioned.
1. Drag the Ad Audience activity onto the canvas.

343
Marketing Cloud Journeys and Automations Journey Builder Activities

2. Enter a name and description.


3. Select an advertising network and account to target.

Tip: Use this advertising account only with the advertising network that you select here.

SEE ALSO:
Get Started with Advertising Audiences
Add Audience Activity to Journeys

The Advertising Campaign Activity


Create an Advertising Audience and a simple Facebook advertising campaign without leaving Journey Builder. Extend the reach of your
email marketing and keep your brand top of mind by targeting your email subscribers with Facebook advertisements.
The Advertising Campaign activity creates an advertising campaign and posts your advertising content on social media. You configure
the creative elements of your advertisement and set campaign specifications, including total and daily advertising spend settings, within
Journey Builder. When you activate the journey, it creates an advertising campaign, too. As the journey continues, customers populate
the advertising campaign and see your advertisement.
The activity includes a setup assistant to help you link Marketing Cloud Advertising to Journey Builder. You can also set a Retention
Period for campaign members to prevent oversaturating their social media feeds with your advertisement.

Note: The Advertising Campaigns activity supports Facebook only. The Advertising Audience activity supports multiple social
networks.

Considerations
• To access this activity, enable Marketing Cloud Advertising and Journey Builder in your Marketing Cloud account. Contact your
account executive if your account does not include access to this feature.
• How often your advertisement displays on social media sites depends on many factors, such as your campaign budget and the size
of your audience.
• Campaigns built using this activity optimize toward daily unique reach.
• Edit the activity any time before journey activation. The campaign does not begin until the journey is active.
• To edit the activity while a journey is in progress, create a new journey version. You can adjust settings such as campaign name and
budget, but you can’t modify campaign creative in Journey Builder.
• To increase reach for smaller audiences, a larger advertising spend can be necessary. When there are more people in an audience,
there is a greater chance that the advertisement is delivered to audience members in their newsfeeds.

SEE ALSO:
Create a Journey Builder Advertising Campaign
Add Audience Activity to Journeys

Update a Contact
Update or modify a Marketing Cloud contact record in Journey Builder using the update contact activity.

344
Marketing Cloud Journeys and Automations Journey Builder Activities

Use the update contact activity to modify a contact attribute value when a contact reaches this activity in a journey. You choose a
sendable data extension and set a static value that overwrites this value for each contact that reaches the activity. Date attributes provide
the option to use the current time in Central Standard Time.

Note: This activity does not observe Daylight Savings Time.

Note: If no rows for the associated Contact Key exist, a new row is added. If there are one or more existing rows for the associated
Contact Key, existing rows are updated and no new rows are added.
1. Drag the activity onto the canvas.
2. Click the activity.
3. Click Select Data Extension.

Note: Selecting the same data extension that the journey's entry source uses is not recommended.

4. Select the data extension that contains the attribute that the journey modifies.
5. Click Attribute Value.
6. Select the attribute to modify.
The data extension’s attributes are prepopulated in the dropdown menu.

Note: When a data extension has only a single field that is used as the primary key, you can’t modify it.

7. Add the static value or select the date if the attribute is date-based.
a. To apply a timestamp at the time each contact reaches the activity, select Use current time for date-based attributes.

Note: This activity does not observe Daylight Savings Time. Selecting Use current time adds the current time in Central
Standard Time.

8. Add up to five attributes to update.


9. Click Summary.
10. Click Done.

Update Contact Activity Use Cases


Review two common use cases for the Update Contact activity in Journey Builder.

SEE ALSO:
Contact Builder in Marketing Cloud

Update Contact Activity Use Cases


Review two common use cases for the Update Contact activity in Journey Builder.

NTO Loyalty Level Updates


NTO wants to reward customers who stick with them through the years. To set up a rewards program, NTO gives each customer a loyalty
level: bronze, silver, or gold. After each customer’s first purchase, their loyalty level attribute is empty. Customers who remain in NTO’s
rewards program for one year without opting out are automatically upgraded to bronze status using the update contact activity.

345
Marketing Cloud Journeys and Automations Sales and Service Cloud Activities

To update each customer’s loyalty program level, NTO configures their customer journey by placing an update contact activity after a
Wait Until Attribute activity. NTO sets the Wait Until Attribute activity to use a Date-Based Attribute and selects the JoinDate attribute.
NTO then sets the wait interval as 12 months after each contact’s join date.
After setting up the Wait Until Attribute activity, NTO selects the CustomerLoyalty data extension in the update contact activity. NTO
selects the Loyalty attribute from the CustomerLoyalty data extension and types in Bronze as the value to add. The Loyalty attribute is
thus updated one year after a customer makes a purchase.

Vaccination Status Updates


A healthcare provider tracks each patient’s vaccine status for each year. Patients enter a new care journey each year, which kicks off when
their first appointment ends. When a patient has their first appointment of the year, the provider typically vaccinates the patient.
As the healthcare provider’s marketer builds the annual journey, they choose a data extension that includes information about each
patient as their entry source. This data extension is linked to an Appointments data extension that includes a LastAppointment attribute
and a VaccinationDate attribute. Patients are admitted to the journey each year. The healthcare provider wants to update the Appointments
data extension with vaccination status when each patient’s LastAppointment attribute value equals today’s date.
To ensure that each patient’s vaccination status is kept up to date, the marketer places an update contact activity first in the journey. In
the activity, the marketer selects the entry source data extension, then chooses the VaccinationDate attribute. The marketer then sets
the value by selecting Use current time. As configured, this journey keeps each patient’s vaccination status up to date.

Configure the Sitecore Connect for SFMC Activity


Use the Sitecore Connect for SFMC activity to send contact status from Marketing Cloud to Sitecore as a contact moves through a journey.
1. In the Messages section of a journey sidebar, drag the Sitecore activity onto the canvas.
2. Click the activity.
3. In the Contact State field, enter a state name.
4. If the state is an exit state, check the Contact is exiting the journey box.
5. Click Save.
6. To activate the journey, click Activate.

Sales and Service Cloud Activities


Use Sales and Service Cloud canvas activities in Journey Builder to create or update Sales and Service Cloud object records for connected
Marketing Cloud contacts. You can grant new users access to create or edit Sales and Service Cloud Activities, except users with the
Marketing Cloud Administrator role.
Sales Cloud activities use the Salesforce SOAP API to Create, Lookup, and Update. There are three options when you configure an activity:
Create, Simple Update, and Find and Update. A successful create or update stores the generated record ID as output data for the activity
that you can access through Journey Data.

Note: Activities are asynchronous. It’s possible that the update to Sales Cloud isn’t instantaneous depending on how many
updates to Sales/Service Cloud you’re making. Allow up to 24 hours to process the update. We only retry failures with the
"UNABLE_TO_LOCK_ROW" errors. We retry up to 10 times for row-locking errors.
The activities use the same version of the Salesforce SOAP API as the Marketing Cloud Connector.

Note: Complete the steps to configure a Sales and Service Cloud activity when you copy them on the Journey Builder canvas.

Use activities to perform these actions:

346
Marketing Cloud Journeys and Automations Sales and Service Cloud Activities

• Create a lead when a Marketing Cloud contact enters a journey.


• Update a lead based on engagement within a journey.
• Create a CRM contact record when a Marketing Cloud contact reaches the activity.
• Update a CRM contact record with Marketing Cloud contact data.
• Update a custom object based on engagement within a journey.
• Create a task when another object, such as a lead or contact, enters a journey.
• Associate a case or task to an account.
• Update a task based on a contact or lead's response in a journey.
• Update a person or business account.

Sales and Service Cloud Activity Types

Object activity Creates or updates a standard Salesforce object record, such as a


lead, task, or custom object, when a contact in the journey reaches
this activity. Use this activity to create or update a standard
Salesforce object record, such as a lead or task, or a custom object
record.

Campaign Member activity Creates a connection between campaigns, contacts, and leads,
which helps define a relationship to the status within a campaign.
Use this activity to track important moments of engagement
throughout the journey.

Convert Lead activity Converts qualified leads from the Sales and Service Cloud into a
contact or account. This activity schedules important actions, such
as assigning a lead owner, creating an opportunity or task, and
changing the lead’s conversion status.

Task activity Create a task in Sales and Service Cloud for each Marketing Cloud
contact that reaches this activity. For more information, see
Marketing Cloud Connect.

Account Activity Creates or updates an account in Sales and Service Cloud for each
contact that reaches this activity. If you have a Person Account,
you can create or update both Business and Person Account
activities. To learn more about how to configure activities with
Person Accounts, see Use Person Accounts with Sales and Service
Cloud Activities.

Contact Activity Creates or updates a contact from Sales or Service Cloud using
Sales or Service Cloud data brought into a journey or Marketing
Cloud contact data.

Case Activity Creates a case and associates it to the Sales and Service Cloud
contact that matches the Marketing Cloud contact's ID. Or create
a Sales and Service Cloud contact to associate to the case.

347
Marketing Cloud Journeys and Automations Sales and Service Cloud Activities

Lead Activity Creates or updates a lead from Sales or Service Cloud using Sales
or Service Cloud data brought into a journey or Marketing Cloud
contact data.

Opportunity Activity Creates an opportunity record in Sales and Service Cloud. Use
Marketing Cloud contact attributes to populate the fields in the
opportunity record, or populate each record with fixed values you
choose.

Legacy Activities These Sales and Service Cloud canvas activities appear in old
journeys but are no longer available to use in new journeys.

Account Activity in Journey Builder


Use the Account activity in the Marketing Cloud Journey Builder app to create or update an account in Sales and Service Cloud based
on attribute relationships. Populate Sales and Service Cloud account fields with Marketing Cloud attributes or other values from the
journey, or with fixed values you designate.
Campaign Member Activity in Journey Builder
The Campaign Member activity in Journey Builder provides a connection between campaigns, contacts, and leads. This connection
helps define a relationship between the contact or lead and the status within a campaign. Use the Campaign Member activity to
track important moments of engagement throughout the journey.
Contact Activity in Journey Builder
Use the Contact Activity in Marketing Cloud’s Journey Builder app to create or update a Sales and Service Cloud contact based on
attribute relationships. Or populate Sales and Service Cloud contacts with values from Marketing Cloud attributes.
Convert Lead Activity
Use the Convert Lead activity in Marketing Cloud’s Journey Builder to convert qualified leads from Sales and Service Cloud into a
contact or an account. Assign a lead owner and notify that person via email. Create an opportunity and task.
Object Activity in Journey Builder
Use the Object activity in Journey Builder to create or update a Sales or Service Cloud record in an object. You can also use this activity
to create or update a custom object.
Task Activity
Use the Task activity to create a Sales or Service Cloud task with pre-populated field values. Connect Journey Builder and contacts,
leads, and tasks. Create or update a Sales or Service Cloud task for a contact or lead that reaches this journey activity. The activity
assigns tasks to the contact or lead owner, Salesforce System user, or a custom-defined user.
Sales and Service Cloud Legacy Activities in Journey Builder
These Sales and Service Cloud canvas activities appear in old journeys but are no longer available as options for new journey activities.
Best Practices for Integration Activity Fields
Sales and Service Cloud activities follow a similar configuration workflow. Consider these tips during configuration.
Sales and Service Cloud Activity Field Validation and Error Handling
Review the requirements for Sales and Service Cloud activity field values. Incorrect field values can cause activity errors in Marketing
Cloud’s Journey Builder.

348
Marketing Cloud Journeys and Automations Sales and Service Cloud Activities

Journey Builder Sales and Service Cloud Best Practices


Review these best practices to prevent a Sales or Service Cloud activity from negatively impacting your account. Adhering to these
practices can lessen impact on other journeys in your enterprise and improve processing times.

SEE ALSO:
Journey Builder Sales and Service Cloud Best Practices
Marketing Cloud Connect

Account Activity in Journey Builder


Use the Account activity in the Marketing Cloud Journey Builder app to create or update an account in Sales and Service Cloud based
on attribute relationships. Populate Sales and Service Cloud account fields with Marketing Cloud attributes or other values from the
journey, or with fixed values you designate.

Create an Account Activity in Journey Builder


Follow these steps to create a Sales and Service Cloud account activity in Marketing Cloud’s Journey Builder app.
Update an Account Activity in Journey Builder
Follow these steps to update a Sales and Service Cloud account through a Journey Builder activity in Marketing Cloud.

Create an Account Activity in Journey Builder


Follow these steps to create a Sales and Service Cloud account activity in Marketing Cloud’s Journey Builder app.
1. Drag the Object activity onto the canvas and click Configure.
2. Select Create New.
3. Select fields from the Account object and assign them values. Use a static value, Marketing Cloud attributes, or fields from other
Sales or Service Cloud objects in the journey.
4. Enter a name and save.

Update an Account Activity in Journey Builder


Follow these steps to update a Sales and Service Cloud account through a Journey Builder activity in Marketing Cloud.
1. Select the object to update.
2. Click Find and Update, or click Simple Update when journey data includes the object record you are updating.
Find and Update requires that you have an Account ID in your journey or a Marketing Cloud attribute. You can also choose what
happens when multiple matching records are found or when no records are found. You can use Simple Update option when there
already is an Account object in the journey.

3. Map fields using a static value, Marketing Cloud attributes, or fields from other Sales or Service Cloud objects in the journey.
4. If desired, enter a name, and then save.

Campaign Member Activity in Journey Builder


The Campaign Member activity in Journey Builder provides a connection between campaigns, contacts, and leads. This connection
helps define a relationship between the contact or lead and the status within a campaign. Use the Campaign Member activity to track
important moments of engagement throughout the journey.

349
Marketing Cloud Journeys and Automations Sales and Service Cloud Activities

For example, a welcome campaign for a new customer uses the Campaign Member activity to update status on the contact record
based on engagement splits. These splits include whether the contact clicked certain links or made a purchase.

Create a Campaign Member Activity in Journey Builder


Follow these steps to configure a campaign member activity in Marketing Cloud’s Journey Builder app.

Create a Campaign Member Activity in Journey Builder


Follow these steps to configure a campaign member activity in Marketing Cloud’s Journey Builder app.
To create a record using the Campaign Member activity, a Campaign ID and either a Contact ID or a Lead ID is required.
1. Drag the Campaign Member activity onto the canvas.
2. Click Create New.
3. Select and configure the Marketing Cloud attributes or Sales or Service Cloud fields to update.
4. Enter a name and save.

Note: When mapping fields, you cannot edit the optional Status field until you select a Campaign ID because different
campaigns can have different statuses.

Contact Activity in Journey Builder


Use the Contact Activity in Marketing Cloud’s Journey Builder app to create or update a Sales and Service Cloud contact based on attribute
relationships. Or populate Sales and Service Cloud contacts with values from Marketing Cloud attributes.

Create a Contact Activity in Journey Builder


Create a Sales or Service Cloud contact through the Contact Activity in Marketing Cloud’s Journey Builder.
Update a Contact Activity in Journey Builder
Follow these steps to modify a Sales and Service Cloud Contact activity in Marketing Cloud’s Journey Builder app.

Create a Contact Activity in Journey Builder


Create a Sales or Service Cloud contact through the Contact Activity in Marketing Cloud’s Journey Builder.
1. Drag the Contact activity onto the canvas and click Configure.
2. Click Create New.
3. Map the contact object fields using a static value, Marketing Cloud attributes, or fields from other Sales or Service Cloud objects in
the journey.

Note: Some fields are required.

4. Optionally, enter a name, and then save.

Update a Contact Activity in Journey Builder


Follow these steps to modify a Sales and Service Cloud Contact activity in Marketing Cloud’s Journey Builder app.
Make contact information available to Marketing Cloud or the current journey so you can update it You can then use that information
in the Account Activity to find the proper object and make updates to it.

350
Marketing Cloud Journeys and Automations Sales and Service Cloud Activities

1. Open the journey and select the contact.


2. Click Find and Update, or click Simple Update when journey data includes the object record to update.
Find and Update requires that you have an Account ID in your journey or a Marketing Cloud attribute. You can also choose what
happens when multiple matching records are found or when no records are found. You can use Simple Update option when there
is already an Account object in the journey.

3. Map the object fields using a static value, Marketing Cloud attributes, or fields from other Sales and Service Cloud objects in the
journey.
4. Optionally, enter a name, and then save.

Convert Lead Activity


Use the Convert Lead activity in Marketing Cloud’s Journey Builder to convert qualified leads from Sales and Service Cloud into a contact
or an account. Assign a lead owner and notify that person via email. Create an opportunity and task.

Note: Use this activity to convert only qualified leads. Journey Builder does not verify that leads are qualified before conversion.

Create a Convert Lead Activity


Follow these steps to configure a convert lead activity in Journey Builder.

SEE ALSO:
Lead Conversion Field Mapping
Considerations for Converting Leads

Create a Convert Lead Activity


Follow these steps to configure a convert lead activity in Journey Builder.
1. Drag the Convert Lead activity onto the canvas.
2. Hover over the activity and click Configure.

Note: When a Marketing Cloud contact enters the journey, Journey Builder searches the Sales and Service Cloud to find a
matching lead ID. When no lead ID is found, the lead does not convert.

3. Select the owner of this lead record. To tell Journey Builder where to find the record owner, select Map user. Use the mapper to

locate the user.


4. Enter an Opportunity Name.
5. Set the converted status of each lead record that Journey Builder converts.

351
Marketing Cloud Journeys and Automations Sales and Service Cloud Activities

Note: Use this activity to convert only qualified leads. Journey Builder does not verify that leads are qualified before conversion.

6. To create an account for each converted lead, choose Always Create a New Account. The Lead Company Name becomes the new
account name.
7. To associate the lead to an existing account, choose Use an Existing Account.
• When selecting Look Up By Lead Company Name, choose how Journey Builder handles multiple Lead records with the same
Lead Company Name. If no records with the same Lead Company Name are found, Journey Builder creates an account.
• When you select Look Up By Account ID, drag a Marketing Cloud attribute onto the Sales and Service Cloud field with a matching
value in an account record field. This mapping is used to identify the correct

ercodr.

8. Click Next.
9. When you set up a task, populate only the fields that contain the same data value for each task

created.

352
Marketing Cloud Journeys and Automations Sales and Service Cloud Activities

10. When populating the Subject field, use variables to create the subject dynamically. Click the Subject field to access

variables.
11. Click Next and complete configuration.

Object Activity in Journey Builder


Use the Object activity in Journey Builder to create or update a Sales or Service Cloud record in an object. You can also use this activity
to create or update a custom object.
For example, use the Object activity to create and update a custom policy record indicating that a customer has received the email
confirmation.

Note: Make sure that custom objects are workflow-enabled so you can create or modify then with Object activity.

Considerations for Mapping Fields


• Some objects include options based on the type of field selected. For example, fields that support a user or a group include an icon
that allows you to choose one of these options.
• To update the record of the person who entered the journey, choose Assign to the Person in the Journey. For example, this activity
is useful when the object record type changes after journey activation, such as leads converting to contacts after entering.
• To use the output of event objects or objects created automatically, select an ID from the journey data to select from a list of these
objects.
• To update the record with a Marketing Cloud attribute value, search for the attribute or locate the Marketing Cloud attribute field
containing that value.
• To map a Sales Cloud Number field to a Marketing Cloud field, set up and save the Marketing Cloud Number field as a Decimal field.
Or set the data type of both fields to Text.
• If you use Assignment Rules to define conditions for processing Sales or Service Cloud cases, map the Owner ID when you configure
a Case Activity.

Create an Object Record


Use the Object activity in Journey Builder to create Sales and Service Cloud object records during a journey.
Update an Object Activity
Use the Object activity in Journey Builder to update Sales and Service Cloud object records that are created or updated by the journey
or included in journey data.

SEE ALSO:
Set Up Assignment Rules

353
Marketing Cloud Journeys and Automations Sales and Service Cloud Activities

Create an Object Record


Use the Object activity in Journey Builder to create Sales and Service Cloud object records during a journey.
1. Drag the Object activity onto the canvas and click Configure.
2. Click Create New.
3. Select an object record field .
4. Map each object field using a Sales and Service Cloud field or Marketing Cloud attribute.

Note: Object field options vary by type.

5. Save the value for each object field .


6. Optionally, enter a name.

Update an Object Activity


Use the Object activity in Journey Builder to update Sales and Service Cloud object records that are created or updated by the journey
or included in journey data.
1. Drag the Object activity onto the canvas and click Configure.
2. Select an object to update a record for in the journey.
3. Click Find and Update, or click Simple Update when journey data includes the object record you are updating.
4. Choose the lookup field used to find the specified object.

Tip: Use lookup fields only when journey data does not include the object you want to update or if the journey's entry event
creates or updates the object. The lookup field must correspond to a Marketing Cloud attribute value. If you use Simple Update,
select the ID from Journey Event Data to identify the object record field.

5. Select an option for when multiple records are found or no records are identified.
6. Select an object record field to update with Marketing Cloud data.
7. Configure fields by selecting a Sales and Service Cloud field or Marketing Cloud attribute. Enter at least three letters to see a list of
objects to select from or an 18-character ID to map the value manually. Some objects include options based on the type of field
selected.
8. Save the value and repeat for each object field you want to populate.
9. If you don't want to use the default activity name, enter a new name.

Task Activity
Use the Task activity to create a Sales or Service Cloud task with pre-populated field values. Connect Journey Builder and contacts, leads,
and tasks. Create or update a Sales or Service Cloud task for a contact or lead that reaches this journey activity. The activity assigns tasks
to the contact or lead owner, Salesforce System user, or a custom-defined user.

Create a Task Activity in Journey Builder


Configure a Sales and Service Cloud activity in Marketing Cloud’s Journey Builder app.

Create a Task Activity in Journey Builder


Configure a Sales and Service Cloud activity in Marketing Cloud’s Journey Builder app.

354
Marketing Cloud Journeys and Automations Sales and Service Cloud Activities

1. ClickCreate New or select a record to update during the journey.


2. Map the object fields using Marketing Cloud attributes and Sales and Service Cloud fields.

Table 30: Special Fields for Mapping


Field Required, Recommended, or Description
Optional
Priority Required This Task field must be assigned when
creating a record.

Status Required This Task field must be assigned when


creating a record.

Assigned to ID Recommended This field designates who to assign the task


to. Selecting System User assigns the task
to the Salesforce System user that is set up
during the Marketing Cloud Connect
integration. To map to the owner of a
specific task, use the Owner ID from the
event. If this field is not mapped, it defaults
to the System User.

Name ID Recommended This field associates a task with a contact


or lead. Map to the Lead ID or Contact ID
to select the correct record. Map to Person
in the Journey for a quick configuration.

Related to ID Optional This field associates a task with numerous


object records such as case, account, order,
or campaign.

Subject Recommended This field describes the task.

3. Optionally, enter a name, and then save.

Sales and Service Cloud Legacy Activities in Journey Builder


These Sales and Service Cloud canvas activities appear in old journeys but are no longer available as options for new journey activities.

Choose Object
Use the Choose Object activity to create or update any type of object record in the Sales and Service Cloud. Select the object to
update, then select the fields to update with Marketing Cloud attribute data.
Add to Campaign
Use the Add to Campaign activity to look up Campaigns in the Sales and Service Cloud and add Marketing Cloud contacts to them.
Update the Campaign Member Activity in Journey Builder
Use the Update Campaign activity to update a Campaign record in the Sales and Service Cloud. Also populate campaign member
record fields using the campaign activity with Marketing Cloud contact attributes. You can’t use this legacy activity for new journey
activities. Use the Object activity, Campaign activity, or Convert Lead activity when creating journeys.

355
Marketing Cloud Journeys and Automations Sales and Service Cloud Activities

Contact
Use the Contact activity to create or update a contact in the Sales and Service Cloud for each Marketing Cloud contact that reaches
this activity.
Lead
Use the Lead activity to create or update a lead record in the Sales and Service Cloud for each contact that reaches the activity.
Case
Create a case and associate it to the Sales and Service Cloud contact that matches the Marketing Cloud contact's ID. Or create a Sales
and Service Cloud contact to associate the case to.
Task
Use the Task activity to create a new task in the Sales and Service Cloud for each Marketing Cloud contact that reaches this activity.
See Marketing Cloud Connect for information about using the Sales and Service Cloud.
Opportunity
Use the Opportunity activity to create an opportunity record in the Sales and Service Cloud. Marketing Cloud contact attributes can
be used to populate fields on the opportunity record. Or populate each record with fixed values you choose.
Account
Use the Account activity to create a new or update an existing account in the Sales and Service Cloud for each contact that reaches
this activity.
Use Person Accounts with Sales and Service Cloud Activities
This legacy activity may appear in old journeys but is no longer available as an option for new journey activities. Use the Object
activity, Campaign activity, or Convert Lead activity when creating journeys.

Choose Object
Use the Choose Object activity to create or update any type of object record in the Sales and Service Cloud. Select the object to update,
then select the fields to update with Marketing Cloud attribute data.
This legacy activity may appear in old journeys but is no longer available as an option for new journey activities. Use the Object activity,
Campaign activity, or Convert Lead activity when creating new journeys.
Use this activity to do the following:
• Create a Sales and Service Cloud object of any type
• Update an existing Sales and Service Cloud object
• Populate fields on the new or updated object using values from Marketing Cloud attributes
• Choose when to update Sales and Service Cloud field values
1. Drag the Choose Object activity from the canvas activities pane onto the canvas.
2. Hover over the Choose Object activity icon on the canvas.
3. To rename the activity, click Choose Object.
4. Click Configure.
5. Select an object from the dropdown. This selection is the type of object the activity creates.
a. Use Create or Update to create a Sales and Service Cloud object if no existing Sales and Service Cloud object can be identified
using Marketing Cloud attributes.
When a Sales and Service Cloud object is identified using the Marketing Cloud attribute you designate, that Sales and Service Cloud
object record is updated.
6. Use Create Only to create a Sales and Service Cloud object record for each Marketing Cloud object that reaches the activity.

356
Marketing Cloud Journeys and Automations Sales and Service Cloud Activities

7. When choosing Create or Update, select the Marketing Cloud attribute that is used to identify a Sales and Service Cloud object so
the object’s record is updated.
If a Sales and Service Cloud object record is not found, a new record is created.
8. To find the Marketing Cloud attribute to use to identify the desired Sales and Service Cloud object to update, type a value in the
Search field if necessary.
9. Alternately, scroll through the attribute groups shown if necessary. Click the attribute group that contains the desired value, then
scroll down to locate the value.
10. Drag the Marketing Cloud attribute whose value matches a value on your existing Sales and Service Cloud object record field and
can be used to identify the correct record. Only one Marketing Cloud attribute can be mapped to a Sales and Service Cloud object
record field.
11. To select the type of object record field desired, use the dropdown menu next to the Sales and Service Cloud search field.
12. Scroll down to designate what happens if more than one matching object record is found.
13. Click Next.
14. To locate a specific attribute, click an attribute group in the Marketing Cloud column.
15. To view the path, hover over the name of the data extension.
16. Drag a Marketing Cloud attribute to the Sales and Service Cloud account value it populates.
17. To select account record field type, use the dropdown menu next to the Sales and Service Cloud search field if necessary.
18. Use Hide Defined Fields to show only fields that have not been matched to a Marketing Cloud attribute if necessary.
19. Use Set Fixed Values when the same value is to be added to each Sales and Service Cloud account record when an object this
activity creates.

Tip: This mapping is visible when mapped fields are displayed-- by clicking Map Fields-- as well.

20. Choose how to update the fields mapped on the previous step.
a. Make a selection for each mapped field.

21. Click Next.


22. Click Done.

Add to Campaign
Use the Add to Campaign activity to look up Campaigns in the Sales and Service Cloud and add Marketing Cloud contacts to them.
Add to a Campaign is a legacy activity included in some old journeys but is no longer available as an option for new journey activities.
Use the Object activity, Campaign activity, or Convert Lead activity when creating journeys.
Use this activity to do the following:
• Select a campaign to associate a member to
• Set the status for new campaign members
1. Drag the Add to Campaign activity from the canvas activities pane onto the canvas.
2. Hover over the Add to Campaign activity icon on the canvas.
3. To rename the activity, click Add to Campaign.
4. Click Configure.
5. Select a campaign.

357
Marketing Cloud Journeys and Automations Sales and Service Cloud Activities

a. If the campaign is not shown, leave the campaign field blank and identify it using Campaign ID on Step 2.

6. To determine each new member's status, choose a value from the Campaign Member Status dropdown menu.
7. If Journey Builder can't match a contact entering the journey to a Salesforce contact, identify where a lead or contact ID is stored.
Use the first option to search within the Marketing Cloud with an ID value you already know. Type this value in the search field, or
navigate through attribute groups.
Use the second option if you know which Marketing Cloud attribute contains a key value that matches a value in the Sales Cloud.
Use the key value to match the contact added to the campaign with a data record in the Sales Cloud. To make this association, drag
an attribute from the Marketing Cloud pane onto the Sales Cloud lookup field.
Use both options to look up an ID. Then provide an attribute field where that ID value is found when looking it up is unsuccessful.

8. Select an option under If more than one record is found:.


9. Click Next.
10. To locate a specific attribute, click an attribute group in the Marketing Cloud column.
11. To view its path, hover over the name of the data extension.
12. Drag a Marketing Cloud attribute that identifies the campaign to the corresponding Sales and Service Cloud campaign value.
13. Use Set Fixed Values when the same value is used to identify the campaign each time.

Tip: This mapping is visible when mapped fields are displayed-- by clicking Map Fields-- as well.

14. Click Next.


15. Click Done.

Update the Campaign Member Activity in Journey Builder


Use the Update Campaign activity to update a Campaign record in the Sales and Service Cloud. Also populate campaign member record
fields using the campaign activity with Marketing Cloud contact attributes. You can’t use this legacy activity for new journey activities.
Use the Object activity, Campaign activity, or Convert Lead activity when creating journeys.
1. Drag the Update Campaign activity onto the canvas.
2. Hover over the Update Campaign activity.
3. To rename the activity, click Update Campaign and click Configure.
4. If the campaign is found in the Sales and Service Cloud, select Look Up Campaign member.
a. Select a campaign.
b. To determine each new campaign member's status, choose a value from the Campaign Member Status dropdown menu.
c. Click Next.

5. If the campaign isn’t found here, select Look Up Campaign member.


6. Map a Marketing Cloud field that contains an ID value to the Campaign ID field in the Sales and Service Cloud then click Next.
7. If the campaign member is found in the Marketing Cloud, select Use Campaign Member.
a. Select the attribute group that contains the desired value, then scroll down to locate the value.
b. Click the Marketing Cloud attribute whose value matches a value on your existing Sales and Service Cloud contact record field
then click Next.

8. Drag a Marketing Cloud attribute to the Sales and Service Cloud campaign member record value it populates.

358
Marketing Cloud Journeys and Automations Sales and Service Cloud Activities

9. To select the type of campaign member record field, use the All Types dropdown menu .
10. To show only fields not matched to a Marketing Cloud attribute, use Hide Defined Fields.
11. Use Set Fixed Values when the same value is added to each Sales and Service Cloud campaign member record.

Tip: This mapping is visible when mapped fields are displayed-- by clicking Map Fields-- as well.

12. Click Next and click Done.

Contact
Use the Contact activity to create or update a contact in the Sales and Service Cloud for each Marketing Cloud contact that reaches this
activity.
This legacy activity may appear in old journeys but is no longer available as an option for new journey activities. Use the Object activity,
Campaign activity, or Convert Lead activity when creating new journeys.
Use this activity to do the following:
• Update existing Sales and Service Cloud contacts based on Marketing Cloud attribute relationships
• Create a new Sales and Service Cloud contact for Marketing Cloud contacts that reach this activity.
• Populate Sales and Service Cloud contacts with Marketing Cloud attributes
1. Drag the Contact activity from the canvas activities pane onto the canvas.
2. Hover over the Contact activity icon on the canvas.
3. Click Contact to rename the activity.
4. Click Configure.
5. Identify and update a Sales and Service Cloud contact or create a new one.
a. To create a new Sales and Service Cloud contact if no existing Sales and Service Cloud contact is found using Marketing Cloud
attributes, use Create or Update. When a Sales and Service Cloud contact is identified using the Marketing Cloud attribute you
designate, that Sales and Service Cloud contact record is updated.
b. Use Create Only to create a Sales and Service Cloud contact record for each Marketing Cloud contact that reaches the activity.
c. Use Update Only to update the Sales and Service Cloud contact record that is identified.

6. When choosing Update or Create or Update, the mapper works as follows. If this Marketing Cloud contact is linked to a Sales and
Service Cloud contact, Journey Builder associates the opportunity to that contact. If not, Journey Builder searches the Sales and
Service Cloud using the key defined here. The opportunity is associated to the contact that is found. If a Sales and Service Cloud
contact record is not found, a record is created. Choose the Marketing Cloud attribute(s) that should be used to identify a Sales and
Service Cloud contact.
a. Type a value in the Search field to find the Marketing Cloud attribute to use to identify a Sales and Service Cloud contact to
update.
b. Alternately, scroll through the attribute groups shown. Click the attribute group that contains an identifying value, then scroll
down to locate the value.
c. Drag the Marketing Cloud attribute whose value identifies an existing Sales and Service Cloud contact record to the field it
populates.
d. Only one Marketing Cloud attribute can be mapped to a Sales and Service Cloud contact record field.
e. Use the dropdown menu next to the Sales and Service Cloud search field to select the type of contact record field desired.

7. Scroll down to designate what should happen if more than one contact match is found.

359
Marketing Cloud Journeys and Automations Sales and Service Cloud Activities

Note: If more than one Sales and Service Cloud record that matches the Marketing Cloud key is found, the selection made
here dictates whether Journey Builder creates a completely new Sales and Service Cloud record or not.

8. Click Next.
9. Click Map Fields to map Marketing Cloud attributes to an existing Sales and Service Cloud field when this record is updated. Or click
Set Fixed Values to select or enter values to an existing Sales and Service Cloud field that is created when this record is updated.
10. Use Map Fields to map the Marketing Cloud attribute fields that should be used to update the Sales and Service Cloud contact
record with the values they contain.

Note: A Marketing Cloud attribute must be mapped to Sales and Service Cloud record fields in the Required section.

a. Click an attribute group in the Marketing Cloud column to locate a specific attribute.
b. Hover over the name of the data extension to view the path.
c. Drag a Marketing Cloud attribute to the Sales and Service Cloud contact value it populates.

11. Use the drop-down menu next to the Sales and Service Cloud search field to select the type of field desired.
12. Use Hide Defined Fields to show only fields not matched to a Marketing Cloud attribute.
13. Use Set Fixed Values if an identical fixed value should be added to each Sales and Service Cloud contact record when this activity
updates or creates a contact. This mapping is visible when mapped fields are displayed by clicking Map Fields. Set identical values
on each contact record
14. Click Next.
15. Use the Set Update Options screen to choose how to update the fields mapped on the previous step.
a. Make a selection for each mapped field.

16. Click Next.


17. Click Done.

Lead
Use the Lead activity to create or update a lead record in the Sales and Service Cloud for each contact that reaches the activity.
This legacy activity may appear in old journeys but is no longer available as an option for new journey activities. Use the Object activity,
Campaign activity, or Convert Lead activity when creating new journeys.
Use this activity to do the following:
• Create a lead record
• Update an existing lead record
• Update fields on a lead record with Marketing Cloud attribute values
• Choose when to update a lead record
1. Drag the lead activity from the canvas activities pane onto the canvas.
2. Hover over the lead activity icon on the canvas.
3. To rename the activity, click Lead.
4. Click Configure.
5. Choose Create or Update, Create Only, or Update Only.

360
Marketing Cloud Journeys and Automations Sales and Service Cloud Activities

Create or Update directs Journey Builder to search the Sales and Service Cloud for an existing lead ID that matches the contact ID
for the Marketing Cloud contact. If no match is found, Journey Builder searches based on the value you supply using the mapper
on this page.
a. Map the Marketing Cloud attribute field that contains an ID that can identify existing leads in the Sales and Service Cloud.
If a Sales and Service Cloud account record is not found, a new record is created.

6. When choosing Create Only, set Assignment Rules to dictate who the lead is assigned to.
7. Update Only directs Journey Builder to search the Sales and Service Cloud for an existing lead ID that matches the contact ID for
the Marketing Cloud contact. If no match is found, Journey Builder searches based on the value you supply using the mapper on
this page.
a. Map the Marketing Cloud attribute field that contains an ID that can identify existing leads in the Sales and Service Cloud.
If a match still is not found, no lead is created or updated.

8. When choosing Create or Update or Update Only, scroll down to select an option for when more than one record matches the
contact ID or key provided.

Note: Create a new record is not available when using Update Only.

9. With each option, set Assignment Rules to dictate whom the lead is assigned to.
10. Click Next.
11. To locate a specific attribute, click an attribute group.
a. To view its path, hover over the name of the data extension.

12. Drag a Marketing Cloud attribute to the Sales and Service Cloud lead value it populates.
13. Select the type of lead field desired.
14. Use Hide Defined Fields to show only fields that have not been matched to a Marketing Cloud attribute.
15. Use Set Fixed Values when the same value is added to each Sales and Service Cloud lead record when this activity creates a lead.

Tip: This mapping is visible when mapped fields are displayed-- by clicking Map Fields-- as well.

16. Click Next.


17. Select all fields or, to set update options individually, select individual fields.
a. Choose how to update the fields mapped on the previous step.
b. Make a selection for each mapped field.

18. Click Next.


19. Click Done.

Case
Create a case and associate it to the Sales and Service Cloud contact that matches the Marketing Cloud contact's ID. Or create a Sales
and Service Cloud contact to associate the case to.
This legacy activity may appear in old journeys but is no longer available as an option for new journey activities. Use the Object activity,
Campaign activity, or Convert Lead activity when creating new journeys.
Use the Case activity to do the following:
• Create a case and associate it to the Sales and Service Cloud contact that matches the Marketing Cloud contact's ID.

361
Marketing Cloud Journeys and Automations Sales and Service Cloud Activities

• Create a Sales and Service Cloud contact to associate the case to.
• Create a case without associating it to a contact.
• Update case fields with Marketing Cloud attribute values.
• Assign new or updated cases using assignment rules.
1. Use Create Only to create or identify a contact to associate with the case this activity creates. Alternately, use Update Only to locate
cases to update.
2. Choose when contacts are created, updated, or associated to a case.
3. When updating, provide a key for Journey Builder to use to identify cases to update.
4. Select Assignment Rules.

Note: Assignment Rules determine how cases are assigned to users or put into queues as they are created.

5. Click Next.
6. Use Map Fields to map Marketing Cloud attribute fields that update the Sales and Service Cloud case record with their values.
7. To map attribute values to the case record, click Case in the left pane.
8. To map Marketing Cloud attribute fields whose values populate the Sales and Service Cloud contact, click Contacts if necessary.
a. To map fields, click an attribute group in the Marketing Cloud column to locate a specific attribute.
b. To view its path, hover over the name of the data extension.
c. Drag a Marketing Cloud attribute to the Sales and Service Cloud case value it populates.
d. To select the desired field type, use the dropdown menu next to the Sales and Service Cloud search field.
e. To show fields not matched to a Marketing Cloud attribute, select Hide Defined Fields.

9. Use Set Fixed Values when the same value is added to each Sales and Service Cloud case record when this activity creates a case.
10. To display mapped fields, click Map Fields.
11. Click Next.
12. Click Done.

Task
Use the Task activity to create a new task in the Sales and Service Cloud for each Marketing Cloud contact that reaches this activity. See
Marketing Cloud Connect for information about using the Sales and Service Cloud.
This legacy activity may appear in old journeys but is no longer available as an option for new journey activities. Use the Object activity,
Campaign activity, or Convert Lead activity when creating new journeys.
Use this activity to do the following:
• Create a new Sales and Service Cloud task with pre-populated field values you designate
• Associate the new task to a Sales and Service Cloud Contact or Lead
• Associate related objects, like an account or a campaign, to the new Task
• Automatically assign new tasks to the Contact/Lead owner, Salesforce System User, or a custom-defined user

Note: To update an existing task, use the Choose Object activity in the journey and select Task.

1. Drag the Task activity from the canvas activities pane onto the canvas.
2. Hover over the Task activity icon on the canvas.

362
Marketing Cloud Journeys and Automations Sales and Service Cloud Activities

3. Click Task to rename the activity.


4. Click Configure.
5. On the Configure Task page, populate fields that should contain the same value for each new task, like Subject and Reminder
Day/Time. Populate only those fields that should contain the same data value for each task created.
a. When populating the Subject field, use variables to create the subject dynamically. Click the Subject field to access variables.

6. Scroll down to designate whether new tasks should be associated to the Marketing Cloud contact who reaches this activity, a Contact
or a Lead within the Sales and Service Cloud, or no one.
When selecting the first option, Journey Builder searches for a Sales and Service Cloud contact or lead that matches the Marketing
Cloud contact in the Interaction. If no matching Sales and Service Cloud contact or lead is found, the task is not associated to a
contact or lead. To associate the task to a Contact or a Lead within the Sales and Service Cloud, use the mapper. Drag a Marketing
Cloud attribute onto the Sales and Service Cloud field that contains a value that matches a value in a Sales and Service Cloud Contact
or Lead record field. This mapping is used to identify the correct record. Use the search field to locate a field whose name you know.
Use the drop-down menu next to the Sales and Service Cloud search field to select the type of Contact or Lead field desired.

7. Scroll down to designate who to assign the task to: the owner of the associated Contact or Lead, the Salesforce System User, or a
user you map to on a subsequent step.
8. Select an option.
9. Click Next.
10. Select a mapping option: Additional Fields or Related Objects.
a. Select Additional Fields to map Marketing Cloud attributes to task record fields.
b. Select Related Objects to map a Marketing Cloud attribute that identifies a Sales and Service Cloud object that is related to the
task record.

Note: Only one related Sales and Service Cloud object can be associated to a task using this activity.

11. When mapping Additional fields, click an attribute group in the Marketing Cloud column to locate a specific attribute.
12. Map the Marketing Cloud attribute fields whose values should be mapped from the Marketing Cloud to the new task record. Use
this step to configure fixed values that should be identical on each task record.
13. Hover over the name of the data extension to view the path.
14. Click Map Fields to map Marketing Cloud attributes to an existing Sales and Service Cloud field when this record is created.
15. Click Set Fixed Values to map values to an existing Sales and Service Cloud field.
16. Click Next.
17. Click Done.

Example: A marketer intends to associate a case to a task using this activity. The marketer clicks Related Objects. The marketer
then clicks an attribute group called Sales and Service Cloud Objects. The marketer clicks through the attribute group to reach the
Cases data extension. The marketer locates a data attribute called CaseNumber. Dragging this attribute into the Sales and Service
Cloud column of the mapper, the marketer associates the case in the Cases data extension whose ID matches a case in the Sales
and Service Cloud. When a new task is created, this case is associated to it.

Opportunity
Use the Opportunity activity to create an opportunity record in the Sales and Service Cloud. Marketing Cloud contact attributes can be
used to populate fields on the opportunity record. Or populate each record with fixed values you choose.

363
Marketing Cloud Journeys and Automations Sales and Service Cloud Activities

This legacy activity may appear in old journeys but is no longer available as an option for new journey activities. Use the Object activity,
Campaign activity, or Convert Lead activity when creating new journeys.
Use this activity for the following:
• Create an opportunity
• Tell Journey Builder who should be in the opportunity contact role
• Associate the opportunity to a contact or lead Identify the campaign that is the source of the opportunity
1. Drag the Opportunity activity from the canvas activities pane onto the canvas.
2. Hover over the Opportunity activity icon on the canvas.
3. Click the Opportunity to rename the activity.
4. Click Configure.
5. Use the Add Details page to populate fields that should contain identical values on each record. The fields shown correspond to
fields in a Sales and Service Cloud opportunity record.
Use this step to add details each opportunity should have in common. Each option populates a field on the opportunity record in
the Sales and Service Cloud. Additionally, choose whether an Opportunity Contact Role should be created for the Marketing Cloud
contacts that reach this activity on this step.
For example, if the Opportunity created for each Marketing Cloud contact that reaches this activity should be in the Prospecting
stage, set that value using the Stage dropdown menu.

Note: Variables based on Marketing Cloud attributes can be used in the Opportunity Name. The attribute value is then filled
in when the opportunity is created.

6. Click Format Text to add Marketing Cloud attributes in the Opportunity Name.
7. Click Done.
If no fields in the new opportunity record should be populated with these values-- or if all values on each record should be distinct,
or mapped on the next step-- skip the steps above.

8. Select Create an Opportunity Contact Role if the Marketing Cloud contact reaching this activity should become the Opportunity
Contact. If no match is found in the Sales and Service Cloud for the contact ID, the Opportunity Contact Role is not populated.
9. Use the campaign mapper to search for and select the campaign that is the source of the opportunity.
10. Select a mapping option: Additional Fields or Opportunity Contact Role.
a. Select Additional Fields to map Marketing Cloud attributes to populate opportunity record fields
b. Select Opportunity Contact Role to find the Marketing Cloud attribute field that contains a value that can be used to populate
fields in this role. Alternately, click Set Fixed Values to set a value that is the same in each opportunity record created.
For example, if each Opportunity Contact should be placed in the Influencer role, click Set Fixed Values and select Influencer in
the Role field.

c. Click Apply.

11. When mapping Additional fields, click an attribute group in the Marketing Cloud column to locate a specific attribute. Hover over
the name of the data extension to view the path.
12. After locating the attribute, drag it onto the Sales and Service Cloud field it should populate. Sales and Service Cloud fields that are
already populated by options selected on Step 1 are shown on Step 2.
13. Alternately, click Set Fixed Values to apply the same attribute values to each new opportunity record that is created. Click a field
shown on this page to type in a value.
14. Click Next.

364
Marketing Cloud Journeys and Automations Sales and Service Cloud Activities

15. Click Done.

Account
Use the Account activity to create a new or update an existing account in the Sales and Service Cloud for each contact that reaches this
activity.
This legacy activity may appear in old journeys but is no longer available as an option for new journey activities. Use the Object activity,
Campaign activity, or Convert Lead activity when creating new journeys.
The Account activity does the following:
• Creates an account for each Marketing Cloud contact or updates an existing account using its account ID or a Marketing Cloud
attribute corresponding to that field
• Populates Sales and Service Cloud account fields with Marketing Cloud attributes
• Populates Sales and Service Cloud account fields with fixed values you designate
1. Drag the account activity from the canvas activities pane onto the canvas.
2. Hover over the account activity icon on the canvas.
3. Click Account to rename the activity.
4. Click Configure.
• Use Create or Update to choose to create a new Sales and Service Cloud account if no existing Sales and Service Cloud account
can be identified using Marketing Cloud attributes. When a Sales and Service Cloud account is identified using the Marketing
Cloud attribute you designate, that Sales and Service Cloud account record is updated.
• Use Create Only to create a new Sales and Service Cloud account record for each Marketing Cloud contact that reaches the
activity.

5. In the Account Management section, follow these instructions.


a. Type a value in the Search field to find the Marketing Cloud attribute to use to identify the desired Sales and Service Cloud
account to update.
b. Alternately, scroll through the attribute groups shown. Click the attribute group that contains the desired value, then scroll down
to locate the value.
c. Drag the Marketing Cloud attribute whose value matches a value on your existing Sales and Service Cloud account record field
and can be used to identify the correct record.
d. Only one Marketing Cloud attribute can be mapped to a Sales and Service Cloud account record field.
e. Use the dropdown menu next to the Sales and Service Cloud search field to select the type of account record field desired.

6. Scroll down to designate what should happen if more than one account match is found.
7. Select Assignment Rules if the active assignment rule should be observed.
8. Click Next.
9. Click an attribute group in the Marketing Cloud column to locate a specific attribute. Hover over the name of the data extension to
view the path.
10. Drag a Marketing Cloud attribute to the Sales and Service Cloud account value it populates.
11. Use the dropdown menu next to the Sales and Service Cloud search field to select the type of account record field desired.
12. Use Hide Defined Fields to show only fields that have not been matched to a Marketing Cloud attribute.

365
Marketing Cloud Journeys and Automations Sales and Service Cloud Activities

13. Use the Set Fixed Values option when the same value should be added to each Sales and Service Cloud account record when a
account is created by this activity. Click Map Fields to display mapped fields.
14. Click Next.
15. Use the Set Update Options screen to choose how to update the fields mapped on the previous step. Make a selection for each
mapped field.
These update options are available:
• Always Overwrite
• Overwrite (Existing Value Present)
• Overwrite (Existing Value Not Present)

16. Click Next.


17. Click Back to amend the selections made on Steps 1-3.
18. Click Done.

Use Person Accounts with Sales and Service Cloud Activities


This legacy activity may appear in old journeys but is no longer available as an option for new journey activities. Use the Object activity,
Campaign activity, or Convert Lead activity when creating journeys.
Use the Account, Task, and Case activities to update Person Accounts.

Update Person Accounts


Journey Builder updates person accounts using the Account activity.
Update Business Accounts
Journey Builder updates business accounts using the Account activity.
Associate Cases and Tasks to Person Accounts
Journey Builder associates cases and tasks to person accounts using the corresponding activities.

Update Person Accounts


Journey Builder updates person accounts using the Account activity.

Note: This legacy activity may appear in old journeys but is no longer available as an option for new journey activities. Use the
Object activity, Campaign activity, or Convert Lead activity when creating new journeys.
1. Drag the Account activity onto the Journey Builder canvas.
2. Click Configure.
3. Using the Create or Update option, follow steps 1–3 at Account. Journey Builder attempts to retrieve the Person Contact ID of the
Account record and uses the mapper under Account Management to look up the field if it is not found in the Marketing Cloud.
4. Select an option to designate what should happen if more than one account match is found.
Multiple matching accounts can be found when the Account record's external ID is not unique.

5. Select Assignment Rules to observe the active assignment rule.


6. Click Next.
Follow the remaining steps at Account to complete activity configuration.

366
Marketing Cloud Journeys and Automations Sales and Service Cloud Activities

Update Business Accounts


Journey Builder updates business accounts using the Account activity.
1. Drag the Account activity onto the Journey Builder canvas.
2. Click Configure.
3. Using the Create or Update option, follow steps 1–3 at Account. Journey Builder attempts to retrieve the Sales and Service Cloud
Account ID of the Account record. It then uses the mapper under Account Management to look up the field if it is not found in the
Marketing Cloud.
4. Select an option to designate what happens if more than one account match is found. Multiple matches can occur when the external
ID used on the Account record is not unique.
5. Select Assignment Rules if the journey should observe the active assignment rule.
6. Click Next.
Follow the remaining steps at Account to complete activity configuration.

Associate Cases and Tasks to Person Accounts


Journey Builder associates cases and tasks to person accounts using the corresponding activities.
1. Drag a Case or Task activity onto the Journey Builder canvas.
2. Click Configure.
3. Follow the steps listed on Task or Case.
For Tasks: UnderHow do you want to associate a Contact or Lead?, select Associate the task to the Marketing Cloud contact
in this journey.
For Cases: Under How do you want to associate a Contact or Lead?, select Associate the task to a mapped contact or lead.
Map the Case to a Marketing Cloud contact ID.

Best Practices for Integration Activity Fields


Sales and Service Cloud activities follow a similar configuration workflow. Consider these tips during configuration.
• Some objects include more options based on the type of field selected. For example, fields that support a user or a group include
an icon that allows you to choose one of these options.
• To use the output of event objects or records created in the journey, select an ID from journey data. Then, select from a list of these
objects.
• To update the field with a Marketing Cloud attribute value, search for the attribute or locate the Marketing Cloud attribute field
containing that value.
• You can use Marketing Cloud Contact or Journey Data attribute values, including the object record ID, to update any field. For text
fields, you can combine static text and dynamic content.

Example: For example, to create a task to follow up with a customer, use a static instruction with a dynamic field, like Full Name.
When you map the field, the subject line reads {{Contact_Attribute.”Event Data”.”Full Name”}} for a
customer who is interested in services.
• You can use Assignment Rules to define conditions for how Sales or Service Cloud cases are processed. If you do, map the Owner
ID when configuring a Case Activity to ensure that the journey observes assignment rules.

367
Marketing Cloud Journeys and Automations Sales and Service Cloud Activities

Field Description
Assign to Person in the Journey Select this field to update the record of the person who entered
the journey. This option is useful when the record type changes
after journey activation, such as when leads convert to contacts
after entering the journey.

Dates When mapping an object activity in a journey to update or create


a Sales or Service Cloud object record, select a specific date. Or
select Date Contact Enters Activity and enter a date adjustment.
For example, set a task due date for three days after an activity in
the journey.

IDs ID fields associate a user with the activity, such as Assigned to ID,
Name ID, or Related To ID. When mapping any ID field, enter digits
or letters to find a field or enter %%% for a list of options. Some
activities include assignment options:
• Assign to the system user.
• When mapping Contact ID, use an extra option to assign to
the person in the journey. This option helps when a record
originates as a Marketing Cloud Subscriber Key and a
corresponding Sales Cloud record is created. If you use
synchronized data extensions, this process detects if a lead is
converted to a contact. It then ensures that the task is
associated to the correct record.
• Select an ID from journey data. This ID is assigned to the user
who created or last modified the campaign member.
Some ID fields have a dropdown to select Contact or Lead and
enter the name to select the Contact or Lead field.

Picklist Select from a list of fields or map Marketing Cloud attributes. This
list can contain up to 100 values. After the list exceeds 100 values,
enter your value into a text field.

SEE ALSO:
Journey Builder Sales and Service Cloud Best Practices

Sales and Service Cloud Activity Field Validation and Error Handling
Review the requirements for Sales and Service Cloud activity field values. Incorrect field values can cause activity errors in Marketing
Cloud’s Journey Builder.

Field Validation
Text fields don’t have a specific format, but picklist and boolean fields only allow you to choose from a list. Other field types require a
specific format. Here are the field types with built-in validation requirements that prevent configuration of the activity until they are
resolved.
Email

368
Marketing Cloud Journeys and Automations Sales and Service Cloud Activities

The email field value must follow the common format, [email protected].
Date
The date field is based on your account's time zone. There are four valid date formats.

Format Example
YYYY-MM-DD 2019-05-31

YYYY-MM-DD hh:mm:ss 2019-05-31 15:00:00

YYYY-MM-DDThh:mm:ssZ 2019-05-31T15:00:00Z

YYYY-MM-DDThh:mm:ss.sssZ 2019-05-31T15:00:00.123Z

DateTime
The DateTime is based on your account's time zone. There are three valid formats.

Format Example
YYYY-MM-DD hh:mm:ss 2019-05-31 15:00:00

YYYY-MM-DDThh:mm:ssZ 2019-05-31T15:00:00Z

YYYY-MM-DDThh:mm:ss.sssZ 2019-05-31T15:00:00.123Z

Currency
The currency field accepts numbers only and a maximum of one decimal point. A maximum of two digits can follow the decimal point.
Do not include any digit group separators.

Example Valid Value Example Invalid Value


200 $200

1520.99 1520.990

14000.1 14,000

Integer
The integer accepts only numbers. Do not include decimal points or digit group separators.

Example Valid Value Example Invalid Value


1 1.0

1523810 1,523,810

Double
The double field accepts only numbers and a maximum of one decimal point. Do not include digit group separators.

369
Marketing Cloud Journeys and Automations Journey Builder Administration

Example Valid Value Example Invalid Value


1340.15 1,340.15

56320.00 56,320

Errors
Review the common errors that occur for Sales and Service Cloud activities.
Design-Time Errors
Here are some of the common errors that can result from incorrect activity configuration.
• An invalid or broken integration: Cross-cloud activities require complete and functioning integration with the Sales and Service
Clouds. Some common integration issues can be found here.
• Incorrect permissions: There are permissions in place that allow a user to create integration activities. If those permissions are not
set correctly, the user cannot configure a new activity.
Runtime Errors
Runtime errors occur when a contact enters an activity in a running journey. In some situations, these contacts aren’t processed correctly.
It is difficult to detect these errors because Sales and Service Cloud activities in Journey Builder use soft errors. A soft error does not stop
the contact from continuing through the journey. Here are some common runtime errors.
• Missing or deleted objects: When an object referenced in the activity is no longer available after the journey is activated, the activity
cannot complete its function.
• Row-locking: Some objects, especially CampaignMember, can time out when a contact record locks and the operation stalls.
• Failed Lookups: Sales and Service Cloud activities include options for how to proceed when a lookup fails to find a contact record.
However, it is possible that the lookup request can fail during processing. When the request fails, the activity errors, but the contact
continues in the journey.
• Required Fields: If the selected attribute for a required field is empty, the activity errors.

Journey Builder Sales and Service Cloud Best Practices


Review these best practices to prevent a Sales or Service Cloud activity from negatively impacting your account. Adhering to these
practices can lessen impact on other journeys in your enterprise and improve processing times.
• Don't use Journey Builder as a substitute for the Data Import Wizardor Data Loader for bulk updates.

Note: A Sendable Data Extension is required when configuring a Journey Builder Entry event. The Sendable Relationship of
the Data Extension dictates what value is used for “ContactKey”. Contacts get created in your All Contacts using the Sendable
Relationship Field when injected into Journey Builder even if there are no messaging activities. Using a Sales or Service Cloud
activity can create unwanted contacts in your Marketing Cloud Account.

• Limit the number of fields being updated on the selected Objects.


• Avoid high volume updates to Objects with many related records, such as CampaignMember or Opportunity.
• Journey processing in one business unit can negatively impact processing in another business unit. Distribute activity throughout
your enterprise accordingly.

Journey Builder Administration


Journey Builder includes an administrative interface that is accessed by clicking links in the top navigation.

370
Marketing Cloud Journeys and Automations Journey Builder Administration

• Use Entry Sources to view performance and analytics data for entry sources and to create and configure Shared Entry Events.
• Use Contacts to track individual contacts by their ContactKey, Journey, Event, and more.

Note: Permissions are required to access to the Entry Sources and Contacts links.

Journey Testing
Use Journey Builder’s test feature to confirm that a Marketing Cloud journey behaves as expected. When you use a data extension
as the entry source, you can configure a test to simulate a journey with real contacts. But the classic test mode is available with any
entry source.
Organize Your Journeys
Organize your journeys in folders so they’re easy to access. You can add a journey to a folder when you create and save it. Or drag
one or more journeys from the dashboard into a folder.
Copy a Marketing Cloud Journey
Use Journey Builder’s journey copy feature to duplicate a journey. Copies are created in draft mode and don’t include statistics from
the original journey version, but include the original entry source, goal, and activity flow.
Delete a Marketing Cloud Journey
Remove drafts and journeys you no longer need from Journey Builder. If a journey is running or finishing, stop it before you delete
it.
Journey Tags
Use journey tags to organize your journeys in Journey Builder and make them easily searchable.
Show and Hide Journey Builder Tips
You can show or hide Journey Builder's in-app user tips in Marketing Cloud. Tips are available for new and returning users and are
on by default.
Validate Your Journey
To gain confidence that your journey is error free, use validation in Journey Builder.
Journey Versions
Manage multiple versions of customer journeys in Marketing Cloud’s Journey Builder. Configure a new journey version to change
journey activities without affecting contacts in the current journey version.

Journey Testing
Use Journey Builder’s test feature to confirm that a Marketing Cloud journey behaves as expected. When you use a data extension as
the entry source, you can configure a test to simulate a journey with real contacts. But the classic test mode is available with any entry
source.
Journey Builder requires you to validate and save the journey before you test it. Validation ensures that all elements of the journey’s
design are complete and ready to test. Journey Testing isn’t available for Single Send journeys.

Journey Testing with a Data Extension


If your entry source is a data extension, you can configure a journey test using real Marketing Cloud contacts. This test mode allows you
to view their simulated paths through the journey without sending messages to them or affecting tracking or reporting. Test mode
simulates random and decision split activities, but ignores wait times and contact entry settings. You get an accurate view of how a
journey works without the wait.

371
Marketing Cloud Journeys and Automations Journey Builder Administration

After the test is complete, the journey canvas shows each contact’s expected path. To confirm that the contact progresses through the
journey as intended, click through each contact’s path. Edit the journey as needed. If you edit the entry source or any of the canvas
activities after testing, be sure to save, validate, and test the journey again.

Classic Test Mode


Classic test mode simulates random and decision split activities without sending messages but ignores wait times and contact entry
settings. When you use classic test mode, you must fire the entry event. When the test is complete, the results appear in the workspace.
To begin, click Test. Then fire a contact via API, use the Fire Event activity in Automation Studio, or use another method based on the
journey’s entry source.
When the test is complete, the results appear in the workspace. From there, you can edit the journey if needed.

Configure a Journey Test with a Data Extension


Follow these steps to configure a test that simulates the journey of real contacts in your Marketing Cloud data extension.

Configure a Journey Test with a Data Extension


Follow these steps to configure a test that simulates the journey of real contacts in your Marketing Cloud data extension.
Journey Testing isn’t available for Single Send journeys. Before you configure a test, save and validate the draft journey.
1. Click Test.
2. Click Choose Contacts.
3. Select up to 10 contacts from your data extension.
4. Click the Send Type tab.
5. To send a test message, click Send Only Test Messages and enter an email address.

Note: The test is set to Do Not Send Messages by default.

6. To review the test settings, click Summary.

Tip: You can also review your test settings on the Test Behavior tab.

7. Click Start Test.

Organize Your Journeys


Organize your journeys in folders so they’re easy to access. You can add a journey to a folder when you create and save it. Or drag one
or more journeys from the dashboard into a folder.
You can create and rename folders from the Folders pane. An icon appears when you hover over the root folder, which is called My
Journeys. Click the icon to create, rename, move, and delete folders.
1. After saving a journey, click Organize.
a.
To access folder options, click next to a folder.
If the journey is already in a folder, a warning appears that identifies that folder.

2. From the Journeys dashboard, select one or more journeys.

372
Marketing Cloud Journeys and Automations Journey Builder Administration

Note: You can drag your journeys into a subfolder. Selected folders open to show their subfolders when you drag the journeys
near the folder.

3. Drag the selected journeys into a folder.

Manage Journey Folders


Use journey folders to organize your journeys in Journey Builder. You can create, rename, move, or delete folders as needed.

Manage Journey Folders


Use journey folders to organize your journeys in Journey Builder. You can create, rename, move, or delete folders as needed.

Important: Stop all running journeys in the journey folder before you delete it. Any running journeys are automatically moved
to the My Journeys folder.
1. Click the Journeys tab.
2. Click Folders.
3.
Locate the folder and click .
4. Click Create New, Rename, Move, or Delete.
To create a new or rename an existing folder, enter a name in the field and click away. To move a folder, select the new location and
click Move. To delete a folder, click Delete to confirm.

Copy a Marketing Cloud Journey


Use Journey Builder’s journey copy feature to duplicate a journey. Copies are created in draft mode and don’t include statistics from the
original journey version, but include the original entry source, goal, and activity flow.
You can’t copy a journey from another business unit. Copying a journey creates an entry source for the copied journey. This action breaks
existing relationships in journey activities with Journey Data. If you reference Journey Data in activities for your copied journey, those
activities appear unconfigured on the canvas. Open each activity that references Journey Data and reselect the appropriate attributes
from Journey Data, then save your changes.
Salesforce entry sources in copied journeys are only editable if no other journey or version uses them. To choose a different object, delete
and recreate the entry source.

Important: If the journey includes an automated schedule, create a draft, remove the schedule, and save the journey before you
make a copy. Also, if the journey includes a Path Optimizer activity where a winner is selected, only that winning path is copied.
1.
Open the journey, and click .
2. Click Copy Journey.
3. Enter a name and description.
4. Click Copy.

Delete a Marketing Cloud Journey


Remove drafts and journeys you no longer need from Journey Builder. If a journey is running or finishing, stop it before you delete it.

373
Marketing Cloud Journeys and Automations Journey Builder Administration

Note: Enable the Delete permission to the user’s Journey Builder role to use this feature.
For more details about the permissions granted with user roles in Journey Builder, see Journey Builder Roles and Marketing Cloud
Roles.

Important: You can’t recover a deleted journey.

1.
To delete a journey, open the journey, and click .
2. Click Delete this Version or Delete Journey.
3. Click Delete.

Journey Tags
Use journey tags to organize your journeys in Journey Builder and make them easily searchable.
Journey tags allow you to:
• Search and filter by tag. Filter by one tag at a time.
• Associate multiple tags to a single journey and multiple journeys to a single tag.
• Select up to 100 journeys and relate them to up to 100 tags at a time. Relate as many journeys to as many tags as desired.

Note: To edit or delete tags, you need admin permission. Request access from your Marketing Cloud administrator.

1. Create a Tag
Create a tag from the journeys dashboard in Journey Builder.
2. Tag a Journey
Apply tags to journeys in Journey Builder so they’re easy to filter.

SEE ALSO:
Tags

Create a Tag
Create a tag from the journeys dashboard in Journey Builder.

Note: To edit or delete tags, you need admin permission. Request access from your Marketing Cloud administrator.

1. Select one or more journeys to tag.


2.
Click .
3. Click + New.
4. Type the tag name.
5. Click Create. The new tag is selected by default.
a. To apply the new tag to the selected journeys, click Apply.
b. To continue without tagging a journey, deselect the new tag and close the dialog box.

374
Marketing Cloud Journeys and Automations Journey Builder Administration

Tag a Journey
Apply tags to journeys in Journey Builder so they’re easy to filter.

Note: To edit or delete tags, you need admin permission. Request access from your Marketing Cloud administrator.

1. Select the journeys to tag.


2.
Click .

Note: When you select multiple journeys and at least one is already tagged, but not all selected journeys share this tag, the
tag shows a multi-state indicator.
• To apply the tag to all selected journeys, click the multi-state indicator.
• Click again to deselect the tag and remove it from all selected journeys.
• Click one more time to return to the multi-state indicator and apply it to the originally tagged journeys.

3. Select the tag to apply.


4. Click Apply.

Show and Hide Journey Builder Tips


You can show or hide Journey Builder's in-app user tips in Marketing Cloud. Tips are available for new and returning users and are on
by default.
1. In Marketing Cloud, hover over your name.
2. To show tips, click Show Tips in the dropdown menu.
3. Or, to hide tips, click Hide Tips in the dropdown menu or click Remove Tips.

Validate Your Journey


To gain confidence that your journey is error free, use validation in Journey Builder.
When you create or edit a journey, use validation to fine-tune the journey. Validation confirms that the journey’s components are
configured correctly and work as planned. Components checked include:
• Entry Source
• Entry Schedule
• Decision Splits
• Wait Activities
• Update Contact Activities
• Email Engagement Splits
• Journey Settings
• Journey Goals and Exit Criteria

Note: Messaging, cross-cloud, and custom activities aren’t checked when you click Validate. Journey Builder checks for errors
or configuration issues in these activities when you activate the journey. If the email activity’s personalization strings don’t match
the entry source attributes, include inline validation of those personalization strings. Personalization errors must be resolved for
successful activation.
1. After you design the journey, click Validate.

375
Marketing Cloud Journeys and Automations Journey Builder Administration

a. To validate a Transactional Send journey, configure the activities and click Activate.
• Errors and configuration issues appear in the results drawer.
• Multiple errors for the same activity appear in the same error tile.
• Activities that require attention are highlighted on the canvas.

2. To fix an error, click Edit.


a. To update an activity that doesn’t include the Edit button, click the activity.

3. Correct an error and click Done.


4. Repeat step 3 as needed.
5. Click Revalidate again after fixing configuration errors.
After you validate a journey and resolve any issues, the Test button is enabled. To simulate a journey’s flow, test it before you activate it.

Journey Versions
Manage multiple versions of customer journeys in Marketing Cloud’s Journey Builder. Configure a new journey version to change journey
activities without affecting contacts in the current journey version.

Note: This feature isn’t supported in Single Send journeys.

Only one draft version of a journey can exist at a time. You aren’t required to activate new draft versions immediately. Unfinished drafts
are saved in the versions pane. To edit a draft, click an unfinished draft in the versions pane. After a version is activated, it becomes the
current version. New contacts aren’t admitted into previous versions. Upon activation, this version begins detecting the journey's entry
event and admitting contacts who qualify. A journey's Contact Entry and Journey settings persist across all versions.
The previous version of the journey continues to process contacts until all contacts present when the new version was activated have
exited. Then the previous version becomes inactive. You can create drafts from inactive versions, but you can't relaunch an inactive
version.
You can’t reactivate a stopped version. To activate a new version based on a stopped version, navigate to the stopped version, click New
Draft, then click Activate. Contacts that previously exited the journey aren’t admitted into the new version.

Create a Journey Version


To add, remove, reconfigure, or change the order of activities on the Journey Builder canvas, create a draft version of a Marketing
Cloud journey. To prompt contacts to enter the new version, activate the draft.
Stop a Journey
Stop a customer journey in Journey Builder.
Delete Drafts and Inactive Journeys
You can delete draft and inactive Marketing Cloud journeys in Journey Builder. When you delete an inactive version, all its goal and
performance data is permanently removed. The journey's cumulative totals still include the goal and performance data tied to it.

SEE ALSO:
Update an Email Activity in a Journey

Create a Journey Version


To add, remove, reconfigure, or change the order of activities on the Journey Builder canvas, create a draft version of a Marketing Cloud
journey. To prompt contacts to enter the new version, activate the draft.

376
Marketing Cloud Journeys and Automations Analytics and History

Note: A journey's Contact Entry settings persist across all versions. If the previous version is set to readmit a contact only after
they exit the journey, contacts in the journey are switched to the new journey. After they exit the previous version, they’re eligible
for the new version. If you configure a previous journey version to not readmit contacts, contacts aren’t admitted to the new
version.
1. Open the journey and click New Version.
An editable view of the current journey appears on the canvas.
2. Make your changes to the journey activities.
3. Save your changes.
4. Click Activate.

Important: When a draft is activated, that draft becomes the current version. The version that was current becomes a previous
version.

Stop a Journey
Stop a customer journey in Journey Builder.
When you stop a journey the flow of activities ends and ejects all contacts. Ejected contacts can’t be readmitted into the journey at the
point where the journey stopped. Add ejected contacts to the Event Source data extension again to enter a new version.

Note: If an In-App Message is sent but not yet displayed, stopping the journey isn’t guaranteed to cancel message display. On
the next app open, Marketing Cloud syncs with the MobilePush SDK and tells it to forget the message. If the message is set to
display immediately upon app open, the user sees the message if the sync hasn’t completed.
1. Open the journey.
2. Click Stop.

Delete Drafts and Inactive Journeys


You can delete draft and inactive Marketing Cloud journeys in Journey Builder. When you delete an inactive version, all its goal and
performance data is permanently removed. The journey's cumulative totals still include the goal and performance data tied to it.

Important: You can’t recover deleted drafts.

1. Open the draft or inactive journey version to delete.


2.
Click .
3. Click Delete this Version or Delete Journey.
4. Click Delete.

Analytics and History


Journey Builder includes journey health, history, and dashboards.

377
Marketing Cloud Journeys and Automations Analytics and History

Journey Analytics Dashboard


Access unified cross-channel performance data in Journey Builder, and easily track your marketing campaign’s effectiveness. Journey
Analytics, powered by Google Analytics, unites Marketing Cloud SMS, push messaging, and email capabilities with Analytics behavioral
data in a single dashboard. You can compare how goals configured in Google Analytics perform over time, and you can see ecommerce,
messaging performance, and site usage data.
Use the Journey Analytics Dashboard
To see robust data on Journey Builder emails, push messages, and SMS messages, access the Journey Analytics dashboard in your
Google Analytics-enabled Marketing Cloud account. When the Analytics integration is enabled, any user in your account can access
the dashboard in a journey.
Journey Health
The Health panel in Journey Builder shows goal and journey population data for a running or stopped multi-step journey. The
statistics in the Health panel are shown for the version of the journey you are in currently.
View Journey Health Data
Use the Journey Health panel in Journey Builder to view goal and journey population data for a running or stopped journey.
The Versions Dashboard
The Versions page in Journey Builder provides an overview of all journeys and their performance. Use this page to view all versions
of a journey. You can also copy a version or create a version of the journey.
Journey History
Use Journey Builder’s Journey History feature to view information about a specific contact, journey, or journey version. You can also
view the activity and status history of a contact, journey, or journey version. This view displays the last 30 days of activity by default.
It includes the total number of contacts across all journeys in your account.

Journey Analytics Dashboard


Access unified cross-channel performance data in Journey Builder, and easily track your marketing campaign’s effectiveness. Journey
Analytics, powered by Google Analytics, unites Marketing Cloud SMS, push messaging, and email capabilities with Analytics behavioral
data in a single dashboard. You can compare how goals configured in Google Analytics perform over time, and you can see ecommerce,
messaging performance, and site usage data.
Track your marketing campaign’s effectiveness across views in your account for the date range you select. View and compare how goals
configured in Google Analytics perform, and compare data over different periods.
To use Google Analytics in a journey, link your Salesforce and Google Analytics accounts, and follow Google’s login process.

Considerations
• Any user in your account can access the Journey Analytics dashboard in a journey.
• When Google Analytics is enabled for your account, tracking is available by default in all journeys.
• When you create another version of a journey, it includes tracking even if Google Analytics was disabled when the journey was
created.
• The Journey Analytics data shown on the dashboard pertains to all versions of the journey and isn’t separated by journey version.
• Delivery rate is calculated by subtracting bounces from the number of total sends, and then dividing total sends by that number.
When there are no bounces, delivery rate is 100%.

378
Marketing Cloud Journeys and Automations Analytics and History

The Goals component in Journey Analytics isn’t linked or related to Journey Builder goals or exit criteria. For more information on goals,
see Google Analytics help.

SEE ALSO:
Configure Default Google Analytics Tracking Parameters
Configure the Google Analytics Integration for Marketing Cloud
Enable or Disable Google Analytics
Google Analytics Help Center

Use the Journey Analytics Dashboard


To see robust data on Journey Builder emails, push messages, and SMS messages, access the Journey Analytics dashboard in your Google
Analytics-enabled Marketing Cloud account. When the Analytics integration is enabled, any user in your account can access the dashboard
in a journey.
To use Analytics in a journey, link your Salesforce and Analytics accounts, and follow Google’s login process. Then enable Analytics
Tracking in Journey Settings, and add the domains whose UTM parameters you want to track. If you don’t add a domain, Analytics tracks
all domains that the journey’s links point to.

Note: The Goals component in Journey Analytics isn’t linked or related to Journey Builder goals or exit criteria.

1. To open the Journey Analytics dashboard, open a journey, and click .


2. Select the view to use.
3. To select a range of up to 30 days, click the date range. The date range must begin on or after the first day the journey is active.
You can also select another date range to compare to. The date ranges can’t overlap. The date range must begin on or after the first
day the journey is active. The maximum date range is 30 days. However, you can query the data for three years.
When you select a date range and compare it with a different date range, the rate of change appears in each dashboard tile.

4. Click .
5. To add or remove a view, click View.
6. To select up to five goals, click Goals.
7. To select accounts and properties, click GA4 Property.
8. Click Done.
9. To select data streams, click Data Streams.
10. Click Done.

Note: Changes made to components and their display order persist after you leave the journey.

11. To select email or mobile message metrics, click Filters.


12. Choose whether to show channel performance in aggregate or segregated by channel.
To change the components’ display order, drag each component to the desired position.

379
Marketing Cloud Journeys and Automations Analytics and History

Tip: When SMS activities generate Google Analytics metrics, reporting doesn’t appear in the Content section. SMS messages don’t
include content assets or blocks.

SEE ALSO:
Google Analytics Solutions
Google Analytics Help Center
Create and manage goals
Conversions reports

Journey Health
The Health panel in Journey Builder shows goal and journey population data for a running or stopped multi-step journey. The statistics
in the Health panel are shown for the version of the journey you are in currently.

Contact Path
Use the contact key to search for a contact and view their path through the journey during the last 30 days. From here you can remove
a contact from the journey or gain insight into why a contact exited a journey prematurely.

Goal
The Goal section states the goal in plain language. It also shows the percentage or number of contacts in the journey that reached the
goal under Goal Attainment.
Journey Builder measures goal attainment by comparing the number of contacts who reached the journey goal to the goal target set
during goal configuration.

Note: If you didn’t set a goal target, goal attainment is shown as null (--).

Journey Counts
Under Current Population, view the number of contacts that are currently in the journey. This number represents contacts in a wait
activity at the current time.

Alerts
This section shows the total number of contacts in a wait activity at least 60 minutes past its scheduled expiration. This total is the number
of contacts who haven’t resumed their progress through the journey workflow.
When a wait activity is configured, you choose its duration. To determine when a contact leaves a wait activity, the system adds the
duration you set to the date and time the contact enters the wait activity. After a contact reaches their scheduled end date, they continue
through the workflow of the journey.
Under some conditions, delays occur when Journey Builder processes a contact continuing from a wait activity into the rest of the
journey. The Contacts Past Due in Wait alert displays the number of contacts remaining in a wait activity 60 minutes without continuing
in the journey. This wait alert indicates that processing capability has slowed.

Note: Due to system limitations, the Alerts section refreshes every 60 minutes. This threshold isn’t editable.

380
Marketing Cloud Journeys and Automations Analytics and History

Tip: To see entry results and goal data for all versions of a journey, click the version label in the canvas header.

SEE ALSO:
View a Contact Path in a Journey

View Journey Health Data


Use the Journey Health panel in Journey Builder to view goal and journey population data for a running or stopped journey.
1. Navigate to the Journeys Dashboard, and locate the journey to view.
2. Click the journey.
3.
To access the journey health panel, click
4.
Review the health of the journey, then click to collapse the panel.

SEE ALSO:
Set a Goal in Journey Builder
Entry Results

The Versions Dashboard


The Versions page in Journey Builder provides an overview of all journeys and their performance. Use this page to view all versions of a
journey. You can also copy a version or create a version of the journey.
Access the Versions page by clicking a journey from the Journeys page.

Tip: Journey Builder measures goal attainment by comparing the number of contacts who reached the goal in a journey to the
goal target set during goal configuration.

Note: If no goal target is set, goal attainment is shown as null (--).

Journey History
Use Journey Builder’s Journey History feature to view information about a specific contact, journey, or journey version. You can also view
the activity and status history of a contact, journey, or journey version. This view displays the last 30 days of activity by default. It includes
the total number of contacts across all journeys in your account.
To narrow the journeys included in the history view, set filters for date range, activity, status, and journey. The filter options you select
persist after the filter pane closes. To remove filters, click Clear.

Note: Deleted journeys and journeys in draft mode aren’t included in this historical view.

381
Marketing Cloud Journeys and Automations Analytics and History

Journey History

Value Description
Contact Key The ID associated with a contact record. This field is set in the
contacts data model using the Contact Builder tool.

Journey The name of the journey that the contact entered.

Activity Type The Activity Type message of a contact. Activity Type can be used
with the value in the Status Detail column to diagnose where a
contact is at a given moment.

Activity Name The Journey Builder activities that the contact reached. Activity
names come from the activity’s Name field, which is editable. If no
name is provided, the field is populated with the name of the
triggered send created when a message is sent.

Status The reason the contact entered or didn’t enter the journey, or why
another action occurred. Failed status includes what caused the
failure.

Status Detail The description, if applicable, of what caused the record’s status.

Time The timestamp identifying when the activity occurred. Information


is shown for the last 30 days only. Your computer's timezone setting
determines the time zone the timestamp appears in.

Success Rate The percentage of successes out of all the table records from the
selected journeys.

History Events The time series graph displaying the number of records occurring
over time.

Status Key Reference


Understand the status messages shown on the Contacts page in Journey Builder.
View a Contact Path in a Journey
Use this feature to locate a contact in a running or stopped journey and view the path they took within the last 30 days. From here,
you can determine where a contact is in a journey and if they exited a journey early or finished a journey. You can also remove the
contact from any point in the journey.
View a Contact Path on the Journey History Dashboard
Use this feature to locate a contact in a running or stopped journey and view the path they took within the last 30 days. From here,
you can determine where a contact is in a journey and if they exited a journey early or finished a journey. You can also remove the
contact from any point in the journey.
View a Contact's Journey History in a Journey
You can view a contact’s journey history on the journey canvas. Results are shown for the previous 30 days by default.
View a Contact’s History on the Journey History Dashboard
You can view a contact’s journey history on the Journey History dashboard. Results are shown for the previous 30 days by default.

382
Marketing Cloud Journeys and Automations Analytics and History

View Recent Contacts by Activity


View up to 30 days of contacts processed in any non-wait activity in any active, stopped, or paused journey in Journey Builder. Expand
for a detailed view to identify trends in contact success and error rates to troubleshoot and resolve issues more quickly.
Error Message Troubleshooting
Review possible solutions to common contact journey errors in Journey Builder. These errors can cause a contact to exit a journey
earlier than expected.

SEE ALSO:
Get Started with Contact Builder

Status Key Reference


Understand the status messages shown on the Contacts page in Journey Builder.

Typical Journey Status Messages


These statuses are part of a contact's typical path into and through a journey.
Use the Status value with the Activity Type value to understand where a contact is in a journey and the path that contact took.
The schedule for when a contact is evaluated differs depending upon whether a goal is set to remove them from the journey. Journey
Builder evaluates each contact against a journey's goal criteria at these times:
• Each time a wait period expires
• If the exit option is set on the goal, the goal is evaluated every day at midnight, US Central Standard time

Status Meaning
Complete The activity shown in the Activity Name column finished.

Waiting The contact entered the journey and is in a Wait Period. Journeys
typically include multiple wait periods.

MetCriteria The contact met filter criteria. This status doesn’t refer to goal
criteria. Unless the contact met the goal before entering the
journey, the contact proceeds into the journey.

GoalCriteriaNotMet The contact didn’t meet goal criteria before this activity or any
previous activity in the journey.

GoalCriteriaMet The contact met the goal criteria for this journey on this step. If
goal criteria is also exit criteria, the journey ejects the contact. This
result is reflected in the next status update shown for the contact.

GoalCriteriaAlreadyMet The contact met the journey's goal criteria before reaching this
activity. To find the activity where the contact met goal criteria,
review the journey by sorting by Interaction Name. The status
GoalCriteriaMet is shown on the step where the goal criteria was
met.

DidNotMeetEntryCriteria The contact didn’t meet contact filter criteria for journey entry.
Marketers typically create contact filters, though not in every case.

383
Marketing Cloud Journeys and Automations Analytics and History

Status Meaning
ContactAttempted An event was detected, but not yet processed. If an active journey
uses the event, Journey Builder queues the contacts to enter the
journey. If no active journey uses the event, this terminal status
shows for this instance of the event.

InteractionEventHandled An Event fired and Journey Builder detected it. This status is typically
followed by the EventQueuedForProcessing status. If the status is
shown and a contact fails to enter a journey, report this status
message in any cases you open on our Salesforce Help portal.

EventQueuedForProcessing An Event fired and is waiting to be handled. System traffic effects


processing speed, but usually processing begins immediately. You
can verify that there’s a delay occurring when there have been no
additional entries on the Contact Administration page for 30
minutes or more.

GoalCriteriaMetInWait Journey Builder admitted this contact. The contact then met the
journey's goal criteria while in a wait period. If goal criteria is also
exit criteria, the contact is no longer in the journey.

CurrentlyWaitingInSameInteraction The contact already entered this journey and is in a wait period.
The Contact Entry setting doesn’t allow a single contact to exist
within the journey more than one time.

ContactAlreadyInteraction The contact already entered the journey, but hasn’t yet exited. The
Contact Entry setting doesn’t allow a single contact to exist within
the journey more than one time.

Running A journey that is either actively processing Contacts within the


journey or is still able to process or inject new Contacts into the
journey.

Special Journey Status Messages


These status messages aren’t part of a contact's typical path through a journey. Use these descriptions to diagnose issues with a contact
or journey.
Include your status messages in any cases you open on our Salesforce Help portal.

Status Meaning
ErrorProcessingWaitActivity An error occurred while this contact was in a wait period. Open
the journey to view specific error information.

ErrorValidatingContact An error occurred while validating this contact against the entry
event contact filter. Fire the event again to inject this contact.
Include only this contact in the event if necessary. Report this status
message and ContactKey in any cases you open on our Salesforce
Help portal.

384
Marketing Cloud Journeys and Automations Analytics and History

Status Meaning
InvalidInteractionId The journey was deleted from the system. If the deletion is
unintended, report this status message in any cases you open on
our Salesforce Help portal.

InteractionNotPublished The journey hasn’t been activated. Activate this journey, then fire
the entry event again to inject this contact.

ContactNotFound ContactKey not found when fetching data from contacts. Go to


Contact Builder to ensure that a contact with this ContactKey exists.

ContactObjectNull No contact exists for this ContactKey. Go to Contact Builder to


ensure that a contact with this ContactKey exists.

NotEvaluatingEntryCriteria The journey's entry event or filter isn’t working properly. Modify
the entry event and its contact filter in the journey, then create a
new version. Or, in a shared entry event, modify the event in Event
Administration. To admit contacts, fire the event again after
modifying the filter.

ErrorDeterminingInitialActivity An error occurred in the first activity in this journey. Open the
journey's first activity to view specific error information.

Deactivated The journey has been deactivated and no longer detects events.
Activate this journey, then fire the event again to admit contacts.

View a Contact Path in a Journey


Use this feature to locate a contact in a running or stopped journey and view the path they took within the last 30 days. From here, you
can determine where a contact is in a journey and if they exited a journey early or finished a journey. You can also remove the contact
from any point in the journey.
Use Contact Builder to find the contact’s Contact Key value.

Tip: To remove the contact from a journey, click Remove from journey. To allow the user to remove a contact add the
Activate/Stop/Pause/Resume/Send/Schedule permission to the user’s Journey Builder Role.
From the Journey canvas:
1. Locate the running or stopped journey, and click it.
2.
Click
3. Enter the contact’s Contact Key value in the search box, and click .

Note: This field doesn’t accept special characters.

4. If the contact entered the journey multiple times within the last 30 days, click to select the instance to view.
The contact’s path, last known location, and status in the journey is highlighted on the journey canvas.

385
Marketing Cloud Journeys and Automations Analytics and History

View a Contact Path on the Journey History Dashboard


Use this feature to locate a contact in a running or stopped journey and view the path they took within the last 30 days. From here, you
can determine where a contact is in a journey and if they exited a journey early or finished a journey. You can also remove the contact
from any point in the journey.
From the Journey History dashboard:
1. Click the History tab.
2. On the right side of the record, click the arrow of the contact path that you want to see.
3. Select Open in Journey Health from the dropdown.
A Journey Health tab opens. You can view the contact’s path, last known location, and status.

View a Contact's Journey History in a Journey


You can view a contact’s journey history on the journey canvas. Results are shown for the previous 30 days by default.
Use Contact Builder to find the contact’s Contact Key value.
From the journey canvas:
1. Click the History tab in Journey Builder.
2. Enter the contact’s Contact Key value in the search box, and click .

Tip: To narrow search results, add a filter to select by journey name, activity, status, or date range. Click to expand the filter
criteria, then select the filter value to use.

View a Contact’s History on the Journey History Dashboard


You can view a contact’s journey history on the Journey History dashboard. Results are shown for the previous 30 days by default.
From the Journey History dashboard:
1. Click the History tab.
2. On the right side of the record, click the arrow of the contact path that you want to see.
3. Select Filter by contact key from the dropdown.
The Contact Key is displayed in the Filters panel. The history page is refreshed and shows Contact Key records.

View Recent Contacts by Activity


View up to 30 days of contacts processed in any non-wait activity in any active, stopped, or paused journey in Journey Builder. Expand
for a detailed view to identify trends in contact success and error rates to troubleshoot and resolve issues more quickly.
1. To view a summary of contacts processed in a non-wait activity, click the contact count below the activity.
2. To open the detail view drawer, click View Contact Details.
3. To see the list of individual contacts, click View Details.

SEE ALSO:
View a Contact's Journey History in a Journey
Error Message Troubleshooting

386
Marketing Cloud Journeys and Automations Analytics and History

Error Message Troubleshooting


Review possible solutions to common contact journey errors in Journey Builder. These errors can cause a contact to exit a journey earlier
than expected.

Error Message Issue or Possible Solution


Email Activities

This contact opted out of all Marketing Cloud emails. --

This contact is missing a required attribute. Update record to include the required attribute value.

We can’t find this contact in the All Subscribers list. --

We can’t find a matching subscriber key for this contact. --

This contact is on an exclusion list. --

List Detective removed this contact. --

This contact is on a suppression list. --

This contact opted out. --

This contact was permanently deleted. --

This contact has an invalid email address. Confirm and update the email address in the data extension.

Data Binding

Required email address not found. Add a valid email address to the contact record in the data
extension.

Unexpected Error

Something went wrong. --

Sales Cloud Activity

Duplicate field values found. Delete the duplicate value.

Specify a required field. Choose a required field.

Doesn't meet validation criteria. Confirm each required field has a value provided and matches the
specified data type.

Maximum string value exceeded. Confirm each field provided doesn’t exceed the max length.

Invalid ID string value found. Confirm and update the ID value in the data extension.

Invalid relationship field value type. Confirm the ID is valid for the field being modified.

Duplicate records found. Delete the duplicate contact record.

Can't update a converted lead. The Lead record was converted to a Contact. After it’s converted,
the Lead record can’t be updated

Can't reference a deleted object. --

387
Marketing Cloud Journeys and Automations Behavioral Triggers

Error Message Issue or Possible Solution


Can't combine a person account record type change with any --
other field update.

Org's storage limit exceeded. Contact Salesforce Support to increase your data storage, or delete
unneeded data.

Invalid value found for a restricted picklist. Confirm if the value provided matches a valid restricted picklist
value.

Custom Activity

The REST response does not contain a required outArgument Verify the response being returned from the execute endpoint
({argumentName}). contains the required outArgument.

Increase request time or add activity retries. Increase request time or add activity retries. See Custom Activity
Configuration for details.

Request failed due to: (issue) Add activity retry if applicable.

Can't complete the REST API call. Confirm the configuration for Confirm the configuration for Execute is valid JSON and conforms
Execute is valid JSON and conforms to Journey Builder workflow to Journey Builder workflow document.
document.

Can't parse returned data required for the REST activity. Verify the response being returned from the execute endpoint is
valid JSON.

Can't parse the payload. Confirm JSON conforms to Journey Builder Confirm config.json is valid JSON and conforms to Journey Builder
workflow document. workflow document.

Validation failed for (URI). Use https:// for POST Verify execute endpoint uses https and has a valid SSL certificate.

REST response outArgument doesn't match specified data type Verify the outArgument provided in the response body matches
(argumentName). the data type specified in the config.json.

Update Contact

Missing required fields. Add required data to the activity configuration.

Target data extension was deleted. Reconfigure activity to use an active data extension.

Primary Key violated on insert. Contact Data exists for the specified data extension for contact.

Activity timed out. --

Behavioral Triggers
Let Salesforce Marketing Cloud equip you to reach customers who abandon unpurchased items or services. Configure the flow of this
behavioral data into the data extensions for email sends and journeys. Using behavioral triggers this way is called Behavioral Triggers.
Salesforce Services isn't required for basic abandoned cart, browse, and wishlist use cases. Your customers and their partners can set
them up. Behavioral Triggers is free for Pro, Corporate, and Enterprise Editions and uses Amazon Web Services. Behavioral data extensions
store the data for 30 days. To configure the Journeys or Automations, contact Marketing Cloud support. The level of support varies on
each customer's data model.

388
Marketing Cloud Journeys and Automations Behavioral Triggers Prerequisites

If you already paid for an Abandoned Cart audience file, you can still use audience files until a customer requests that they’re turned off.
Customers can't use both legacy audience files and Behavioral Triggers for the same use case. A customer using an abandoned cart
audience file can't enable an abandoned card trigger in Behavioral Triggers.
To get started, select Behavioral Triggers from the Journey Builder nav menu.

Behavioral Triggers Prerequisites


To implement Behavioral Triggers, first install Collect Tracking Code and upload a product catalog.
Create a Behavioral Trigger
Set up a behavioral trigger to map data to a target data extension when a user takes a particular action, such as abandoning a cart
or browser session. The target data extension name displays on the Behavioral Triggers dashboard after you create the trigger.
Edit a Behavioral Trigger
Update a behavioral trigger to include a different suppression period or suppression rule time frame.
Pause a Behavioral Trigger
To stop a behavioral trigger from directing engagement data to your target data extension, pause the trigger.
Resume a Behavioral Trigger
To restart a behavioral trigger so it begins directing engagement data to your target data extension, resume a paused trigger.
Set Behavioral Trigger Session Timeout Limit
Configure the Behavioral Triggers app to observe a session timeout limit that you set. This timeout limit dictates how long a customer’s
session lasts before it is considered abandoned.
Create a Behavior Trigger Email
After you create a Behavioral Trigger in Marketing Cloud Content Builder, you can create an email based on that trigger.
Behavioral Triggers Optional Features
Marketing Cloud (Einstein)

SEE ALSO:
Solution Kit: Turn Abandoned Carts into Completed Sales

Behavioral Triggers Prerequisites


To implement Behavioral Triggers, first install Collect Tracking Code and upload a product catalog.

Behavioral Triggers Requirements


• A catalog of assets used to sync with user behavioral data and determine which recommendations to show.
• Collect Tracking Code used to monitor key variables and events on your website at the user level.
You can import one file for each catalog type.

389
Marketing Cloud Journeys and Automations Create a Behavioral Trigger

Tip: Your web admin can help you to configure and install Collect Tracking Code and required data feeds.

SEE ALSO:
Catalog
Collect Tracking Code
Solution Kits for Retail and B2C
Solution Kit: Turn Abandoned Carts into Completed Sales

Create a Behavioral Trigger


Set up a behavioral trigger to map data to a target data extension when a user takes a particular action, such as abandoning a cart or
browser session. The target data extension name displays on the Behavioral Triggers dashboard after you create the trigger.
1. In the Behavioral Triggers app, click New Trigger.
2. Choose the customer action that is logged in the target data extension when the action occurs.
3. Click Next.
4. Set the suppression period and suppression rule.
5. Click Next.
6. Review and save your settings.
The trigger appears on the Behavioral Triggers dashboard. Note the data extension name so you can select it to power a journey or
email send.

Edit a Behavioral Trigger


Update a behavioral trigger to include a different suppression period or suppression rule time frame.
1.
In the Behavioral Triggers app, click next to a trigger.
2. Click Edit.
3. Update the suppression period or suppression rule time frame.
4. Click Save.

Pause a Behavioral Trigger


To stop a behavioral trigger from directing engagement data to your target data extension, pause the trigger.
1.
In the Behavioral Triggers app, click next to a trigger.
2. Click Pause.
The trigger’s status updates.

Resume a Behavioral Trigger


To restart a behavioral trigger so it begins directing engagement data to your target data extension, resume a paused trigger.

390
Marketing Cloud Journeys and Automations Set Behavioral Trigger Session Timeout Limit

1.
In the Behavioral Triggers app, click next to a paused trigger.
2. Click Resume.
The trigger’s status updates.

Set Behavioral Trigger Session Timeout Limit


Configure the Behavioral Triggers app to observe a session timeout limit that you set. This timeout limit dictates how long a customer’s
session lasts before it is considered abandoned.

Note: Custom session timeout limits are not supported.

1.
In the Behavioral Triggers app, click .
2. Select a timeout limit.
3. Click Save.

Create a Behavior Trigger Email


After you create a Behavioral Trigger in Marketing Cloud Content Builder, you can create an email based on that trigger.
Incorporate the data from the Behavioral Trigger data extension (DE) for the Behavioral Trigger Content Block to work. Using other
audiences generates an error.
1. Create the email.
2. To dynamically add abandoned items into the body of the email, drag the items over the Behavioral Trigger Content Block.
Email recipients get a personalized message. Two schedules factor in: the session timeout and the automation schedule. Session
timeout is the period of inactivity that means a session is abandoned. Marketers can configure this period in the Behavioral Triggers
application, and it can be as short as 15 minutes.
After the session times out, a Behavioral Trigger writes the event to a data extension in near real time. Then, the next time your
Behavioral Trigger Journey or automation runs, the Behavioral Trigger processes this record. For example, with a session timeout of
30 minutes and an hourly automation schedule, a subscriber gets their Behavioral Trigger message 31–91 minutes after their last
click.

3. To include items in the email, set the maximum number of items, and 10 is the default.

Tip:

If the customer browsed 50 things, don't show all 50 in the email.

4. For the marketer to select the most relevant items to show, select the DE column.
The Max columns increment dynamically and collapse.

5. To show items in the email such as image name or price, choose the fields.
On the Styling tab, when a field is added, the Behavioral Trigger dynamically adds a class in the Styling tab for the sales price. Marketers
can add standard CSS to change that.

The HTML tab shows a sample markup that the user can't edit because the data is added dynamically. Behavioral Triggers shows the
HTML so that the user can see how to style the email.

391
Marketing Cloud Journeys and Automations Behavioral Triggers Optional Features

Note: Don't modify the BT DE schema. You can add extra fields, but they must be nullable.

Behavioral Triggers Optional Features


Marketing Cloud (Einstein)
EDITIONS
Use Behavioral Triggers to reach customers who abandon unpurchased items or services in their
cart. Available in Marketing Cloud
Messaging and Journeys
Pro, Corporate, and
Horizontal vs Vertical Layout Enterprise editions.
To display product information to your customers, you can use either a horizontal or a vertical view.
Horizontal:

In a horizontal layout, images and text are side by side. The picture of the selected item is on the left, and the text describing the item
is on the right.
Vertical:

In a vertical layout, images are above the text.

392
Marketing Cloud Journeys and Automations Behavioral Triggers Optional Features

Use Current Cart Feature


This feature reflects the cart at the time the message is sent. If the user edits the cart, the message remains in its original state and isn’t
updated.
If the check box isn’t selected, the message reflects the items that were originally abandoned.

Rating Stars Feature


Select the rating field in the catalog so that your customers can use the rating stars feature. Customers can rate products on a scale of
four to ten. And they can view the products sorted by their ratings from lowest to highest or highest to lowest. Marketers an show a
product's average rating. The product catalog must contain this information. To build the rating visualization, indicate the maximum
rating value.
Styling Tab
• Customers can change the color of the actual stars from the specified class.

How to Use Reference Data


AMPscript variables contain data about items in the original cart initialized for example item_<field_name>_<index>
If the user has an updated cart, the updated cart is stored in the field, for example @cart_<field_name>_<index>

393
INDEX

A G
activity type 322 goal
Analytics Builder 340 define 284
attributes extract 140 goals 284
audit trail extract 169 Google Analytics 360 262, 295, 319–320, 378
Automation Studio
Audit Trail 168 H
history 381
B
Best Practice J
Available Data 193 journey
best practices 190 tag 375
Best Practices Journey Builder
Data Management 191 activities 349, 354, 368
Data Relationships 192 activity 349
Data Storage 192 administration 214
Describe Your Customers 194 All Journeys 214
Manage Customer Subscriptions 194 API event 258
Segment Your Customers 194 attributes 280
Stored Data 193 chat 249
Understand Data Needs 193 configure a convert lead activity 351
Use Data in Marketing Cloud 194 Contact History
bounces extract 141 386
Journey Analytics 386
C convert lead activity 351
campaign member activity 349 copy 373
chat 249 create an object record 354
chat messaging 329 dashboard 214–215
clickimpression extract 143 Dashboard 215
clicks 145 date-based event 252
Contact error 387 email personalization example 282
contact history 386 entry events 250
contact path 385–386 entry results 254
conversions 147 Entry Source 249
entry sources 238
D integration 349–350, 354, 368
decision splits 334 journey health 380–381
journey types 216
E LINE 297–298, 301–302
Einstein 180, 341–343 multistep journey 219
Email 1 multistep journeys 218, 220, 223, 225
Email Studio 127, 286 object activity 353
entry source 240, 249 permissions 198
entry sources person accounts 266
community 265 prerequisites 196, 248, 389

394
Index

Journey Builder (continued)


rejected contacts 256
P
Path Optimizer 324
sales and service cloud 349–350, 354, 368
Sales and Service Cloud 349
Sales and Service Cloud Activities 346, 370
R
sales and service cloud activity 350 restricted values 337
salesforce data event 264
Salesforce data event 263
S
salesforce data events 266 Sales and Service Cloud Activities 367
shared entry event 251 Send Time Optimization 341–343
shared templates 232 sendimpression 153
single send 217 sendjobimpression 155
Single Send 215 sendjobs 155
Single Sends 215 sent 157
Transactional Send 228 shared entry event 253
Transactional Sends 229 status 383
update an object activity 354 statuschanges 160
versions 381 subscribers 161
Wait Activity surveys 162
330
API 330
T
journey join 332 tag
journey split 332 create 374
tags 374
L tips
listmembershipchanges 148 show and hide 375
lists 150 tracking extract 138
Tracking Extract 126, 132
M transactional send 229, 235
MobilePush 331 Transactional Send Journey 230
troubleshooting 387
N Troubleshooting 289
notsent 151
U
O unsubs 163
opens 152
Optimize 202
W
wait activity 329
WhatsApp 318

395

You might also like