Salesforce Loyalty: LLMs Redefine Engagement in 2026

Listen to this article · 13 min listen

If your marketing campaigns aren’t adapting in real-time, you’re falling behind. It’s become a basic requirement for keeping customers engaged and justifying your spend. Thanks to new Large Language Models (LLMs), marketers can finally make dynamic tweaks to loyalty programs and personalize experiences on a massive scale. This is a hands-on guide to configuring Salesforce Marketing Cloud to use LLMs for these real-time adjustments, making sure your loyalty efforts actually stay relevant.

Key Takeaways

  • You’ll need to get Salesforce Marketing Cloud’s Einstein AI configured to watch customer behavior data streams and spot loyalty program triggers.
  • The real magic happens in Journey Builder, where you’ll set up decision splits that route customers differently based on an LLM-generated sentiment score or a predicted churn risk.
  • Use Content Builder’s AI features to generate personalized loyalty offers and messages on the fly.
  • You have to monitor the LLM’s performance in the Einstein Engagement Scoring dashboard, planning to tweak model parameters every couple of weeks to keep it accurate.
  • For very custom jobs, you can integrate external LLM APIs using Marketing Cloud’s API Gateway to run advanced sentiment analysis or your own recommendation engines.

Step 1: Integrating Customer Data for LLM Analysis

This whole system is built on data. It’s a garbage-in, garbage-out situation, so your LLM needs a clean, complete picture of every customer interaction to make smart calls. Inside Salesforce Marketing Cloud, that means your data extensions have to be properly structured and populated.

1.1 Verify Data Extension Schema

Go to Audience Builder > Contact Builder > Data Extensions. Pull up your main customer data extension, probably something named “Loyalty_Members_Master.” Check that you have the essential fields and that they’re correctly typed: CustomerID, EmailAddress, LastPurchaseDate, LoyaltyTier, and EngagementScore. To get the most out of an LLM, you also need fields with qualitative data, think a text field for RecentSupportTickets or WebsiteSearchQueries, which give the model rich context for its analysis.

Pro Tip: Don’t bloat your master data extension. I’d recommend creating a separate data extension just for LLM inputs, named something like “LLM_Interaction_Feeds.” You can pipe in customer chat logs, survey answers, and social media mentions there. This keeps your main DEs clean and gives the AI a focused data source to work with.

1.2 Configure Data Stream for Einstein AI

Einstein AI is the brain of this operation in Salesforce Marketing Cloud. To get your data to the brain, head to Analytics Builder > Einstein > Einstein Engagement Scoring and click “Configure Data Sources.” This is where you map your data extension to what Einstein expects to see. For example, your EmailAddress field gets mapped to “Subscriber Key” and LastPurchaseDate to “Last Purchase Date.” Make sure the “Enable for Real-time Scoring” checkbox is ticked. This setting lets Einstein constantly update scores as new data comes in, which is exactly what an LLM needs to use as a trigger.

Common Mistake: People forget to enable real-time scoring all the time. If you miss this, Einstein’s insights will only update in batches, which completely defeats the point of a real-time system. Double-check this setting is on.

1.3 Establish API Connections for External LLMs (Optional)

Einstein’s built-in models are great, but sometimes you have a use case that needs a specialized external LLM (maybe for a specific industry’s jargon). You manage this in Marketing Cloud under Setup > Platform Tools > Apps > Installed Packages. Create a “New” package, add an API Integration component, and plug in the OAuth 2.0 or server-to-server credentials from your external LLM provider. You’ll need to grant it permissions like “Journeys” and “Email Send.” The package then gives you the client ID and secret your journeys need to make secure API calls.

Expected Outcome: At this point, your customer data should be flowing into Einstein AI, feeding its predictive models. And if you set up an external API, Marketing Cloud is now able to talk to that service for more specialized analysis.

Step 2: Designing Dynamic Journeys with LLM-Powered Decisioning

Journey Builder is where you actually put the AI to work. By combining Einstein’s predictions with custom API calls, you can build customer paths that adapt on the fly.

2.1 Implement Einstein Engagement Splits

Inside Journey Builder, either create a new journey or pop open an old one. Drag a “Decision Split” activity onto your canvas. Instead of a normal attribute split, choose “Einstein Split.” You’ll get options like “Einstein Engagement Split” or “Einstein Churn Split.” For a loyalty program, the “Einstein Churn Split” is incredibly useful. You can configure it to branch customers based on their predicted risk of leaving, “High Risk,” “Medium Risk,” “Low Risk.” Anyone Einstein flags as “High Risk” can be immediately pushed down a re-engagement path that hits them with a compelling, personalized offer.

