I've seen a couple of different ways of dealing with the previously unsubscribed but nothing that works exactly for what we're looking for. In respect to anti spam laws like CAN-Spam we're looking for a resolution that allows us to show the subscription checkbox only if the lead has previously unsubscribed. We don't want to automatically change these unsubscribe field based on form fill because we don't want to have to have the language at the bottom of the form that tells leads submissions will subscribe them to our stream. We also don't want to offer leads who are already subscribed a very obvious way to unsubscribe (it's still included in the footer of our emails).
Has anyone set up anything similar to this? Are we be overcautious? Would love to hear what everyone else is doing to respect can-spam laws and such.
In the past I've had success with only showing the subscription preferences on our forms if a person was not already subscribed to something. This way there wouldn't be any confusion with a person not checking the box and does that equal an unsubscribe or not (personally, I don't consider leaving an unchecked box an unsubscribe, but have seen people who do).
An email preference center/unsubscribe page is really where a person should be opting out of email lists that they're on.
The approach that Dory suggests was our intent as well. But we ran up against the following challenge:
And of course the reason why we wanted to hide the field is because Marketo considers boolean fields - even when the value is empty - as having a value ("false") - rather than NULL. So if someone who was already opted-in, didn't check the opt-in checkbox, Marketo would overwrite the TRUE value with FALSE.
Thus the reason for our complex process discussed in the thread below.
You can read how we do it in this thread: Re: Opt-in field checkbox on Form
Maybe easier than you're framing it. This sounds like the pattern I call self-hiding field: a field whose own visibility is determined by its current value. So if it is checked, it is hidden; if unchecked, it's visible. Right?
Like Dory said, we don't want any confusion like the boolean field changing to 'true' because the box was left empty so we decided against using the unsubscribe filed and instead have a field called 'Newsletter Registration.' From there we will run a data management campaign to resubscribe anyone who was unsubscribed and checked the box on form submission.
I'm having trouble creating the hiding / showing rules because we're using Newsletter Registration but unsubscribe is determining whether to show the field.
So for conditional visibility rules, you need to have the unsubscribe field as a hidden field on the form that is prepopulated with their value. Then, for conditional visibility you can reference that value.
We don't like using the unsubscribe field as the conditional value for the following reasons:
As I mentioned above, the conditional testing only works on Marketo LPs since out-of-the-box form prefill doesn't work on embedded forms.
Thanks, Dan. I see your point on the unsubscribe field but our main focus here is to get leads to opt-in so they re-subscribe.
I'm using embedded forms on our external web page now and they are prefilled. We use a Marketo Plugin from WP and they seem to be working. Same goes for any LPs hosted by our third-party. Are you saying that conditions won't work at all on an embedded form?
I'm using embedded forms on our external web page now and they are prefilled. We use a Marketo Plugin from WP and they seem to be working.
At the cost of a glaring Denial of Service vulnerability, no doubt. The problem is there's no WP plugin that's been successfully built to perform PreFill without such a vulnerability. As such we don't consider any of those professional-grade.
Marketo embedded forms don't natively support PreFill. They do however support Progressive Profiling, and (actually contrary to Dan's point in this case) with a boolean field, you can use ProgPro to determine whether the checkbox is checked or not, since a non-empty boolean field in Marketo is true / empty field is false.