One of the biggest selling points of Pardot is its “in-platform” relationship with Salesforce. In a lot of ways, Pardot can be viewed as an extension of Salesforce, but it’s important to remember that the “person” records (Prospects in Pardot and Leads/Contacts in Salesforce) are actually stored in separate databases.
Similar to how you wouldn’t want every Prospect in Pardot to be synced to Salesforce, it’s a good idea to only sync Salesforce Leads and Contacts to Pardot that you will actually be reaching out to, both from a pricing perspective (in Pardot, you pay per mailable Prospects in 10K blocks) and from a data cleanliness perspective.
One way to control the data flow from Salesforce to Pardot is through the “Automatically create prospects when new leads and contacts are created in Salesforce” setting on the Salesforce connector, which is great for scenarios where *all* of your newly created Leads and Contacts should have corresponding Prospects in the Pardot database.
But what if you’d like only a certain subset of Leads and Contacts to be associated with a Prospect in the Pardot database? This is where Pardot Marketing Data Sharing (MDS) can save the day. Released in conjunction with Pardot Business Units in February 2019, it is a complementary feature that also has value in situations where multiple Business Units are not needed.
Prior to Marketing Data Sharing, if a user wanted to selectively sync Leads and Contacts, they had to adjust sharing settings and rules in Salesforce, and then write custom code that dynamically assigned ObjectChangeLog records to the correct connector user in the proper situations. MDS makes this manual work obsolete by introducing a simple visual interface in which a user can create rules per syncing object that dictates the flow of records.
MDS Rules can be defined for the following objects:
- Custom objects (optional)
Here are a couple guidelines to keep in mind:
- Rules are limited to a single criteria per object, and that criteria cannot include a field that is already mapped to Pardot (Pro-tip: if more complex logic is needed, create a custom field on each object that is solely used for routing/sync and populate the value of that field using Process Builder or Flow)
- The only operator is currently “equals” (examples: Region = NA or SyncToPardot = true)
- If you define rules for Leads you must also define rules for Contacts, and vice versa
- The criteria never increases access to records; rather it acts as an additional filter on which records are eligible to sync
- Whenever a Lead or Contact is edited, Salesforce will check to see if the record still meets the criteria to sync; if not, the corresponding Prospect record is archived in Pardot
When using MDS with multiple Business Units (BU), there are some additional considerations:
- If you define a rule for an object in one BU, you need to define rules for that object in *every* BU
- On Pardot Marketing Data Sharing Rules for Leads and Contacts, users need to manually ensure that MDS rules do not overlap (that is, that they only match one BU in each scenario)
- Records related to Leads or Contacts (such as Accounts, Opportunities, and custom objects) can exist in more than one BU
- Marketing Data Sharing Rules need to be set up in each BU, and this must be done before unpausing the connector
Although Marketing Data Sharing has been a welcome addition to the arsenal, Pardot is currently working on a new iteration of the concept that is thought to improve on a couple of shortcomings:
- Available to more users (MDS is currently only available in Pardot Advanced edition)
- More granular control of the field-level data that is visible in Pardot on records that are eligible to sync (ie. if a user doesn’t have permission to view a field in Salesforce, they also won’t be able to view it in Pardot)