In SF Marketing Cloud, we use the same email content in multiple journeys. Right now, we create multiple emails - one for each journey it's in. This allows us to apply unique names to each email which helps our analyst with our reporting.

The problem we are encountering is sometimes the content needs to be adjusted but we will miss the adjustment in old emails, thus we send outdated or incorrect content in previous journeys.

Is there a way for us to use one email for multiple journeys but also add certain metrics so our analyst can differentiate the data coming in?

  • remember to mark my answer as accepted if it has been helpful Commented Aug 8, 2023 at 8:23

1 Answer 1


Yes, you will see that a single email is sent by a so called Job. This is a unique send activity, which can be either a Triggered send, Guided send or Journey Builder send.

Each time an email is sent, the send activity gets this Job ID passed on to it. Same goes for Bounces, Opens and Clicks. So each activity which is connected to the specific send, can be traced back to it. In some cases, these data view have an ID populated in the TriggererSendDefinitionObjectID field. In many cases it is empty. More on this later.

All this data is stored in SFMC data views. Here is the official documentation. Here is much better documentation by Zuzanna.

Using SQL, you can join either of the engagement (Sent, Bounce, Open and Click data views) with the _JourneyActivity Data view. You should join them on TriggererSendDefinitionObjectID = JourneyActivityObjectID This data view has the information on which (if any) journey initiated the send. But it doesn't have the name. To obtain the name, you must join the last data view: _Journey. It has the JourneyName field, which is probably what you are looking for.

This example shows you all the engagement for a particular email name, across all the journeys from which this email is sent:

count(s.subscriberkey) as sends, 
count(o.subscriberkey) as opens, 
count(c.subscriberkey) as clicks 
from _journey jrn
inner join _journeyActivity ja 
on ja.VersionID = jrn.VersionID
inner join _Job j
on j.TriggererSendDefinitionObjectID = ja.JourneyActivityObjectID
left join _Send s 
on j.JobId = s.JobId
left join _Open o 
on j.JobId = o.JobId
left join _Click c 
on j.JobId = c.JobId
where j.EmailName = 'Your email

This is of course just a single and simple use case, but it should illustrate how you should be able to retrieve this data.

On another note - updating the email globally will NOT update it in all the journeys where it is being used. You need to "revisit" every location of this email, and update it, as per this answer by Markus: https://salesforce.stackexchange.com/a/249327/36623

You must log in to answer this question.

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