Answered to you through the case. I also created 2 additional cases on 2 other customer instances and sent you the case numbers by DM.
Here’s the information I got from our engineering team.
The ability to have SFDC score changes update values back inside of Marketo was a bug and that bug got fixed when a patch rolled out to correct something else related to the changes to the Marketo Salesforce sync.
Here's what was going on:
All score fields, even custom ones, are set by design to be “Marketo-win” fields so the values on the Marketo side will always push back up to SFDC and overwrite the value on that side. That’s the expected behavior, but there was a way that behavior could be accidentally overridden. That ability to override expected behavior is the bug that was fixed.
Here’s how it worked.
There are two settings at play, the “Marketo always-win” setting and the SFDC Read-Only setting on the field itself. Score fields are set to Marketo always-win by default. If you set the field as Read-only from the SFDC side, it’s supposed to block updates from Marketo coming up to SFDC, essentially in effect creating an SFDC always-win situation. This conflict is what the bug took advantage of to force the score change from SFDC down to Marketo, despite the expected behavior. The other piece to the puzzle is that it only happens when the two field settings are set in that way to create that conflict, which is why some people experience it and others didn’t, (like we found out here and here).
What's been done:
The bug got fixed, so custom score fields will always win on the Marketo side. However, that doesn’t have to stay that way.
Changes you can make to the behavior:
If you’d like to change that setting, we can enable it to allow score changes from SFDC to come down to Marketo by putting in a service request with Engineering to switch off the Marketo always-win setting. That will make it a true bi-directional sync where changes on either side will be allowed to sync over to the other side and stick so they aren’t overwritten.
Disclaimers about changing the behavior:
What to do next:
Test this behavior out before submitting the case to Support to have it changed. Engineering has released patches to correct the behavior and you should re-test your fields to be 100% sure of what they are doing currently as of today before submitting a case asking for that behavior to be changed.
If there are any other questions at all, you can post them here, but you can also Contact Marketo Support to get answers specific to your particular use case.
Thanks for the detailed explanation. I read the other use cases you linked to, and our instance was one where the score fields were NOT Read-Only and the bi-directional sync was happening with no issues. In fact, that bi-directional sync was functioning for us since we've had Marketo the past 6 years. So it's very interesting and sucks to find out that feature was actually a bug. It would have been nice to leave as is or make that an actual feature.
We will not be changing the Marketo always-win setting as you mentioned above. We don't want this to affect our other score fields if we decide to update our lead scoring model in the future.
We will have to keep using an integer type field for "Lead Score" we created as a work-around in Marketo to allow for that bi-directional sync.
Yes, we only created a new field in SFDC to replace our Lead Score field which was the field that stopped syncing bi-directionally for us when the "bug" was fixed. When the new field synced to Marketo is created an integer type field in Marketo for Lead Score. We're okay with not being able to revert the Lead Score field back to score-type since we don't use any Score-type triggers or batch filters for the Lead Score. We are able to still use smart list trigger and batch filters by using the Data Value Changes/ed filters if needed. Hope that makes sense.
I've been doing some more research with the Engineering team and we may have a work around, but it would require some testing to confirm it would work as expected. Definitely would need a support case for it. Here's the details:
If you make the change and remove the Marketo Always Win setting for all custom score fields, you could then change settings on individual fields to block updates one by one.
For example, if the Always Win setting is turned off, it goes to being a true bi-directional sync (again, only on the custom score fields, not on the standard Lead Score field). But, you could take one specific field and make it Read-Only on the SFDC side. That would make the SFDC field the winner and Marketo would take that value coming down from SFDC.
Also, you could instead block field updates from Admin > Field Management to stop field value changes coming down from SFDC. That should retain the Marketo value and push it back up to SFDC (similar to the Marketo Always Win setting would).
This could be a work around that gets around the all-or-nothing aspect of removing the Marketo Always Win setting.
The catch here, the part that will require testing to confirm, is with blocking field updates from Admin > Field Management to stop the values from coming down from SFDC. While that would stop the Marketo value from being overwritten, we may not ALWAYS push it back up to SFDC since it’s a little different than the Always Win setting.
The read-only technique will only work if the field in SFDC is a formula field, as it does not request the "field update" mechanism from the Marketo user. But if the total score field is computed with a workflow, I am 100% sure it will not work, as the workflow trigger in SFDC means the field IS updated by the Marketo user, together with the behavior and the demographic scores, in the same SFDC transaction.
And we do need the total score field to be overwritten, since the whole purpose is to compute the total score, which Marketo cannot do. So this excludes the "block update" technique.
The 2 workarounds we have found so far work well, BTW: