Salesforce Marketing Cloud Data Model Part 5: What is Journey Builder in Salesforce Marketing Cloud

What is Salesforce Marketing Cloud Journey Builder?

Journey Builder is a Marketing Cloud feature that allows you to take a customer journey concept, from whiteboard to modeling, using a simple and intuitive drag-and-drop user interface. You can set behavior-based goals, while planning multiple individualized interactions, all within the same planning tool.

Journey Builder also integrates with Sales Cloud and Service Cloud, ensuring seamless customer experiences, while sharing the information with all users of all SFMC systems. So you can keep on top of customer situation responses, while avoiding any unnecessary duplication of efforts.

Why and when to use Journey Builder

Journey Builder plans the design and automation of your campaigns. It allows you to intuitively guide customers through their interactions with your brand. 

It all starts with a blank canvas (or template), whereby you can set activities that tell Journey Builder how to interact with customers along the communications path. Once configured, Journey Builder runs responsive, automatic campaigns, while continuously evaluating your contacts, and determining when to move them to the next marketing action.

The Journey Builder methodology uses one-to-one (or 1:1) marketing; a CRM strategy emphasizing individualized customer interactions, known to improve customer loyalty, while increasing your return on marketing investment. Journey Builder simplifies the development of personalized relationships with a large customer base.

Journey Builder is an easy-to-use visual flow tool, where marketers can design their own automated omni-channel (email, SMS, push, ads) customer journeys. Consider a welcome series, or events program for example.

Hovering over the Journey Builder app on the Marketing Cloud panel, you are redirected to the journeys overview page. From there, you can create a new journey; choose an entry source for your journey, look at the journey history, or choose a journey template.

What’s the difference between Journey Builder and Automation Studio?

Salesforce Marketing Cloud’s Automation Studio allows some simple email automation. However, its main purpose is to automate admin and data management tasks, such as importing files and transferring data. 

Automation Studio is used for ETL (Extract, Transform, and Load), whereas Journey Builder’s purpose is to create a 1:1 individualized journey for your prospect communications.

Is Journey Builder available for all SFMC users?

Beware that you may not have access to Journey Builder, as it depends on your subscription. However, if it is a part of your subscription, gaining access is easy. All you need to do is speak to your account manager about including the Journey Builder module within your subscription.

Permissions and access to Journey Builder vary with company roles. SFMC admins can restrict or grant access to certain Journey Builder functionality. This is done by hovering over your profile and opening Setup. There, under Users, you select Concrete Users, then Manage Roles, then Permissions. There, under Journey Builder, you are given the access options to various elements of Journey Builder’s functionality. 

Here’s an overview of the SFMC user roles and permissions to Journey Builder.

Note: green means permissions granted. Yellow means permission not explicitly granted, or denied. 

You want to create a journey, but where to start?

Entry sources for a journey

The first thing you consider before starting a journey is the nature of your journey’s data. Understanding the audience and the journey goal is paramount. Various entry sources can be used for a journey.

Entry Sources example

Data extensions

You can use data extensions (DEs) as an entry source for your journey. Data extensions are tables that can contain a variety of data. You can learn more about them here.

You can also filter contacts you would prefer to restrict from the journey. You can filter their attributes by simply using drag-and-drop. However, this segmentation option is rather limited, and does not allow you to leverage advanced segmentation.

API events

You can also choose an API event as an entry source for your journey. When contacts enter a journey via API, Journey Builder populates a data extension with these contacts. You can set a filter using Marketing Cloud data attributes, to ensure that only intended customers enter the journey.

This event type requires API configuration. To set up and use an API, you may have to speak to a technician if needed. 

Considerations when working with an IT resource:

  • Notice where opt-in and customer data is captured.
  • Audit your current customer information. For example, web browsing, demographic, and purchase data, and storage.
  • Ascertain your customer data needs for personalized or targeted messages and interactions.
  • Consider targeting and timing; and which customer behaviors you will act upon.

If you would like to know how to trigger journey API entry events with AMPscript and server-side JavaScript, check out this thorough article. 

Cloud Pages

You can use the CloudPages Form Submit Event to admit Marketing Cloud contacts into a journey.

Before using this entry source, create at least one Smart Capture form in CloudPages.

