I'm trying to understand how does the connection between DEs in the contact builder works.

For example lets say i have a 1 to many connection between Contacts DE and Product DE, now a single contact can have many products connected to him, and within a journey i want to send an email to the contact for every product the contact have and on top of that i want to have a dynamic content in the email based on product feature within the product DE. How does the platform knows how many emails to send to the contact (only one record for each contact in the contact DE) and which content to populate in each email (assuming i created the ampscript code to support that).

Can someone please clarify this?


1 Answer 1


You can send multiple emails to a Contact moving through a journey, but you would need to use a Decision Split Activity and this only works with 1:1 cardinal relationships, so that's not an option.

The solution would be to:

  1. Create a Population of all your Contacts
  2. Create a Query Activity to insert records into a Sendable Data Extension, where you create separate records for each Contact and their products (so a Contact exists in the DE multiple times)
  3. Use the DE you created in Step 2 as your Event Source DE
  4. Configure the Contact Re-entry mode to 'Re-entry anytime' in your Journey Settings.
  • Thanks Eliot, does this mean that the platform doesn't know how to handle a 1 to many relationship between tables for sending emails?
    – DeWise
    Sep 21, 2016 at 8:29
  • Essentially, yes. A Decision Split Activity appears to evaluate the filter expression based on the first record that is found. If you have multiple rows, then it won't loop and evaluate the expression for other rows. Sep 21, 2016 at 10:15

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .