Hi Stephen,1 of 1 people found this helpful
I don't know if it's the most efficient way, but we usually build into our Smart Lists that the lead has not filled out the form/received the email/visited the webpage already - whatever is relevant to the program. You could also create static lists that people automatically get added to when they download the content and suppress those.
Some other ways I can think of are what you suggested - creating custom fields in Marketo and using "change data value" to update these - but depending on how much content you have, that could be a lot of effort and even more work than just building it into the smart lists.
You could also consider building these as engagement programs. The program will not send someone an email they have already received, but that doesn't take into consideration whether they have filled out the form/etc already unless you set up a lot of different streams with specific qualification rules. Again, seems like it could be a lot of effort.
I agree with Laura that engagement programs or static lists are best. If you use programs within your engagement programs that the lead cannot run through more than once you can ensure you aren't inviting the person to the same content again.
This works as long as you have one program per asset. Otherwise static lists that you add them to after sending them the download link will be your best shot, then you need to make sure you add an exclusion for that list each time as Laura says.
I would avoid the custom fields at all costs -- you will end up with huge clutter and overhead as your content library grows. It will be hard to scale.
Stephen Schimmel we use Canonical Exclusion campaigns, that uses canonical lists and program exclusions to manage this!
For every email that we have that promotes a piece of content, we have an "Exclusion" Status campaign with a Request Campaign in the Smart List.
(Email program steps: Delivered, Opened, Clicked, Unsubscribed, Exclusion)
Then we have a campaign that looks for anytime someone downloads a piece of content (fills out a form, or visits a thank you page), and then we request all programs that promote that content, to change their status to "Exclusion", so that they become a member of that program, but they don't receive the content.
If you don't want to set up an extra program status, you can simply add everyone who downloads the piece of content to a list. Then in all of your promotional programs, have a filter that says "Not a Member of List X."
Does that help and make sense? Let me know!