Audience entry

To admit a list of contacts into a journey, use an audience. Audience entry is used for mobile studio only.  You can create or edit audiences by using Contact Builder. Select from the push, SMS, and Published Audience Builder audiences available in your account.

Any audiences created before the January 2018 release still function, but cannot be edited. To access functionality previously found in Journey Builder Audiences, use the data extension entry source.

You can also schedule an audience to determine how often Journey Builder admits contacts from an audience.

Salesforce data

Actions in Sales Cloud or Service Cloud are known as Salesforce data events. Creating or updating an object record places a contact into a journey. Salesforce Flows initiates a Journey Builder event whenever the primary object meets rule and reference object filtering criteria. Configuring Marketing Cloud Connect allows you to take advantage of this.

When you configure the event, define these items:

  • Use the Sales Cloud or Service Cloud object as the source of the entry event.
  • Who enters the journey (users, leads, or contacts).
  • When a record is created or updated; the user, lead, or contact, enters the journey.
  • Select attributes from object data to filter who enters the journey.
  • Select the entry object to use for journey data fields from related objects.

The user ID, lead, or contact entering the journey, their email address, and the email opt-out flag status, are all included in each record.

Once you’ve configured the entry source, you cannot edit the object or who enters the journey. Delete and recreate the entry source to choose a different object. Before publishing, you can edit the entry criteria, filters, and event data for a configured entry source. Entry sources are reusable. You can also copy journeys containing Salesforce entry sources.

Note: If setting up the Connector to Salesforce within Marketing Cloud becomes problematic, and you cannot view Salesforce activities in the Journey Builder Canvas, then submit a support ticket. Marketing Cloud support will assist.

Google Analytics 360

Journey Builder admits audiences from your Google Analytics 360 account. You can choose an audience from your account, then admit a batch of those audience contacts into a journey. Then you can choose which contacts enter the journey, or admit all contacts, by configuring a filter.

Note that you might have to request a support ticket to enable this feature.

Journey Builder Google Analytics 360 use case

To encourage past purchaser reviews, a marketer uses data from his or her company’s GA360 account. The marketer creates a journey in Journey Builder.

Create a potential reviewer’s Journey Builder journey

The marketer creates a journey that admits customers from the GA360 audience. They then create a segment called ‘Potential Reviewers’: customers who made a purchase without leaving a review. The marketer admits members of the ‘Potential Reviewers’ audience via the GA360 entry source.

The marketer can simply drag the GA360 entry source tile into the Journey Builder journey. After configuration, the marketer clicks Select an Audience and chooses the Potential Reviewers audience.

To exclude anyone who left a review after being added to the audience, but before journey activation, the marketer creates a filter using an attribute called Reviews. The filter is configured for audience members to enter the journey when the attribute value is null.

Adding another line and dragging in the Reviews and ReviewDate attributes, the marketer configures the filter so Reviews is not null, and ReviewDate is less than today.

The entry source is configured. Upon journey activation, Potential Reviewers audience members meeting filter criteria are admitted to the journey.

Contact data events

Contact data events will not be supported in the next release. Events and journeys developed before this change will continue to run. You can, however, use Data Extension or Audiences to admit contacts. 

Examples of how entry events place contacts into a journey:

  • Events can be shared between journeys or be journey-specific.
  • Within a journey, you can configure journey-specific events for use only in that journey.
  • Using Entry Source Administration, you can create shared events for use in multiple journeys.

You can learn more about Contact Data Events here.

Which SFMC journey will you build?

There are three types of journeys. Your choice is between Multi-step, Transactional, or Single Send journeys. Now let’s dive deeper into what each of them represents.

Multi-step journeys

Multi-step is the reason why marketers love Journey Builder so much. It allows you to build a journey that sends messages across any channel, based on marketing logic and audience behavior. It allows the creation of complex and highly personalized marketing automation campaigns.

Leverage Multi-step journeys, from welcome email series to everyday purchases, or abandoned cart journeys.

Transactional journeys

You can also create a transactional journey.  So when an event or action occurs, you’re able to immediately send an email. A common use case for transactional journeys is sending a personalized message which responds to a specific action, such as a purchase. You can also send an event-triggered message, such as a password reset. Another possible use case is sending a message triggered by an action taken by your organization, such as updating a user’s status.

