Salesforce Marketing Cloud Personalization (Interaction Studio): Implementation Methods

Salesforce Marketing Cloud Personalization (Interaction Studio) is a fantastic platform to add to your marketing toolset. But starting a Marketing Cloud implementation can be daunting, especially when it is as complex as Personalization. 

The following sections of this article will detail the implementation approaches available, provide indicative timelines and outline example use cases. However, if  you’re wanting to understand a little more about what the tool can offer, you can check out my last article – Salesforce Marketing Cloud Personalization (Interaction Studio): A Beginner’s Guide

SFMC Personalization Implementation Methods

With any platform like SFMC Personalization, which promises Real-Time Personalization and AI Recommendations, it’s easy to get carried away with what it can offer. However, the key takeaway from this article is that you should focus on what you and your company can achieve, which is particularly important given the tricky interdependencies you’ll face when implementing Personalization.

In a nutshell, the approaches vary from minimal viable product (MVP), where the goal is to implement a baseline as quickly as possible and then build upon it in future iterations, all the way to future-state implementation (FSI), where you depend on use cases to drive large-scale transformation. There is also a halfway house approach of implementing an As-Is, for those who may sit between the two methods above. 

Marketing Cloud Personalization Discovery Questions

Thankfully, understanding which method may suit your needs can be easily identified by answering a few simple discovery questions — as laid out by Salesforce in their Implementation of Marketing Cloud Personalization Trailhead

These helpful questions allow you to ascertain which method will best suit your needs, including: 

  • How often does your company change its website? 
  • Do you have easy access to developer resources? 
  • Are you migrating from an existing tool? 
  • Do other platforms need to be integrated? 

What you’ll find is: 

  1. MVP is great for companies making constant changes to their website, have easy access to developers, and are not migrating from an existing personalization platform. In other words, it’s a viable method for those who are perhaps new to real-time personalization. 
  2. As-Is is great for companies that don’t have immediate access to developers, are looking to migrate from one tool to another and have a few live personalization campaigns ready to migrate. 
  3. FSI is the preferred option for companies that less frequently change their website, have limited access to developers, are looking to integrate Personalization with multiple clouds (Marketing, Sales or Service), and have external data sources that need to be integrated. 

Marketing Cloud Personalization Implementation Roadmap

Obviously, the implementation roadmap will vary depending on the scope of your project and the implementation approach you’ve decided to use. However, there are some key milestones that will occur in all implementations, as shown in the diagram below, which is based on a typical net-new Personalization implementation with 2-3 use cases. 

Roadmap Diagram

From the diagram above, the two key milestones I’d pay the most attention to are the Use Case Discovery and the Blueprint Development

Regardless of the implementation method, defining a handful of clear and precise use cases before beginning the build is key to ensuring success. As mentioned, it’s easy to get caught up with the wide range of functionality Personalization offers. That’s why understanding the desired outcome is the most effective way of running a successful implementation and ensuring your company gets the most out of the platform. I’ll go on to share a few examples of good use cases later on. 

The blueprint document goes hand-in-hand with the sitemap — which is debatably the most crucial part of Personalization. The blueprint helps define which page categories exist, which triggers exist on those pages, what data can be scraped and where it can be scraped from (i.e. DOM vs Data-Layer) for each visit. 

Thankfully, to aid with your implementation, the Salesforce Partner Portal can provide a useful template that helps capture all of the information necessary to create your sitemap, and for implementing Personalization. The template covers everything from page types and content zones to events and attributes, and most importantly, where they can be found on your website to make it easier for the developers building the sitemap.  

Use Cases

Without sounding like a broken record, use cases can make or break a Personalization implementation. During my first implementation of Personalization, the goal I was given was to deliver Real-Time Web Personalization aka Personalization. 

There were no clear KPIs, the website was static and there was nothing to encourage returning visitors, and it made any experiences based on previous visits practically void. The end result was that our very expensive personalization engine sat on the shelf until we revisited the drawing board. 

Defining Your Use Cases