Pro Tip: Don’t stop at churn risk. You can use the “Einstein Engagement Split” to find customers who are very likely to “Open” or “Click” on certain loyalty messages, letting you proactively send them content you know they’ll interact with based on their predicted behavior.

2.2 Configure Custom Activity for External LLM Calls

If you’re bringing in an external LLM to analyze sentiment from service chats, you’ll need a Custom Activity. In Journey Builder, drag a “Custom Activity” onto the canvas. It will run a bit of server-side JavaScript (SSJS) or AMPscript that calls your external LLM’s API. You’ll pass it some customer data, like the text from their last support ticket. The LLM then chews on that text and sends back a score (positive/neutral/negative) or a category (complaint/inquiry/praise).

The SSJS inside your activity will look something like this (in a simplified form):


Platform.Load("core", "1.1.1"). Var accessToken = Platform.Variable.GetValue("@accessToken"); // Retrieved from your installed package
var customerData = Platform.Variable.GetValue("@customerSupportTicket"). Var url = "https://your-external-llm-api.com/analyze". Var payload = { "text": customerData }. Var result = HTTP.Post(url, "application/json", Stringify(payload), ["Authorization"], ["Bearer " + accessToken]). Var response = Platform.ParseJSON(result.Content);
// Store response.sentiment in a data extension field for later use in a decision split

Expected Outcome: Your journeys are no longer static. They now branch and adapt based on LLM-driven predictions, sending customers down different paths with targeted messages based on their predicted behavior or a real-time analysis of their recent feedback.

Step 3: Personalizing Content with LLM-Generated Offers

Routing customers is one thing, but the real win is delivering the right message at the right moment. LLMs let you personalize that message down to the individual.

3.1 Use Einstein Content Selection

In Content Builder, create a few different content blocks for your loyalty program. For instance, you could have one offer for “Gold Tier” members at “High Churn Risk” and a different one for “Gold Tier” members who are “Highly Engaged.” Instead of building complex logic to choose, let Einstein do it. Go to Content Builder > Einstein Content Selection. First, define your “Asset Classes” (e.g., “Loyalty Offers,” “Re-engagement Promos”). Then, upload your different content blocks and tag them with attributes like “Tier: Gold,” “ChurnRisk: High,” and “ProductCategory: Electronics.” When you build your email, just drop in the Einstein Content Selection block. The LLM will pick the best-performing asset for each person based on their profile and real-time behavior.

Common Mistake: Starving the AI of options. Einstein Content Selection works best when it has a healthy variety of assets to test and choose from. You should give it at least 5-7 variations for every content slot you want it to manage.

3.2 Implement AI-Powered Subject Line and Body Copy Generation

Marketing Cloud now has generative AI built right into the editor. When you’re creating an email in Email Studio, you’ll see an “AI Generate” button next to the subject line field and inside text content blocks. Give it a prompt, something like, “Write a loyalty offer for a customer at risk of churn, emphasizing exclusive benefits for Platinum members.” The LLM will spit out several options for you to review. You can pick one or use them as a starting point to refine. This is a huge time-saver for creating personalized campaign content at scale.

Editorial Aside: Always, always have a human review the AI’s output. While the tech is impressive, it can sometimes generate bland or slightly off-brand copy. A person still needs to be the final quality check to protect your brand’s voice, especially with sensitive loyalty messages.

3.3 Dynamic Content Blocks with LLM-Derived Attributes

If you’re really getting fancy, you can use AMPscript in dynamic content blocks to pull in data from your LLM. Let’s say your external LLM (from Step 2.2) recommended a specific product based on a user’s search history. You’d save that recommendation to a data extension. Then, in your email, a snippet of AMPscript could pull that data right into the message.


%%[
VAR @recommendedProduct, @personalizedMessage
SET @recommendedProduct = Lookup("LLM_Recommendations_DE", "ProductName", "CustomerID", _subscriberkey)
SET @personalizedMessage = Lookup("LLM_Recommendations_DE", "CustomMessage", "CustomerID", _subscriberkey)
]%%
<p>Hello %%=v(@FirstName)=%%,</p>
<p>We noticed you were interested in %%=v(@personalizedMessage)=%%. We think you'll love our %%=v(@recommendedProduct)=%%!</p>

This creates a message that is truly unique for that one customer, assembled by the LLM’s analysis.

Expected Outcome: Your loyalty emails are now hyper-personalized. Content and offers are being picked or even written by LLMs in real time, which should drive up engagement and make customers feel like you actually get them.

