I am new in Marketing Cloud and did go through some docs(Mostly config stuffs). Our Customer has given me requirement where they want to create a Task for Contact Owner if email is send to Contact email from Marketing Cloud is Hard Bounced?

I think Journey Builder maybe helpful here but I am not sure whether it is a correct approach. Also, I would like to know if it is handled from Salesforce side also(e.g. How to identity if Email is Hard Bounced in SF)?

Any help here is appreciated!

2 Answers 2


Update with a sample SQL:

Note: This is not a full solution but the ideas so you can start to search or be aware about them.

Let's split the issue into smaller parts.

they want to create a Task for Contact Owner if email is send to Contact email from Marketing Cloud is Hard Bounced?

Then, in Marketing Cloud, you must first determine which contacts have Hard Bounced status.

-> To view bounce data for emails from your Marketing Cloud account, query the _Bounce data view where you can find Subscriber Keys with Hard Bounced status by "BounceCategory" column. Reference for this data view

After you get the query result, you would need to find the Contact Owner for these Subscriber Keys (to assign the task to them later). For this, you would need to leverage a Synchronized Data Extension. E.g Synchronized Contact Data Extension is having the relationship for the contact and the contact owner.

-> Use 2nd SQL query to map with the first result query with the synchronized data extension to get the Contact Owner ID. (or you can combine both of them in a SQL query). Reference: Synchronized DE

A sample SQL:

FROM _Bounce AS b
INNER JOIN ENT.[Contact_Salesforce] as c
ON b.SubscriberKey = c._ContactKey
WHERE b.BounceCategory = 'Hard Bounce'

Now you already have the data: subscriber keys (also SF contact IDs) with hard bounced status and the Contact Owner IDs. The last thing you need to do is creating the task for the Contact Owner.

I think Journey Builder maybe helpful here but I am not sure whether it is a correct approach.

Since you are new to MC and familiar with Journey Builder, so using Journey Builder is a good idea. You would want to use the data extension you get from the 2nd query above as the journey data source and use a Task activity with your configuration to create task.

Note 2: The journey can be ran as a one time job or can combine an automation with SQL activities and a journey to run as a batch job. I don't see if have a way to make it run in real time.

  • But how this Data extension gets triggered? for e.g. I have queried on all Contacts where I want to send email notification. I have used the data extension that you suggested and then use "Engagement Split Summary" condition and even if user receives an email for testing purpose I am creating success task but after activating Journey Builder I am not able to see any tasks created. How can I run Journey Builder once it is activated?
    – SFDCDJ
    Commented Feb 16, 2023 at 11:59
  • @sfuser I did not mention about Engagement Split but the Task activity to create a task. Create a Task Activity in Journey Builder where you use the option "Assigned to ID" to assign to the Contact Owner ID and "Name ID" to map with the Subscriber Key who having Hard Bounced Status in the DE
    – Duc Le
    Commented Feb 16, 2023 at 12:27
  • And one more thing, just focus on your initial purpose first. You want to create the task for who already are hard bounced right? Engagement Split has nothing to do in this case
    – Duc Le
    Commented Feb 16, 2023 at 12:35
  • Could you share sample SQL query of how to combine those Bounce email with Contact Info? I have tried below. Need to confirm if its correct? SELECT DISTINCT UPPER(s.SubscriberKey) as EmailAddress, s.SubscriberKey, b.BounceCategory, bh.Email, bh.Id, bh.ownerId FROM _Subscribers as s INNER JOIN _Bounce as b ON b.SubscriberKey = s.SubscriberKey INNER JOIN Contact_Salesforce as bh ON bh.Email = s.SubscriberKey WHERE b.BounceCategory = 'Hard bounce'
    – SFDCDJ
    Commented Feb 16, 2023 at 12:46
  • @sfuser Updated with a sample SQL. It's enough for you to find out the rest
    – Duc Le
    Commented Feb 16, 2023 at 13:13

To create a task for the contact owner when an email hard bounces, create an automation with two activities:

  1. Use a SQL query activity to query the _Bounce data view for contacts that have hard bounced.
  2. Use a script activity to create tasks in Salesforce for those contacts, assigning the task to the contact owner.

Note that changes to email addresses in Salesforce don't update in Marketing Cloud automatically. To update your all subscriber list, create an automation that looks for changes to email addresses in Salesforce and updates the all subscriber list accordingly. More information can be found here: https://markus.codes/2019/10/09/reactivate-subscribers-after-email-change-update-of-sync-email-changes-from-sfdc-to-marketing-cloud

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