In order to avoid making my mistake, don’t be afraid to get granular with your use cases. Once established, it’s easier to build on top of existing use cases with future iterations. So really think about the following aspects when defining your use cases:

  1. Objective – What is it you’re trying to achieve with your personalization? Is it to increase the value per order? Or perhaps to encourage more users to download your app?
  2. KPIs – How are you going to measure the success of your personalization? Is it based on the number of successful completions? What percentage increase in order value would be considered successful? 
  3. Approach – Once you know what you’re trying to achieve, you then need to consider the approach. Is it based on visitors from a particular source (Rule-Based) or is it based on trending products (Recipe-based)?
  4. Measurement Approach – There’s no point in creating a personalized experience if there is no control to measure success. Consider what an adequate sample might look like and how long the campaign might last. 
  5. Channels – Is this going to be a web- or mobile-led campaign? 

There’s no right or wrong answer for use cases and it completely depends on your company’s objectives. But for a typical net-new implementation, 2-3 concise use cases similar to the ones below is a good starting point. 

Use Case Definition Example

Use Case  Approach Channels KPI Measurement Approach
Encourage users to complete the onboarding application Rules Based Web, Email No. clicks on CTA, no. applications started, no. applications completed 50% personalized, 50% control
Encourage mobile app downloads Rules Based Web, Mobile App, Email No. clicks on CTA, no. app downloads 50% personalized, 50% control

Once you’ve defined your use cases, keep referring back to them throughout the implementation and when developing your blueprint. The use cases will help keep your implementation focused on the end goal, and help your developers build a sitemap that will be fit for purpose. 

Planning is Key to a Successful SFMC Personalization Implementation

As you’ve probably gathered by now, successfully implementing Personalization is closely linked with planning. Defining clear and concise use cases as well as developing an accurate and detailed blueprint, both of which are milestones during the Discovery Phase, are imperative for a smooth implementation. This is true regardless of your chosen implementation method.  

As final food for thought, don’t forget to consider your implementation team. Being the tool that it is, Personalization implementations often begin in the marketing department as it’s the marketers who want real-time personalization capabilities. However, even large marketing teams with wide-ranging skill sets will not be able to deliver Personalization alone. 

The Personalization Sitemap will require JavaScript developers. Building ETLs will require support from data architects. CRM integration will require CRM administrators. And creating experiences, although there are ready-made templates, may also require HTML and CSS experts. So, consider including wider teams early on in the implementation. 

Not only will this help to ensure that those resources are available to support and understand the ask, but it may also help to define use cases that are more relevant and that are also technically viable.

Need help filling the gaps on your team through your Salesforce Marketing Cloud Personalization implementation? Reach out to team Sercante to get their experts on the case.

Original article: Salesforce Marketing Cloud Personalization (Interaction Studio): Implementation Methods

©2023 The Spot. All Rights Reserved.

The post Salesforce Marketing Cloud Personalization (Interaction Studio): Implementation Methods appeared first on The Spot.

By |2023-03-24T15:24:22+00:00March 24th, 2023|Categories: Automations, Marketing Cloud, Pro Tips, revive, Setup & Admin|

External Actions: The Long-Awaited Pardot Feature

Alas, Salesforce External Actions for Pardot is finally here.

Until now, our options to have Marketing Cloud Account Engagement (Pardot) trigger a third-party system have been limited to either: pre-existing connectors or syncing to Salesforce and relying on a Salesforce-side integration. 

With the Salesforce Winter ‘23 release, External Actions gives us the capability to integrate into any third-party system and do cool things. It’s a far cry from having true webhooks. Though, it is a step in the right direction. 

(We’ve built something to fill in the gap. Drop us a line — we’re happy to talk details with you).

Note: This feature is available to Plus, Advanced, and Premium editions of Pardot.

The Lowdown on External Actions for Pardot

External Action allows Pardot to do things like: 

  • Send an SMS message via Twilio or MogliSMS
  • Create a new Salesforce record (such as Lead, Opportunity, any Object!)
  • Send information to your favorite Star Wars API
  • Register a Prospect in another system
  • and whatever else you dream up! 

While there are some considerations (detailed later in this post), External Actions are a great way to plow through the barriers that have prevented you from automating your entire workflow. 

It’s important to note that there’s a similarly named feature called External Activities.  With Pardot External Activities, you can receive data from third-party systems to use in Pardot. With External Actions, you can send data to third-party systems so they can do cool things.

How does a Pardot External Action work?

Once an External Action is built, it will appear as an Action option in an Engagement Studio Program. Depending on the action, you may need to provide additional information through text inputs. You can use HML Merge Tags here, too!