Step 4: Monitoring and Iterating LLM Performance

A system that makes real-time adjustments needs constant monitoring. You can’t just set up an LLM and walk away. They require care and feeding.

4.1 Analyze Einstein Engagement Scoring Dashboard

Get in the habit of visiting AnalyticsBuilder > Einstein > Einstein Engagement Scoring. This is your window into the AI’s brain. The dashboard shows you how accurate Einstein’s predictions are (“Open Rate Prediction Accuracy,” “Churn Prediction Accuracy,” etc.). Look at the “Factors Influencing Engagement” section. It tells you which data points the LLM is weighing most heavily. A steady drop in accuracy could mean customer behavior has changed or your input data has gone stale.

Pro Tip: Put a bi-weekly review of this dashboard on your calendar. You’re looking for trends, not reacting to daily blips. If you see accuracy dip for two or three weeks straight, it’s time to dig in and see what’s wrong.

4.2 A/B Test LLM-Driven Journeys

Even with a powerful AI, you still need to A/B test. In Journey Builder, use the “Test” feature to set up horse races. For instance, pit a journey path using an Einstein Churn Split against a path using a simple demographic split. Or test two different AI-generated subject lines against each other. Keep an eye on your main KPIs, conversions, unsubscribes, and loyalty redemptions. This hard data is what proves the LLM is actually adding value.

Common Mistake: Assuming the LLM-powered path is better just because it’s more complex. Don’t fall into that trap. Always test against a control group or a simpler alternative to quantify the actual impact of the AI.

4.3 Refine LLM Prompts and Data Inputs

If you’re using generative AI for content, you have to keep refining your prompts. Is there a better way to phrase your request? Could you give it more specific instructions or examples of what good output looks like? At the same time, you need to review the data you’re feeding all your models. Are there new customer attributes that would give the AI better context? Is there old, irrelevant data that’s just creating noise? The quality of your data directly defines the quality of the LLM’s output.

Expected Outcome: You’ll have a clear view of how your LLM is performing, which lets you make smart, data-backed decisions to improve its accuracy and, by extension, the effectiveness of your entire real-time loyalty program.

By using LLMs to make real-time program adjustments, you’re turning a static loyalty program into a living, breathing system. When you correctly configure your marketing platform, integrate AI-based decisioning, and keep a close eye on performance, you can deliver the kind of personalized experiences that build real customer loyalty and produce business results you can actually measure. For any marketer trying to navigate today’s campaigns, learning how to prove AI value in 2026 is going to be non-negotiable. And looking ahead, Conversational AI in loyalty’s future is set to completely change how brands talk to and keep their customers.

What’s the most important data for an LLM in a loyalty program?

You need a mix of quantitative and qualitative data. The quantitative stuff is your standard purchase history, site activity, email engagement, and loyalty tier. But the qualitative data, like support chat logs, survey answers, product reviews, and what people are searching for on your site, is what provides the rich context LLMs need for genuine sentiment analysis and personalization.

How often do I need to check on my LLM’s performance?

Plan on a bi-weekly review. You’re checking its prediction accuracy and the factors it’s using to make decisions. This schedule is frequent enough to spot trends or shifts in customer behavior so you can make adjustments to your models before campaign performance takes a serious hit.

Can I just let an LLM fully automate my loyalty program?

No, and you shouldn’t want to. LLMs are incredible for automating tasks like real-time pathing, content personalization, and predictive scoring, but you absolutely need human oversight. A marketer’s job is to provide the strategic direction, ensure brand voice stays consistent, handle the ethics, and sanity-check the AI’s output to make sure it all lines up with business goals.

What are the usual headaches when integrating LLMs into loyalty programs?

The most common problems are data quality and getting different systems to talk to each other. After that, people struggle with the complexity of training and fine-tuning models, handling data privacy, and figuring out how to turn the LLM’s outputs into a concrete marketing action. You’ll need good data governance and people from different teams working together to solve these.

Do I need an external LLM, or is the one in my platform enough?

For most loyalty program tasks, the built-in AI in a platform like Salesforce Marketing Cloud’s Einstein is more than powerful enough. You should only look at an external LLM if you have a very specific, niche task that requires custom-trained models, unique linguistic analysis, or integration with a proprietary data source that the platform’s native AI can’t easily access. Start with what’s built-in. You can probably get the job done there.

Editorial Team

The Editorial Team at Rank & Discover is a group of writers and editors who cover marketing, brand, and growth. They research each story and publish under a shared desk byline — experts in their fields, working as one team.