Single Send journeys

Single Send journeys allow you to quickly create and deliver a personalized message to your audience. You can choose Single Send as an email or as a push notification. The email could be a promotional offer or an event reminder. A common push notification use case could be an alert about a new app feature, or sending a promotional offer.

Single Send journeys are exciting.  In the past you had to set email send definition in Email Studio. The idea now is to have a single “send definition” or a way of sending emails.

What are Journey Builder activities?

So you’ve decided to build a multi-step journey. After figuring out which entry source to use, you can choose what will occur along the journey. The options you can choose from are called ‘activities’.

You can find them on the Journey Builder Canvas. Activities include messages, updates, decisions, or a combination — all 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 journey’s end. They’re divided in groups like: messages, advertising, flow control, customer updates, Sales & Service Cloud, and custom.

Messages activities example


Messaging activities include email, SMS, LINE messages, push notifications, inbox messages, in-app messages, or any other form of messaging content. To provide a mix of information about your brand or product, vary the message content. Create the content before you build a journey.

You can use any Marketing Cloud data, including journey data, for personalization strings. Make sure the personalization string and dynamic content attribute names exactly match those in the data extension. Define a default value for every attribute so the personalization string is never blank. If you insert a personalization string, but the subscriber attribute isn’t populated, the string will be blank in the email. For example, set the First Name field default to Customer so that ‘Dear Customer’ appears as default if the field.

Note: Be sure to map personalization, or dynamic content attributes, to the correct data source. When using journey and contact data, remember that the journey data values are static, while contact data is variable.


Journey Builder uses the functionality of Email Studio to send to Marketing Cloud contacts in a journey. So you can review and arrange statistics from within Journey Builder.

Things to consider:

  • Every time a new journey version is activated, a new triggered send is created.
  • Triggered send validation compares the email’s personalization strings to event data from the journey entry source. 
  • By editing the email activity, you can update Send Classifications or Publication Lists.
  • Pausing, publishing changes, and restarting the triggered send allows the update of images, content, and other Email Studio-related components.
  • Delivery profiles.
  • Dynamic subject rules.
  • Sender profiles.
  • Send classifications.

To ensure synchronized updates while in draft mode, implement email changes by updating each email activity, then reactivating the journey. Or you can update the send on the Journey Builder Sends page.

Make sure the email’s personalization strings are calling data values included in the entry source data extension. This avoids validation errors. Email validation can fail if personalization includes a field not in the entry source data extension.

In the case of emails using AMPScript, you 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.

Mobile messages

When a journey includes sends to mobile devices, Journey Builder includes the SMS, LINE message, push notification, In-app message, and inbox activities. You can add MobilePush inbox messages without leaving the journey. To use messages created in Mobile Studio and Content Builder, you can configure SMS, LINE message, in-app message, and push notification Journey Builder activities.


In the case of Marketing Cloud Journey Builder SMS sends to Marketing Cloud contacts, you can use the SMS activity. 

Note: To send SMS from a journey, your data extension must include the normalized phone number (country code + phone number (with no dashes or parentheses)). You don’t need a Locale field to send an SMS from Journey Builder.

To learn how to use SMS activity in Journey Builder, check out this Trailhead module.

Carousel LINE activity

For sends to Marketing Cloud contacts in a journey, you can use a carousel message in a LINE message activity. Carousel messages are LINE messages including up to 10 different messages in one carousel. You’ll need to ensure your account has LINE channels enabled. 

Your Marketing Cloud account manager can give you more information about how to get LINE access and channels.

Push notifications

When using Marketing Cloud Journey Builder push notification sends in a journey, you can of course use the push notification activity.

In-app message

In-app messaging also works through Journey Builder. An in-app message is any kind of message sent to your mobile app users, which they’ll usually see during app use. Journey Builder allows for the simple addition of in-app messaging, highlighting surveys, offers, encouraging them to enable push notifications, or location settings in your app.

Check here for more information about in-app messaging.

Inbox push activity

For Marketing Cloud Journey Builder MobilePush Inbox message sends, use the inbox activity.