When the Engagement Studio Program is running and hits your action, Pardot will call into Salesforce (via API behind the scenes), and call the functionality.  It does this in a “fire and forget” manner, so there’s no error handling inside your Engagement Studio Program. It is also not “bulkified,” meaning it will make an API call for EACH Prospect. So, you may need to take the API limits of Salesforce AND your external system into consideration.

For this blog post, we built an External Action that tracks Favorite Color. 

Once you pick “Track Favorite Color” you have the ability to provide a value. In the screenshot below, we are using HML to pull this value from a Prospect’s record, though you can also provide static text if you want to say everyone’s favorite color is Sercante Green.

How can I set up a Pardot External Action?

To set up an External Action, there are 2 key pieces:

  1. You need something in Salesforce that can “do the thing” you want. It can be any of the following:
    • Autolaunched Flow
    • External Service
    • APEX InvocableMethod
  2. Marketing App Extensions have been configured inside Salesforce Setup

No-code options to configure Pardot External Actions

If you are looking to integrate with a third-party system, you might luck out on #1 and be able to leverage something built by that third-party in their Salesforce package. This could be your quickest way to being able to use an External Action.

If this isn’t available for you, first look at seeing if you can make an Autolaunched Flow that can meet your needs. This option is also great for creating Salesforce Records of any object type (keeping in mind you are limited to text input types in Pardot).

When working with another API, and if that API supports the OpenAPI protocol, you can use Salesforce External Services to hook things up. That will give you everything you need.

 The Trailhead Module on External Services is a great way to learn how to get started.

Code option to get started with Pardot External Actions

If the above aren’t an option, it’s time to break out your development skills (or work with someone who has them). We’ve got a sample APEX class here that gives you all the structural ingredients you need to make this work, you just have to fill in what you want it to actually do.

public class MyNewExternalAction {

    // Classes to be used by the Flow Designer
    public class FlowRequest {
        @InvocableVariable(label='Prospect Email')
        public String email;
        @InvocableVariable(label='Favorite Color')
        public String favColor;
        // add any other String or number-based attributes you need
    }

    // If you are calling an External API, this would be a great
    // place to put Classes to represent the response
    public class ApiResponse {

    }
    
    @InvocableMethod(callout=true label='My New External Action')
    public static void performActions(List<FlowRequest> flowRequests) {
        System.debug('Start performActions');
        // at time of writing, Pardot DOES NOT BATCH these, it's always 1
        // per batch
        FlowRequest flowRequest = flowRequests.get(0);
        System.Http http = new System.Http();

        try {
            // This is where you put what you want to do!
            // you can call another API, call other APEX
            // read & write Salesforce Objects.. Whatever you want

        } catch (Exception e) {
            System.debug('There was an issue executing the request');
            System.debug(e.getMessage());
            throw e;
        }
        System.debug('Done performActions');
    }
}

Once you have the functionality ready, you need to tell Pardot about it. This is done by configuring Marketing App Extensions inside Salesforce Setup.

Configuring the Marketing App Extensions

This is the “glue” that ties everything together and makes External Actions usable by Pardot. There are a few easy things to configure to make this “glue” work.

First, we need the Top-Level Marketing App Extension. Be careful with these, as you cannot delete them once created (so don’t go making a bunch of test records!).

  1. In Salesforce Setup, search for Marketing App Extensions
  2. If you don’t have one, create New
    • Provide an Extension Name and an API Name, as well as check “Active in Automations”
    • Click Save

Next, we need to enable this for Business Unit(s).

  1. With the Extension still open, go to the Related tab
  2. Click New beside Business Unit Assignments
  3. Add an assignment for each Business Unit you want this extension to be available for

Now we can create the External Action.

  1. With the Extension still open, go to the Related tab
  2. Click New beside Actions
  3. Provide an Action Name (this will be the name visible when selecting it from Engagement Studio)
  4. Provide an API Name (this does not auto-fill like you may be used to)
  5. (Recommended) Provide a description of what this Action does, since you might not remember in three months
  6. Search for your functionality. Once selected, the Action Schema will auto fill with JSON that you need to review and likely modify
  7. Review & Modify the Action Schema
    • Properties – this contains details about the parameters/values that you want to provide to the Automation.
      • type:  currently can only be “string” and “number”
      • title: the Label of the input when viewing in Engagement Studio
      • value: Allows you to provide a default value. You can use HML merge tags here!
      • Note: Sometimes when working with Flows, you might have properties that are not relevant (like flow interview id). You should remove them from Properties (assuming they aren’t an input variable that your flow requires to function)
    • View Components – this allows you to specify which properties you want to provide inputs for in Engagement Studio. Currently, definition should always be “lightning/control” and “scope” should always point to one of the properties
    • Required – a list of properties that would be required from within Engagement Studio
  8. Action Params auto fills, no changes needed
  9. When you are ready to have this available in Pardot, check the Active in Automations box.

