How to temporarily suppress an external list against a single program

Highlighted

How to temporarily suppress an external list against a single program

We have trade agreements with clients to send their eblasts to our audiences. Often the client will provide a list of email addresses they don't want to receive that particular program, which can have upwards of 1 million names. How do we easily suppress these names against our programs without adding them to the database?

With other vendors, they had an area specifically for suppression lists, where the names would not be added to the database but run against the mailing when it was sent.

I'm hoping there's a super simple solution that will work in Marketo!

18 REPLIES 18
Highlighted
Level 10 - Champion Alumni

Re: How to temporarily suppress an external list against a single program

You'll have no choice but to add them to your DB - if only temporarily.  But be very careful with this - especially for a million names.  Not only can this negatively affect your future deliverability/sender score, but also other customers who share the same Marketo pod as you (assuming you're not using a dedicated IP address).

Highlighted

Re: How to temporarily suppress an external list against a single program

But how do we easily remove the names so they're only added for that single program? This is the challenge we're running into, we don't want to negatively affect our deliverability and don't want to make it a manual process to delete suppression lists. Additionally, we're governing our instance so only a select few have the ability to upload, which further complicates set up.

Highlighted
Level 6 - Champion Alumni

Re: How to temporarily suppress an external list against a single program

For smaller lists, just use an "email address is not..." filter.

You could try hooking up your Marketo to Power BI or a similar platform or export your entire audience once a week (this can take all day but just let it run in the background) and use a tool like MS Access to vlookup on email and exclude those that are already in your system.

Highlighted
Level 10 - Champion Alumni

Re: How to temporarily suppress an external list against a single program

We do something similar with Talend and Optizmo. Unfortunately this situation requires a major suppression and extraction tool.

We only then upload leads that have passed the filters and are available for emailing.

Highlighted
Level 10 - Community Moderator

Re: How to temporarily suppress an external list against a single program

Webhook.

  • Upload list to remote server (could be simple textfile)
  • Call Webhook before send
  • If match found, Remove from Flow

The external list never exists in your database but is used to exclude leads.

Highlighted
Level 10 - Community Moderator

Re: How to temporarily suppress an external list against a single program

P.S.  By "upload" here I mean literally "copy a dumb file onto a file system" like saving a .TXT file into your Marketo assets. Not an "import" in any sense.

Highlighted

Re: How to temporarily suppress an external list against a single program

So far this answer seems the most doable to my team, but the programmer I'm working with was wondering if you could share an example of an endpoint you're using with a webhook in this manner? He's a bit in the dark as to where this would happen in the process -- for example, is it a flow step in a Smart Campaign?

Highlighted
Level 10 - Community Moderator

Re: How to temporarily suppress an external list against a single program

The webhook itself is run by a trigger SC.  You can call that campaign using Request Campaign (if there's no better way) or via some other more organic trigger (like someone being added to a Program or List).

Then act on the webhook results in one of 2 ways:

  1. Using the Webhook is Called trigger, check the value of the result directly (like "isInSuppressionList" : "true"). Then the next step is removing someone from list/program. The advantage of this method is you don't need to create permanent fields on the lead if you don't want to.
  2. Have the webhook store its results in a new custom field on the lead, like (as in the previous example) In Client A Suppression List.  Then when there's a Data Value Changes event to that field, check the value and remove people as necessary. This is the more typical way webhooks are rolled out.
Highlighted
Anonymous
Not applicable

Re: How to temporarily suppress an external list against a single program

In the scenario you describe, won't the webhook be called once for each lead in the list to be checked against the remote suppression list?