Most businesses will operate out of a customer relationship management (CRM) platform such as Salesforce (SFDC, for salesforce.com) to manage interactions and understand their relationship with their prospects and customers. However, they may use a marketing automation platform (MAP) such as Adobe Marketo Engage to conduct lead intake, nurturing and automated processing. Taking advantage of native integration services between the CRM and the MAP to unify data between the two is a key milestone in marketing ops maturity.
The Native Marketo Engage-SFDC Sync
Marketo Engage offers native integrations with only a couple of CRMs, SFDC being one of them. It’s important to understand the capabilities as well as the limitations of the native integration. It uses the Salesforce API to push new and updated data between the two systems and repeats the process a few minutes after the previous sync cycle completes. The length of the cycle depends on the number of records and updated field values that need to pass over. Marketo Engage flow steps can also be used to force a record to immediately sync to SFDC to shorten the timeframe for the most time-sensitive updates. However, this method is less efficient at scale as it uses one API call per record.
It is a fully bi-directional sync for Marketo Engage person (SFDC Lead/Contact) records, as well as a limited bi-directional sync for Marketo Engage programs (SFDC Campaigns) and Activities. Bi-directional signifies that either system can create and update records and field values that then sync to the other system. Lead creation, for example, can happen from either prospects filling out Marketo Engage forms or the sales team manually entering leads in SFDC, and either way the record can show up in both platforms. It’s important to note that person records created in Marketo Engage will need to be pushed to SFDC via a flow step or program-level sync to establish the connection for the first time, and then all updates will regularly sync after that point. For the limited objects, there are only certain situations where Marketo Engage can create or update them. Additionally, there is a one-way sync from SFDC to Marketo Engage for Accounts, Custom Objects, Opportunities and Users so the data can be used in triggers and filters, such as in the context of a lifecycle processing program. Marketo Engage cannot create or update these objects.
The sync relies on a SystemModstamp to identify updated records from SFDC that need to sync to Marketo Engage. For this reason, value changes in fields that do not update the SystemModstamp – such as formula, lookup and reference fields – may not update in Marketo Engage. Workarounds can be created using SFDC Flows to automate stamping the value to a custom field that is then synced to Marketo Engage.
Supporting a Relevant Customer Experience
The ability to provide a relevant, personalized experience for a prospect or customer relies on unified data across systems. Integrating SFDC and Marketo Engage is critical in the process of establishing a single customer profile. Data existing in silos can lead to disjointed communications and experiences. Because the sync will automatically push new and updated data between systems, the level of effort is minimal when using the native sync. By limiting latency of transfer, it maximizes data availability so marketing and sales teams can be more confident about acting upon the data at hand. The resulting data-informed, cohesive experiences are more likely to result in revenue for the company.
Using the native sync functionality rather than a custom API integration will be easier and more efficient. Custom solutions can create headaches for the team as they have to be manually built and maintained and can often cause additional errors or exceed system limits. If a technical integration is not established at all, data might be manually exported and imported between systems, taking team members’ time away from more strategic work and increasing the likelihood of errors and discrepancies.
Establishing the Connection from the Outset
CRM integration is best done as part of the Marketo Engage initial setup and implementation when the instance is first procured, before any marketing or operational processing programs are activated. It is much easier to populate the Marketo Engage database from an initial sync from SFDC rather than an export and import to Marketo Engage. A native sync can be established after the fact, but this will require significant cleanup. Every time a lead or contact is pushed over from SFDC via the sync, a new person record is created in Marketo Engage, so a later sync would create many duplicates that would need to be merged. Initially populating the database via the native sync will also ensure that data points are aligned between the two systems; if the data is updated in silos before the sync is set up, any conflicts in field values will have to be reconciled.
Important to note is that a Marketo Engage instance can connect to only one SFDC org and the connection is permanent. If a company will be switching to a new SFDC org around the time of the Marketo Engage implementation, be sure to connect to the new SFDC org, even if that requires waiting longer for the new org to be established.
Step-By-Step Standardized Setup
The Marketo Engage documentation has thorough instructions to follow to set up the native SFDC sync, but note that some of the screenshots may vary if you use Lightning Experience. The specific instructions depend on the Salesforce plan/edition you have – Professional vs Enterprise or Unlimited – so be sure to navigate to the correct version in the documentation. The setup milestones are creating necessary custom fields, setting up a profile and a user for the sync and authenticating to start the sync.
The SFDC profile and user should be dedicated for the Marketo Engage sync rather than logging in with an individual’s credentials or using the same API user and profile for multiple SFDC integrations. Not only will this ensure continuity of the sync through personnel changes, but also assist with troubleshooting and field management. The sync user’s profile determines what fields sync to Marketo Engage, and likely that is different from those needed for other integrations.
Syncing with SOPs
While some MOPs teams have SFDC access, oftentimes there is a separate administrator or team within sales operations (SOPs) responsible for managing SFDC. In this case, the MOPs team should work closely with the SFDC admin to create the custom fields, profile and user necessary for the integration. In the long term, close coordination will continue to be needed to ensure the sync is optimized and running smoothly. This might include troubleshooting of sync errors and managing the creation and visibility of new fields.
The native Marketo Engage-SFDC integration is a powerful way to support a more unified view of customers and prospects and avoid disjointed data. This in turn enables marketing and sales to better perform their work and provide prospects and customers with the best experiences.