Here’s what it would look like for our sample APEX class above. Note that we’ve chosen to only display the favorite color field in the Engagement Studio, though we are passing the Prospect’s email behind the scenes.

Save the Action and, after a few moments, it will be available for testing!

Can I use an External Action to do things in Pardot?

Imagine being able to take action on another Prospect record from an Engagement Studio Program! While not natively available within the platform, you could build this when combining External Actions with our Free package Flow Actions for Pardot. After setting up the package, you would only need to configure the Marketing App Extension to have any of our Flow Actions available as an External Action.

Create Unified Experiences with Pardot External Activities

External Actions are available with the Winter ‘23 release. These Actions, as well as External Activities, allow Marketers to automate across platforms for a more unified experience. 

How do you plan on using these features to better automate your processes? Tell us in the comments!

Original article: External Actions: The Long-Awaited Pardot Feature

©2022 The Spot. All Rights Reserved.

The post External Actions: The Long-Awaited Pardot Feature appeared first on The Spot.

By |2022-10-13T14:36:51+00:00October 13th, 2022|Categories: API & Integration, Automations, New Features, Release Notes|

Get Ready for MCAE (Pardot) Conditional Completion Actions

Conditional Completion actions are coming to Marketing Cloud Account Engagement (Pardot)! And they’re a game changer for adding complexity to completion actions on your marketing assets.

This has been a long awaited request in the IdeaExchange. So, we’re ecstatic to see it finally come to fruition.

Note: This feature is not currently available in production. Conditional Completion actions will be rolled out during the Summer ’22 release (May 21st – June 11th) and this blog will be updated as we get access to this feature. Stay tuned!

What are Marketing Cloud Account Engagement (Pardot) completion actions?

Pardot Completion Actions allow you to add follow up automations to most Pardot assets such as forms, landing pages, files, custom redirects, etc. 

These actions trigger after someone interacts with the asset such as a click or form fill. Pardot Admins and Marketing Users can configure which actions they want Pardot to trigger after the fact. 

Completion actions include:

  • Add Tags
  • Add To List
  • Add to Salesforce Campaign
  • Adjust Score
  • Adjust Score For Scoring Category
  • Assign Prospect via Salesforce Active Assignment Rule
  • Assign To Queue
  • Change prospect custom field value
  • Change prospect default field value
  • Create Salesforce task
  • Increment prospect field value
  • Notify assigned user
  • Notify user
  • Notify user via Twilio (phone)
  • Register for webinar
  • Remove from list
  • Remove tags
  • Send autoresponder email
  • Set profile
  • Set prospect’s first touch campaign

Currently, you can add as many of these as you see necessary. But keep in mind, they trigger on ALL Prospects that interact with the asset. Conditional completion actions are changing that. 

As Pardot stands today, other automation features, such as Engagement Studios and Automation Rules, can provide ways to conditionally process prospects. However, these automations have limits, and using multiple assets per form fill, link click, etc., can bog down your system. 

With Conditional Completion actions, you will be able to perform all the desired actions right from the asset setup page.  

What are Pardot conditional completion actions?

Welcome conditional completion actions! 

Conditional completion actions add complex logic to your existing or new completion actions on your Pardot assets.

Essentially, you are able to create logic similar to dynamic lists or automations rules (or Salesforce Reports) that follow this pattern:

Before: Upon engagement (click/form fill), then trigger Y
New: Upon engagement (click/form fill) look to see if X = Value; then trigger Y

You can still do regular completion actions that apply to ALL Prospects who engage with the asset in specific ways, but now we will be able to create conditional actions as well. 

Below is an example of what you can expect to see in your account when the feature is released later this summer:

This feature will be available on Lightning list emails, forms, form handlers, files, custom redirects and page actions.

You can read more about it here and watch a quick demo, courtesy of Salesforce, here.

How are conditional completion actions different from normal completion actions?

In terms of functionality, there isn’t much of a difference between regular and conditional completion actions — they look at an action and then apply the necessary follow-up actions. 

