"Sync with Marketo" mysteries part 1

One common question is : how do I restrain some records from flowing from SFDC to Marketo when that cannot be handled with simple Salesforce sharing rules. For instance, making sure that inactive contacts or even contacts without emails do not pack into the Marketo DB and count against the licence. The answer is often to add a "Sync with Marketo" field and use it to filter out some records.

But the devil is in the details, so we ran a comprehensive test on how the "Sync with Marketo" really works and came back with a few interesting findings.

Finding #1: the only value of the field that matters is the one from SFDC.

I had read it already from Support, but, as St Thomas, we did some testing to verify it: if the field have a value on SFDC and another one in Marketo, on a same lead / contact, the value that determines whether or not the sync will happen is the one from SFDC. So if the field is set to "True" in SFDC, it will sync, otherwise it will not, whatever the value of the field in Marketo. No escape.

Finding #2: The sync stops immediately when the "sync with Marketo" is set to False in SFDC.

When the sync is disabled, it stops immediately. Really. There is not such thing as a "last sync". This means that the last "transaction" in SFDC is completely ignored from Marketo,with all the value changes in this transaction. Even the "Sync with Marketo = False" info will not visible to Marketo.

Example: Imagine that you have an SFDC workflow that disables the sync when the contact is set to "inactive". The workflow will fire IN THE SAME TRANSACTION as the "inactive contact" setting. Then the sync will be imediately disabled, thus preventing the next sync to happen. This means that Marketo will never know that the contact is not "Inactive" (or whatever field value change you may have done editing the contact). If you had expected to use this information in Marketo, for instance to remove the lead from the Marketo DB, you will not be able to . In another post, we will detail a workaround on how to handle that, but it will take some advanced SFDC skills.

Finding #3: you can cut sync from Marketo but you can only enable it from SFDC

This is a consequence from the previous findings and from the way the sync works.

Starting from a sync'ed lead or contact, if you uncheck the "Sync with Marketo" field in Marketo, you will be in a temporary situation where the field is still "true" in SFDC and the sync continues to work (See Finding #1). On next sync, which will work, the "False" value will be pushed to SFDC, and from there, the sync will be immediately disabled. So, you can easily disable the sync from Marketo.

But you cannot re-enable it from Marketo since, as the sync is now disabled, any change in Marketo will no longer be pushed to SFDC (See Finding #1). In SFDC, the field will remain to "False", unless you edit and change it there. And as stated in Finding #1, the only value that matters is the one from SFDC.

Consequence: if you need to reestablish a sync, it can only be done in SFDC.

Similarly, if you are creating new leads from Marketo, you should rather make sure they will be marked as "sync'ed" on creation in SFDC.

Finding #4: once the sync is disabled, the account info continues to sync

That one was not anticipated, although, after a second thought, since the account is a separate object in Marketo and SFDC, it makes sense. Let's say you have a contact and an account in SFDC that sync with Marketo. Then you deactivate the sync on the contact. The sync will stop for the contact. But not for the account. So if after this, you change some account values in SFDC, they will be visible on the lead in SFDC, even on the one that does not sync. It is a little surprising to see the industry or the billing address changing on a Marketo lead that is not supposed to sync...

The good news is that it is possible to also ask for accounts to have a sync filter.

Finding #5: if you stop a sync and reactivate it later, it will resync the right lead / contact

This is another apparently obvious one, but worth saying: if you unsync a lead contact, then change your mind before it has been deleted from Marketo, no problem, just reactivate the sync FROM SFDC, and it will automatically resync all field changes that have occurred in between.


Not applicable

Thanks for the insights Gregoire! Great to see this info gathered in one place

Level 10

Important: how much of this is also true for MS Dynamics, I do not know, but I can suppose the way it is implemented is quite similar.


Level 10

Method to handle it at best are here: "Sync with Marketo mysteries" part 2


Not applicable

Very useful.  We are having major problems with sync issues.  Thanks for this!

Level 2

Am amazingly detailed explanation to my problem! Thank you so much Greg!

Not applicable

Thanks, Greg!

Really helpful stuff!

Level 2

hi @Grégoire_Miche2 , I am currently trying to reduce database size by marking the Sync to Marketo field as FALSE from marketo and then remove them from the MKTO database (but will remain in SFDC). I tested this on a lead and a contact record. I still see the sync is checked in SFDC after about 1 hour after the smart campaign ran, but the records were removed from the database. 


The sync to marketo field is implemented as a workflow in SFDC with the valid email and record type for lead/object. Do you have any suspicions why the sync is not changed to FALSE in SFDC?

Level 1

@Daniela_Bachman Did you ever get this resolved? We are having the same issue. We have a field "block marketo sync" and want to mark that true in bulk from the Marketo side so that it becomes checked in SFDC and keeps people from coming back into the system. I noticed that after running, it is not checking the box in SFDC. Anyone have suggestions? 


The goal here is to delete members from the Mkto database, keep in SFDC, mark the field true to keep them from coming back. 

Level 2

@KayMOPS No it was not resolved to my knowledge, but I haven't continued to follow up. We have the same goal in mind! 


So, you are marking Block Marketo Sync as TRUE in MKTO, and does that trigger a workflow for checkin the Sync to MKTO field in SFDC to false? 

Level 4 - Champion

If you remove a sync filter, the sync will only bring over records with a new system mod stamp (in Salesforce). For example, we had a sync filter on the opportunity object, for a lot of internal reasons, I couldn't mass update opportunities, I just had to "rip the bandaid" so to speak and de-activate the sync filter. All of the ops that were technically visible to the sync, just not synced via the checkbox didn't flood my system - this is b/c this system mod stamp wasn't recent.

I was able to work with support to get them to adjust the time frame the sync was looking at for the opportunity object.