Batch personalization, DMO activation and AMPscript

Updated Nov 8, 2026 Based on Salesforce docs updated 2026-08-27

For channels that don’t call the API in real time — like email — precompute decisions in batch for a segment, write them to a DMO, and read them where you need them, for example with AMPscript in a Marketing Cloud Engagement email send.

Run batch and activate

  1. Create a Batch Personalization for a Data 360 segment.
  2. It writes decisions to the Batch Personalization Output DMO.
  3. Activate the DMO to your destination (Marketing Cloud Engagement, GCP, Amazon S3, or Azure).
  4. In the email, read the activated row’s decision fields with AMPscript.
personalization-lookup.ampscript (illustrative)
%%[
var @decisionContent
set @decisionContent = Lookup(
  "Personalization_Activation",
  "ContentValue",
  "SubscriberKey",
  _subscriberkey
)
]%%
%%=v(@decisionContent)=%%
Batch personalization writing decisions to a DMO, activated to Marketing Cloud Engagement and read in an email with AMPscript
Screenshot: Batch personalization and activation

Discussion

Comments are not configured for local development. They appear once the site owner connects GitHub Discussions (Giscus).

Support SF Guide

SF Guide is a free, independent guide to Salesforce Personalization, built and maintained in the open. If it saved you time on an implementation, a small contribution helps keep it current and ad-light.