However, in terms of usage, conditional completion actions add complexity to the existing completion actions by allowing for criteria in addition to a click or form fill to decide if the action should be completed or not. 

This allows marketers to create branches and manage different types of Prospects differently in Pardot.

Are there any limits or requirements to conditional completion actions?

Lucky for everyone, these actions will be available to everyone upon its release date.

We have identified the following limitations (that could change with further releases):

  • No conditional actions based on list membership
  • No conditional actions on classic email builder list emails (only available in the new Email Lightning Builder)
  • Limit of up to 6 conditional groups per asset (plus your standard completion actions)
  • Limit of up to 15 conditional group actions across all conditional groups per asset

We won’t have a concrete list of limits until this feature goes live, so stay tuned for updates!

What Pardot conditional completion use cases that I can look forward to?

First things first, this particular section will be updated post-release with additional information and screenshots. For now, we are basing these scenarios on existing completion action functionality. So, proceed with caution!

UTM-Based Lead Sources

Reporting on where your online website traffic is coming from is more important now than ever. For many organizations, being able to distinguish between sources of ads and beyond continues to be a hot topic. 

At Sercante, we support our customer’s UTM tracking via custom hidden fields on their forms. Now with conditional completion actions, leveraging these UTM’s real-time to update Lead Source should be easier than ever!

Standard Lead Routing

Nothing magical here, aside from the fact that you can fit multiple territories/region/product assignment criteria into a single form. Previously, this would require multiple automations or a little support from Salesforce to route accordingly. 

If you are interested in learning about how to manage Lead Routing in Pardot, check out my presentation from ParDreamin’!

Block Competitors

For those in industry segments with few players (we know everyone in the ocean), you may find it difficult to exclude competitors currently in Pardot (before they enter Pardot). 

If you have a field that identifies your Prospects as a competitor (email or company for example) you can decide not to send them the email with your latest e-book or asset. This would save you time and effort from setting up individual automation or even using JavaScript.

Streamlined Campaign Management

During ParDreamin 2021, I discussed how you can streamline your asset delivery processes by creating custom fields and leveraging HML, Dynamic Content, and Snippets in the process. Although this is great to reduce the number of assets in the overall process of delivering content, you still need 1 automation rule per asset to update campaign membership. 

By capturing the page title or asset name into a hidden field, you can then leverage this field to add the person to the correct Salesforce Campaign on each form — up to 6 branches (conditional groups). 

This would reduce the number of forms you need to set up overall. 

Multiple Link Click Options For List Emails

One of the most frustrating experiences currently is having an email with more than one CTA and having to pick between “any link” or “specific link” clicks. This feature would allow you to do this with up to 6 different links (we have not seen conditional actions on list emails yet). 

This function would only be available in the Lightning Email Builder and not for the Classic Email Builder. 

Extending The Power of Webinar Connectors

This directly speaks about WebEx and GoToWebinar products. 

Many B2B organizations have webinar series where they would love for people to register for multiple webinars at the same time. As of today, you either had to use (3) automation rules and a custom field, or (3) separate forms as Pardot does not allow for multiple registrations (using Pardot forms).

An alternative to creating multiple automation rules is to use Javascript here, but the hope is that conditional completion actions provide a no-code alternative. 

With this conditional completion actions feature, you can skip setting up the automation across the platform, thus requiring less work and a central location for it all!

Supercharge Your ABM Strategy

Leverage account types or build a new field called “Account Tier” to signal which accounts need the “white glove treatment.” 

Using conditional completion actions, then create custom Slack notifications, User notifications, or User tasks immediately after these Prospects complete their forms. 

In addition, you can also update a custom field such as “Prioritization”  to increase their prioritization in Views in Salesforce. This would be an excellent companion to the Einstein Key Account Identification feature for those on Pardot’s Advance tier or higher.

Imagine the possibilities for conditional completion actions

As a consultant, I am very much looking forward to streamlining automations for my customers by leveraging conditional completion actions in their organizations in the near future. 

If you need to strategize how to leverage this feature in your organization, or you just want to brainstorm ideas, contact us here!

Original article: Get Ready for MCAE (Pardot) Conditional Completion Actions

©2022 The Spot. All Rights Reserved.

The post Get Ready for MCAE (Pardot) Conditional Completion Actions appeared first on The Spot.

By |2022-05-23T20:48:10+00:00May 23rd, 2022|Categories: Automations, New Features, Release Notes, revive|