In Marketing Cloud Advertising Audiences Administration, you can use the Ad Audience activity and set up Google Adwords, Facebook, LinkedIn, Twitter, or another partner account as destinations. This will only work with Advertising Audiences provisioned accounts.

To use the Ad Audience activity in your journeys, you will have to include email addresses as the attribute in the Entry Event. If your journey contacts don’t have an email address, Advertising Audience won’t populate. The Refresh Rate indicates the frequency of data pulls between Journey Builder and Ad Audience. Assuming your account is provisioned appropriately, you can amend this accordingly.

Check out this Salesforce article to find out more about creating an advertising campaign activity.

Flow activities

Flow control activities such as wait activities, decision splits, random splits, and engagement splits, create the contact journey path.

Flow activities example

Wait activities

Wait activities belong to message delivery timing; holding your customers between one activity and the next. Journey Builder continually evaluates customers between activities, ascertaining whether they have engaged with a message, met a goal, or reached the right criteria for a decision split. Wait activities can be used with alternative flow controls.

Plan wait timing according to your content, and the rhythmic messaging expectations you have in mind for customers.

Consider the optimal wait duration, and the time of day to reach your customers.

Apart from journey testing, avoid wait times less than an hour. Also be mindful to avoid any unnecessary waits, especially at the beginning of a journey.

Wait By Duration activity, Wait By Attribute or Wait By Until Date, are all available options.

Journey Builder’s Wait By Duration activity can release contacts after a specified time has elapsed. This option is useful for marketers keen to create a consistent experience for all contacts on the journey.

If creating a wait ending, based on the value of an attribute in Marketing Cloud Contact Data or Journey Data, you can use Wait By Attribute.

Wait Until Date is used when Marketing Cloud contacts are held in wait mode until a specified date and time. 

Note: Contacts reaching the activity after the specified time or date proceed immediately to the next activity.

What are Journey Builder splits?

Salesforce Marketing Cloud Journey Builder allows you to choose several types of splits, including engagement, decision, random, Einstein, or custom splits. 

In the case of split activities, contacts are divided into cohorts that follow different paths. This means different subsequent activities can be sent to each cohort.

Random split

You can configure up to 10 paths with the random split option. Here, Marketing Cloud journey contacts are divided into random groups. You can also change the percentage of contacts likely to follow this path.

Engagement split

When a Marketing Cloud contact opens an email, clicks a link, or if the email bounces, then the engagement split activity re-routes contacts down a Yes or No path. 

At least one email must exist in the account for you to use an engagement split activity. Engagement splits must follow an email activity, but not necessarily immediately thereafter.

Email messages must be created using one of the following email types. Link specification isn’t possible in emails built using the HTML-based Template.

Furthermore, it’s not possible to create a logic using the Engagement split, when, for instance, a user clicks a particular link then proceeds to the next step.

Einstein split

You can make your Marketing Cloud journeys smarter by leveraging the power of artificial intelligence. Journey Builder’s Einstein split activity allows you to segment customers logically, according to prebuilt Einstein splits.

Einstein splits allow personalized customer journeys based on the personas, or on engagement levels. Here you can divide your customers based on their likelihood to open, click, convert, or unsubscribe. This is intuitively based on their engagement persona.

Marketing Cloud Journey Builder’s Einstein Engagement Scoring segments customers into logical journeys, based on learned engagement data. 

You have several Einstein split options at your disposal.

Access to Einstein functionality depends on your SFMC subscription. If it is a part of your package, you might also need to request a support ticket to enable the functionality for your SFMC instance.

Email open split

Customer engagement linked to how likely they are to open an email.

Conversion split

Engagement linked to how likely they are to download content, complete a form on your website, or purchase/convert.

Persona split

Customer engagement linked to their Einstein Engagement Scoring Personas.

Email click split

Based on their likelihood to click on a link.

Retention split

Engagement linked to their likelihood to maintain a subscription.

Decision split

Journey Builder’s decision split activity evaluates Salesforce Marketing Cloud contacts reaching a decision. It redirects each contact down a path according to your chosen filter. 

Let’s say you want to create two contact groups, separated by age: the first group is under 45, the second are 45+. Placing a decision split post-entry event, or during any activity along the journey,  will prompt Journey Builder’s evaluation of the contacts’ data. Here, Journey Builder is funneling contacts aged 45+ into one branch, and the younger group into the other branch.

