Set Global Delay on Program Member/Campaign Sync

Set Global Delay on Program Member/Campaign Sync

Idea: My proposed idea is to implement a global setting in the Salesforce section within Admin that allows you to delay the sync of campaign member for a designated number of minutes. 


Why: I've often found myself at odds with the practicality of leaving on the Salesforce Campaign Sync feature in Marketo. 

It's super helpful in that it ensure proper alignment between our Marketo Programs & Salesforce Campaign. We can also easily sync period costs to total cost, saving time, effort, and improving data accuracy across systems.


My main issue with leaving the program sync on, is that the sync operates too quickly and sends leads to Salesforce before they're considered "ready" from the operations perspective.


I'm sure every business has their own standard of "ready" but in our case, we stamp the Lead Source, populate Lifecycle Stage, fill in some datastamp, and run some data append processes via webhook in market. Ideally we want all of these values populated before the lead ever hits salesforce to ensure accurate lead routing to sales, and leaving the salesforce sync on causes leads to be sent over to salesforce before marketo has had a chance to do its thing.

We've gotten around this by implementing wait steps before "change SFDC campaign status" flow steps in every marketo program we run. This works for us in theory, but doesn't work 100% at scale. Sync campaign flow steps can fail at times for various reason (either marketo or salesforce related), and we cannot create reports or receive alerts about those failures within Marketo. Also, the flow step failures never attempt to resync automatically, leaving us in the dark to research for errors in the activities log for all of our marketo programs manually, or pulling logs from the batch API.

This solution also doesn't scale particularly well if we ever want to adjust that wait step. Since wait step values can't be populated by global token, we need to go into every single active program to change the wait time. Not fun. 

Curious what the community's thoughts are on this matter.

If you leave the campaign sync on, how do you get around imcomplete records from entering salesforce before they're "ready"

Do other people leave the sync off like we do? Have you seen problems flow steps failing? How do you scale managing your wait steps?