Hello, i have struggled long time with this and nothing has yet worked smoothly:
We have 3 ways to double-opt-in for Newsletter:
- Direct opt in form on website (works fine)
- OptinMonster form (works fine)
- Custom field "opt in" (checkbox) below any other form (using its own campaign). Here is the problem:
When i add a trigger "fills out any form" and then a filter "data value changed" - "opt in" field set to "true", it still will fire the campaign even if the field wasn´t checked.
Should i use a trigger "data value changes" instead? But then it would also do it when i merge leads or manually edit the lead, right?
If i select a filter with only the custom field "opt in" = "true" then it would just run the campaign if an already opted in user fills out the form, right?
How are you doing it? What am i missing?
I´ve checked several posts but haven´t found this specific problem.
thanks for any suggestions!
Michael
You'll need to modify this somewhat. What you have here won't affect any new leads that enter your system since you have "ALL" as the rule logic for the filters; and "Data Value Changed" does not apply for new leads (only existing leads). So change the rule logic to ANY:
And add in the "Lead is Created" trigger:
This is correct, however, Lead is Created is dangerous in high vol systems.
I might suggest a DVC trigger instead of Fills Out Form.
Thanks Dan Stevens, interesting.
But why would "All" logic not work on my example, if i have 1 trigger and 1 filter below? In my screenshot i have 2 filters but it would be one or the other. That wouldn´t work with "all" then?
In your screenshot, there is "lead is created", however i don´t want the campaign to ever run when a lead is created. It is specifically for a form fill-out. I will try this out leaving uot the Lead is Created.
In your screenshot, there is "lead is created", however i don´t want the campaign to ever run when a lead is created. It is specifically for a form fill-out. I will try this out leaving uot the Lead is Created.
Form fillout is one of the ways leads are created. You can constrain Lead is Created by source (forms only); there's conventional wisdom that the LiC trigger should be used sparingly (either in one concentrated trigger campaign or not at all), but sometimes it's unavoidable.
Remember/realize that DVC refers to a truly changed value, not the value when initialized.
But why would "All" logic not work on my example
Whenever you use ALL logic, you are saying that BOTH conditions must be true for lead to qualify. If a new lead fills out a form, the DVC filter will be false.
there's conventional wisdom that the LiC trigger should be used sparingly (either in one concentrated trigger campaign or not at all), but sometimes it's unavoidable.
Sanford Whiteman, while I understand that the LiC trigger should be used sparingly, what other choice do we have - especially as we are still in the interim of everyone getting migrated to Munchkin 2.0? My rationale is included in the following thread - where I commented on October 15, 2016: Campaign Queue Backlog
Another thread where this is discussed is here: Re: "Lead is Created" trigger - best practices on when to use
Hi Dan, this did not work as expected.. i used the same logic now as in your screenshot. It happened that i filled out a form that did not have the checkbox to opt in, and as i had been already opted in, the campaign did run (so i signed up even if i did not check any checkbox).
Any ideas? Do i need to add a hidden "false" value on all the other forms where its not there?
Thanks for all the comments!
Can you post screenshots of your smart list and your form? Not sure why this isn't working for you. Are you sure you don't have the opt-in field somewhere on the form - even as a hidden field? Because what will happen is if you don't autofill it with the current value ("true", in your case), Marketo will change the value of the field back to "False" on submit).
Any time we include a form that has the opt-in checkbox - and to prevent an existing opted-in lead from having the value of the field reset to "False" - we include the following process:
First, on our forms, we include our "optin-date" field as a hidden field. If a date exists - meaning, the lead has opted in at some point in the past - we hide the opt-in field from the form:
In addition - we also include this smart campaign to ensure the value stays persistent:
Of course, every one of our emails includes the option for anyone to opt-out/unsubscribe - and this supersedes all of this for future email sends.
Thanks for that, Dan Stevens that looks good. Can you clone it over to me?
Here is my campaign:
No idea why it ran, if on the form was no "optin" field at all. Where can i read about it resetting when it´s not filled out? I had no idea it would reset.
And there aren´t any other campaigns that could have done it.
In the first trigger i excluded the "opt-out" forms.
Did you create yours with any specific documentation?
And what field type is your "opt-in Date" field? Does it store the actual date?
Thanks a lot for this,
Michael
Any time someone opts-in via our forms, we have a trigger campaign to date-stamp them AND associate the program that was responsible for that (which is useful for auditing purposes):
The reason why we have to add all of this additional complexity is because Marketo doesn't natively support form pre-fill on embedded forms on our website. And thus the need for both approaches that I explained above.
And no, documentation does not exist for any of this as it's all custom work. But here are some additional discussions you might find interesting:
Re: Managing email opt-in on subsequent form visits
Block field updates is preventing a checkbox from being checked (has never contained a value) - this is why we can't use "block field updates" from preventing an "opt-in = TRUE" from being overwritten. Marketo considers FALSE - even with Boolean values - an existing value. If we did it like this, Marketo would never allow anyone to opt-in.