Decision splits contain up to 20 paths.

Custom split

Split activities can also be custom split. 

Custom split activities using a data decision can allow a Boolean (True or False), or multiple-answer decision. Here, contacts are re-routed to more than two decision branches. So with a custom split activity, you can segment the audience into two or more paths, depending on the activity’s purpose.

Join activity

When bringing contacts from two (or more) Journey Builder paths into a single path, you use Join activity. This activity redirects contacts flowing down one or more branches, to an alternative journey branch.

Path Optimizer

Falling between ‘Join’ and ‘Einstein split’ activities is Journey Builder’s Path Optimizer, only recently introduced with the May 2020 release.

The Path Optimizer activity automatically (or manually) selects a winning branch by helping you identify the best way to reach your customers.

It sends the message to all contacts entering a specific journey path. If this sounds too much like Black Magic to you, don’t worry. You can run tests prior to final design.

Winning branches can be (automatically or manually) configured with up to 10 paths, with user-defined distributions.

Winners are automatically selected based on email engagement metrics. Manual selection is also an option.

While the winning path receives new contacts, losing paths shut off contact flow.

The testable Journey Builder activities are Wait, Sales and Service Cloud activities, Update Contact, Custom activities, and all messaging activities

The historical test context is included in test summary information.

Check out this article, which includes more examples of Path Optimizer in Salesforce Marketing Cloud. 

Customer updates

With Journey Builder’s Update Contact activity, you can change a Marketing Cloud contact record on a journey.

This altars contact attribute values when they reach this activity in a journey. Choose a sendable data extension and set a static overwriting value for each contact reaching the activity. Date attributes provide the option of Central Standard Time.

Sales and Service Cloud

Journey Builder’s Sales and Service Cloud canvas activities update or create Sales and Service Cloud object records for connected SFMC contacts. You need to enable Marketing Cloud Connect with your Salesforce CRM to reap the benefits of this particular functionality. Any users (except Marketing Cloud Administrators) can be granted access to edit Sales and Service Cloud activities.

Sales Cloud activities use the SOAP API to Create, Lookup, and Update. 

There are three activity configuration options: Create, Simple Update, and Find and Update. This will store the generated record as output data for the activity, which you can in turn access through Journey Data.

These activities utilize the same Salesforce SOAP API as the Marketing Cloud Connector.

Find out more about Sales and Service Cloud activities here.

Sales and Service Cloud activities

Journey settings

For contacts re-entering the journey. 

When creating a journey, you are invited to choose whether you’d like contacts to re-enter the journey at any time, re-enter after exit, or restrict their re-entry. This is an important consideration. 

Marketers would recommend contacts to restrict re-entering, to avoid the chance of duplicate content being communicated. Another probability is that your communication might end up in the spam folder. 

Check this for best practice on how to avoid users re-entering the journey. 

Journey validation

Using Journey Builder’s validation option will give added confidence that your journey configuration is error-free. Once you’ve created your journey, click Validate to check for issues relating to entry source, scheduling, activities, goals, or exit criteria.

You can also use validation to fine-tune your journey, since it confirms all configurations are set up to work as planned. 

The journey elements validated are Entry Source, Entry Schedule, Decision Splits, Wait Activities, Update Contact Activities, Email Engagement Splits, Journey Settings, Journey Goals, and Exit Criteria.

Validation results show error messages stemming from configuration.

Note: validating the journey identifies most errors, but some are shown only after saving, testing, or activating.

Setting Journey Builder journey goals

Journey Builder measures the journey’s success. You can monitor contacts’ progress during an active journey on the Journey Builder Canvas. Reports also include a review of contacts’ message engagement.

Journey goals criteria

If a contact meets set goal criteria, they can exit before the journey’s end. 

Let’s say you have a coupon redemption as a journey’s goal. The customer could then exit immediately after redemption, receiving no further messages linked to this journey.

Here, you can also define a target number (or percentage) of people reaching the marketing objective. Evaluation is automatic; every night at midnight Central Time, and each time a wait expires.

Exit activity

