We were told by our account rep that hard bounces were hurting our reputation and MC will continue to send to subscribers even if they hard bounce, unless we remove them. Can we create a list to suppress that automatically pulls subscribers who hard bounce?
-
Isn't Exact Target, automatically stop sending emails if email is flagged as HARD BOUNCE?– SohailCommented Oct 3, 2016 at 19:53
-
You are correct. SFMC still sends to subscribers with a "bounced" status.– Adam SpriggsCommented Oct 3, 2016 at 21:04
-
And the painful part is that SFMC has put a cap on no of days and not on bounced emails. Which means that there can be 100 bounced emails for a subscriber but the action will be taken only after 15th day of 1st bounce.– Gajendra SinghCommented Jan 21, 2017 at 22:20
3 Answers
Subscriber with status Bounced should not be delivered to.
However it can take up to three attempts before the subscriber status is changed to Bounced. See the Hard Bounce section and the diagram at the end of the following page for the details of the rule https://help.exacttarget.com/en/documentation/exacttarget/resources/system_guides/bounce_mail_management/
You can also create a suppression list and add emails to it (after the first bounce for example) and choose that list at send time. Emails in this list will not be emailed https://help.exacttarget.com/en/documentation/exacttarget/subscribers/suppression_lists/
You can create an "Automation" or "Program" to run every day with a query to populate (Update Type=Append) bounce data from each previous day to a data extension with information about Bounces emails and use that as your suppression list. As someone mentioned in the previous response, it takes 3 non-deliverable attempts before the subscriber is marked as a 'Hard Bounce'. You would not want to use the 'Status' column (It only stores values of Active, Unsubscribed, Held or Bounced). It's the 'Bounce Category' that you want to look at since that's where different types of bounces such as 'Hard bounce' is recorded.
You can be as specific as you wish in your query for the "Bounce Category", Email Name or Date Range when the Bounce occurred. In the example below I used this query to search for bounces that occurred yesterday for a particular email name.
sql query activity example:
select b.SMTPBounceReason as 'SMTP Bounce Reason', sb.emailaddress as 'Email Address', s.jobid as 'JobID', s.eventdate as 'Event Date' , j.emailname as 'Email Name', j.emailSubject as 'Email Subject', sb.subscriberid as 'SubscriberID', sb.domain as 'Domain', sb.status as 'Status', b.BounceType as 'Bounce Type', b.BounceCategory as 'Bounce Category', b.BounceSubcategory as 'Bounce Subcategory', j.SendClassificationType as 'Send Classification', sb.SubscriberKey as 'SubscriberKey'
FROM _sent s
INNER JOIN _job j ON s.jobid = j.jobid
INNER JOIN _bounce b ON s.SubscriberID = b.SubscriberID
INNER JOIN ent._subscribers sb on s.subscriberid = sb.subscriberid
where convert(date, s.eventdate) >= CONVERT(varchar(10), DATEADD(day,-1 , GETDATE()), 101)
and convert(date, s.eventdate) < CONVERT(varchar(10), DATEADD(day,0 , GETDATE()), 101)
AND j.emailname = 'YOUR SPECIFIC EMAIL NAME'
and b.SMTPBounceReason = (select min(SMTPBounceReason) from _bounce as x where x.subscriberkey = s.subscriberkey)
AND b.BounceCategory = 'Hard bounce'
GROUP BY sb.emailaddress, s.eventdate, s.jobid, j.emailname, j.emailSubject, sb.subscriberid, sb.domain, sb.status, b.SMTPBounceReason, b.BounceType, b.BounceCategory, b.BounceSubcategory, j.SendClassificationType, sb.SubscriberKey
The data extension schema:
Email Address (datatype as emailaddress - 254 - nullable checked)
SubscriberID (datatype as text - 50 - nullable checked)
Email Name (datatype as text - 500 - nullable checked)
Email Subject (datatype as text - 500 - nullable checked)
Event Date (datetype as date - nullable checked)
Domain (datatype as text - 50 - nullable checked)
Status (datatype as text - 50 - nullable checked)
JobID (datatype as number - nullable checked)
SMTP Bounce Reason (datatype as text - 1000 - nullable checked)
Send Classification (datatype as text - 500 - nullable checked)
Bounce Type (datatype as text - 500 - nullable checked)
Bounce Category (datatype as text - 500 - nullable checked)
Bounce Subcategory (datatype as text - 500 - nullable checked)
SubscriberKey (datatype as text - 50 - nullable checked)
Hope this helps.
From the Salesforce Help doc Suppression Lists in Marketing Cloud:
If this email campaign is the third campaign in which the subscriber bounced, the application checks when the first bounce message was received for this subscriber. If fewer than 15 days have passed since the first bounce message was received, the subscriber retains the Bounced status and is retried in your next campaign. No further attempts are made for this current email campaign. If the bounce occurred more than 15 days before the first bounce message, the subscriber status changes to Undeliverable unless the bounce is from a trusted domain. A trusted domain is one in which Marketing Cloud trusts the ISP or receiver's bounce feedback implicitly. For example, if hotmail.com is a trusted domain and Hotmail's feedback is that an address is bad, the status automatically changes to Undeliverable. The system doesn’t wait for the address to bounce three times over 15 days. If the bounce comes from any other domain, a subscriber receives three bounces to acquire an Undeliverable status. The application doesn’t attempt a delivery to this subscriber in any future campaigns.