Contact Us

April 10, 2025

May 13, 2026 5:50 pm

Managing Dynamic Content in Journey Builder for Contacts with Multiple Entries

Share with

Understanding the Problem

In this scenario, the dynamic content is managed via AMPscript lookup to a data extension that specifies which content block ID per location. The concern is that having the same contactID may cause confusion for the dynamic content lookup. However, as Lesley Higgins pointed out, the content is always bound to the entry row, so the correct content should be displayed even if a contact exists in the journey multiple times.

Platform-Level Explanation

The key to resolving this issue is to understand how Journey Builder handles dynamic content and contact data. As Claudia Hoops noted, this is a case of journey data vs contact data. Journey data is specific to each entry in the journey, while contact data is associated with the contact as a whole. By using the value from the entry source as the lookup value, we can ensure that the correct content is displayed for each entry in the journey.

The root cause of this issue is the potential confusion between journey data and contact data. By not using the correct lookup value, the dynamic content may not be displayed correctly, leading to a poor customer experience.

Step-by-Step Solution

To resolve this issue, follow these steps:

AMPscript Code

set @lookupVal = AttributeValue('fieldInEntryDE')
set @contentBlockID = Lookup(@lookupVal, 'ContentBlockID', 'Location')

By using the value from the entry source as the lookup value, we can ensure that the correct content is displayed for each entry in the journey.

Best Practices

To avoid similar issues in the future, follow these best practices:

Checklist for Managing Dynamic Content in Journey Builder

  • Use the value from the entry source as the lookup value
  • Consider adding an additional absolute criteria to the lookup
  • Use journey data instead of contact data when possible
  • Test your journey thoroughly to ensure the correct content is displayed
  • Use AMPscript to lookup the correct content block ID
  • Document your journey and data extensions to avoid confusion
  • Use a consistent naming convention for your data extensions and fields

Frequently Asked Questions

What is the best way to manage dynamic content in Journey Builder?

The best way to manage dynamic content in Journey Builder is to use the value from the entry source as the lookup value, and consider adding an additional absolute criteria to the lookup.

Can I use contact data instead of journey data?

While it is possible to use contact data, it is generally recommended to use journey data instead, as it is specific to each entry in the journey.

How do I test my journey to ensure the correct content is displayed?

To test your journey, use the Journey Builder testing tools to simulate different entry scenarios and verify that the correct content is displayed.

What is the difference between journey data and contact data?

Journey data is specific to each entry in the journey, while contact data is associated with the contact as a whole.

Can I use AMPscript to lookup the correct content block ID?

Yes, you can use AMPscript to lookup the correct content block ID based on the value from the entry source.

Genetrix Technology · Salesforce Marketing Cloud Partner

Need help shipping this in production?

Genetrix builds and untangles Salesforce Marketing Cloud and Agentforce setups for teams that want it done right the first time. If anything in this post sounds familiar, talk to us before it ships.

Get in Touch with Genetrix →

Blogs for the

Business-Savvy!​

Let’s Connect

A 30 min no cost strategy session
with cloud support expert

Let’s Connect

A 30 min no cost strategy session
with cloud support expert