An exit is the journey’s end and requires no configuration. That said, this might not be the same as meeting a marketing objective. You can use a goal or exit criteria to remove journey contacts before they complete.

If contacts exit using goal functionality, they are tracked and measured against goal performance.

Check out more Journey Builder exit examples here.

Best practices: Things to consider when creating a journey in Journey Builder

  1. Do not use the same entry source data extension to power multiple journeys as this may lead to incorrect processing of the contacts through your journey. This way you also avoid spamming contacts or duplicating contact communication. Instead, create a pre-filtered copy of the data extension for each journey.
  2. Pre-filter your data before adding it to the journey. Use an ETL tool like Automation Studio to perform large-scale segmentation before injection into Journey Builder. Alternatively, leverage DESelect’s segmentation capability, with which you can easily create advanced audience segments, then add to your Journey Builder journeys later. 
  3. Check out Journey Builder templates. There are pre-built templates for various marketing purposes, divided by level of complexity. You can choose what best fits your needs, or use it as a visual guide to understand Journey Builder’s potential.
  4. Use Journey Builder templates to organize your journeys for a better overview and consistency.
  5. Draw the journey you want to build on paper, before creating it on Journey Builder Canvas. This provides you with a complete picture of the journey you want to build. 
  6. Updating your journey: when copying a journey (for instance, to add an extra email), all contacts already in the journey will remain in the initial version. Only new contacts added to the second journey will get the updated journey.
  7. Leverage journey history. If you need to audit or bug-fix your journey, use journey history via a tab in Journey Builder overview. 
  8. Be aware that Journey Builder doesn’t offer out-of-the-box A/B testing functionality, like in Email Studio for example. The closest workaround can be using a path optimizer functionality. That way you can test the part of the journey, let Journey Builder select a winning path and send it to the rest of the audience.
  9. Check out this article on 5 things to know about creating a Journey in Journey Builder.

Let’s build a Journey together: Cross-sell Journey Builder journey

We’re going to take into consideration the above mentioned best practices, and build a journey in Journey Builder in Salesforce Marketing Cloud. Before adding users to our journey entry source, we’ll segment the audience. 

Since the purpose of our campaign is to cross-sell to customers, we first need to define who to target with our communication. We’ll use a no-code drag-and-drop segmentation solution for Salesforce Marketing Cloud DESelect, to segment our audience.

We’ll combine the information from two data extensions: Purchases, and Contacts. 

We wish to identify contacts who’ve made a purchase of the X product in the past month. We need to exclude the audience that bought the Y product, so that we can cross-sell the Y product to the initial audience. Then, in DESelect, we’ll create a new data extension containing relevant personal information for our campaign, about the target contacts. This will be their ID, first name, last name, and email address.

Then we’ll create our journey, by choosing an entry source of the data extension we’ve just created. This way we’ve already pre-segmented the audience we’ll add to the journey. After that, we’re going to send them a series of emails in which we’ll include a promo code. This way the contacts who bought the X product would be more inclined to buy the Y product.

Watch the video below,  DESelect segmentation process, and how it can be later used in a Journey Builder journey.


There’s no doubt that Journey Builder is one of the most exciting apps in Salesforce Marketing Cloud. Using it’s intuitive drag-and-drop canvas, marketers are able to create advanced customer journeys, taking advantage of the multiple activities Journey Builder has to offer. 

However, as with any other Salesforce Marketing Cloud tool, a certain level of expertise is needed to utilize its full capabilities. We hope this guide helps shed some light on what Journey Builder has to offer. We tried to cover all the aspects of the tool, and filled the article with important links, where you can get more in-depth information.

Other blog posts

DESelect Blog

Salesforce Marketing Cloud best practices
and DESelect updates

DESelect penguins sliding in the background

Launch campaigns 20% faster
Save 50% on customer data

© 2021 DESelect bv. All rights reserved

Salesforce Marketing Cloud best practices and DESelect updates
DESelect penguin Deedee resembling an app for segmentation in Salesforce Marketing Cloud
Get our ultimate SFMC audit checklist now.
Pssst… Looking for a painless way to keep your Salesforce Marketing Cloud account organized?
Organize your Salesforce Marketing Cloud and improve your ROI: The ultimate health check(list) for SFMC