Pardot data syncs with Salesforce to keep the data between Leads/Contacts and their associated Pardot prospect record aligned. When Salesforce is connected to Pardot, and a field is updated, a battle commences – which is the ‘source of truth’, Salesforce or Pardot? Which data should win when there are conflicting field data? This is the challenge when using the Salesforce Connector for Pardot.
Now for the good news – unlike other integrated data sources, the Salesforce Connector for Pardot can respect which side admins define as the master. This is known as Pardot Field Sync Behavior, defined field-by-field.
There are rules that are easy to follow, with some exceptions in the mix; ’null’ values (blank fields) cause confusion because they don’t behave as you expect.
Using different scenarios, I will show you how these concepts work between Pardot and Salesforce – by the end, you will know everything worth knowing about Pardot Field Sync Behavior and Null Value Sync.
How does data sync between Pardot and Salesforce?
Pardot Field Sync Behavior defines whether Pardot or Salesforce should be the master when a conflict occurs when the connector syncs. Behavior is defined field-by-field in Pardot Settings. Admins can choose from the following options:
- Pardot is the master “Use Pardot’s value”
- Salesforce is the master “Use Salesforce’s value”
- Most recently updated is the master “Use the most recently updated record”
Have you ever had this happen: you change a field value in Pardot, and minutes later, it’s changed back to what it was originally? Or, you delete data in Salesforce and it magically reappears soon after? It’s a frustrating loop that can send your users crazy!
That’s Field Sync Behavior at work 😆
How does Pardot treat blank values?
Null Value Sync is how the Salesforce-Pardot connector will behave when there are ’null’ values (blank fields). This is perhaps the most common exception you’ll encounter.
Null value sync behavior overrides the field sync behavior.
Yes – that’s regardless of which side is set as the master for that field (in other words, sync behavior goes out of the window!)
In other words, the Salesforce-Pardot connector has been designed with the mentality that any data is better than no data. A filled field will be chosen to enrich the blank field.
Remember the frustrating loop I mentioned? You delete data in Salesforce and it magically reappears soon after? That’s why!
Now, let’s understand how data syncs between Pardot and Salesforce with the following scenarios.
1. Use Pardot’s value
For the specific Pardot field you are editing, the value the Pardot field contains will always override Salesforce’s value.
You would use this behavior when:
- Capturing data from forms: where prospects are sharing information that you consider to be the most up to date,
- Data import: importing updated information into Pardot.
- Prospect-only fields: Pardot custom fields not mapped to Salesforce fields (obviously!)
2. Use Salesforce’s value
Salesforce is hailed as the ‘single source of truth’ for organizations globally. And with good reason – Salesforce is a platform “connects up the dots” from many other systems your organization uses.
Choosing Salesforce as the master for a field is protecting Salesforce data, most commonly, to not allow bad data to override Salesforce data that could have been input by knowledgeable users or other systems with better oversight.
- You would use this behavior when:
- You want to retain Salesforce data integrity: to either…
- Avoid dummy data being passed into Salesforce.
- Where Salesforce users (eg. SDRs) are updating information.
- Salesforce formula fields: these are determined by Salesforce using a specific set of conditions.
3. Most recently updated is the master
Your head may be spinning by this point. You know that your connected Pardot and Salesforce org is never still, always updating with new information being injected into both sides. Who’s to say if the data a prospect submits in a form is better than what a salesperson added for the same field?
What if you wanted to add a clear-cut rule, that the most recently updated record whether the Salesforce record, or the Pardot prospect record?
Luckily, Pardot added this option, which has proved very popular since. The truth is, you may not be able to define a consistent master each time.
You would use this behavior when any updates to the following records would be considered the source of truth:
- Marketing data
- Salesforce users
- Salesforce automation
#3a: Caveats with using ‘Most recently updated’ as the master
Although “Most recently updated” is a popular option, it can produce unexpected results.
It boils down to one fact – the master is the most recently updated record, not the most recently updated field.
Shock! When you realize the master will switch when any change is made to the record, not just on your target field.
The Salesforce Connector can take up to 4 minutes to sync between Salesforce and Pardot; this time lag leaves a danger zone. If any change happens to the record in that time, in either Salesforce or Pardot, the sync will not process as expected.
Here’s an example to explain what could happen:
- The Pardot Prospect field is updated. The Prospect is the most recently updated record.
- As a result, the sync to Salesforce begins.
- Meanwhile, a Salesforce user (eg. a sales rep.) updates the Lead/Contact record before sync completes.
- As Salesforce is the ‘most recently updated’ record, Pardot will take Salesforce’s value – not the outcome we expected!
Unfortunately, that is a hard one to audit. You must consider all of the automated processes happening on both sides – Pardot automation rules, and also Salesforce Flow/Process Builder updates. Another reason why the Pardot and Salesforce Admins need to work together closely – or at least be aware of the automated process happening on each side!
Now we’ll turn to the 4 Null Value Sync rules you need to keep in mind.
4. Pardot field is null (blank)
If the Pardot field is blank, it will be overwritten by Salesforce’s value*.
Any mapped Salesforce fields to Pardot, that contain values (Salesforce lead or contact fields that aren’t blank) will be able to overwrite empty Pardot prospect fields.
*this change came into effect in the Winter ‘20 release. Previously, if Pardot was the master for a field, and it was made blank, Pardot would be able to retain its blank value, and not get overwritten by Salesforce. This change simplified the rules we have to learn!
Aside from automatically populating prospect fields you want to keep blank, the change in sync behavior other possible consequences include:
- Exposing information on forms to prospects.
- Populating a field that is deliberately left blank to this data point from prospects on forms (interfering with Progressive Profiling, if you have it set up)
Here is the advice provided by Pardot:
“If fields containing empty strings in your Pardot prospects are intentional, replace those empty strings with a value that better reflects what you are attempting to indicate with the empty string (for example, NULL, None, N/A, etc.).”
There are 3 steps you should take if you are concerned about this behavior interfering:
Step 1: Identify Prospect Fields where Pardot is the Master
Find out which fields are using Pardot as the master (“Use Pardot’s value”). Go to Pardot Settings tab → Prospect Fields’, and look at which fields have a reference in the “SALESFORCE.COM FIELD NAME” column. Those tell you which fields are mapped to Salesforce.
By clicking into each field, you can see which side (Salesforce or Pardot) is the master.
Record the fields and their field type in a spreadsheet marking which fields have Pardot defined as the master. You can make this part of a wider field audit/custom field clean up/Data Inventory project.
- Don’t forget to repeat this for both default and custom fields because they are in separate sections!
- You will only need to do this for Prospect fields; Prospect Account/Opportunity/Custom Object fields are all read-only.
Step 2: Consider each field
Consider how each field works, what its purpose is. You can ask yourself:
- Is there a reason we are keeping this field blank in Pardot? (refer back to the reasons I outlined above, and see if either resonates).
Step 3: Update Field Data via Import
Note: Once you have exported your prospect database, always copy and maintain an export of the current data, just in case. Do not do any mass data updates unless you are entirely sure about what you’re doing!
As Pardot suggests, fill in placeholder values in the fields on the records that have blank values (eg. NULL, None, N/A), then reimport.
Be careful of different Field Types involved…
- Text fields – simple to work with.
- Picklists: you may have to add a new picklist option in Salesforce called ‘[blank]’ or similar (however, this is can cause havoc with formulas, automation, and reporting on the Salesforce side).
Step 4: Monitor sync errors
Remember to monitor sync errors for a few days following any big changes to syncing records.
5. Salesforce field is null (blank)
Just to recap – If the Pardot field is blank, it will be overwritten by Salesforce’s value. Any mapped Salesforce fields to Pardot, that contain values will be able to overwrite empty Pardot prospect fields.
When it comes to blank Salesforce fields, a filled field value trumps a blank, regardless of which is the master:
5a. Salesforce is null (+ special connector setting)
This is an unusual one that cropped up once when I was working on a project. I’m unsure how common this exception is – just remember that it exists (and no, you’re not going crazy!)
There’s a setting on the Salesforce-Pardot Connector called “overwrite null/blank values” which empowers the Salesforce blank (null) value to win over a Pardot filled value.
This setting is not visible to users in Pardot; Pardot Admins may not even be aware it’s enabled! To enable it, you have to make a request to Pardot support (so at least there will be some record, a “paper trail” of the case being raised to their team).
There are valid reasons why some organizations would enable this feature:
- For Salesforce users to clear field values – and for the cleared fields to stay blank.
- To prevent dummy data pumped into Pardot (think “keyword mashing” on forms) being constantly synced to Salesforce.
Sure – seems like a good idea – however, I urge you to think carefully before enabling this setting because it’s applied to all fields in your account (not just the one single field you want to target!)
I will walk you through the example I encountered:
- The ‘Type’ in Salesforce for a Lead is blank.
- The Prospect submits a Pardot form . The form has a Completion Action to update Type to ‘A’.
- Pardot attempts to update the Salesforce Lead’s Type to ‘A’.
- The Salesforce Lead’s blank (null) value wins over Pardot’s value.
- The Prospect ‘Type’ value ‘A’ is cleared.
- Salesforce Leads remain with blank Type.
Tip: take a look into Salesforce picklist fields. Do they have a default value defined? This will alleviate dropdowns fields in Pardot from being blank unnecessarily.
6. Null Exception – checkboxes
Another exception – don’t roll your eyes, it’s like learning a language! Let’s take a look at checkbox fields.
From Salesforce’s point of view, checkboxes have two possible values:
- Checked (true), or
- Unchecked (false) – in other words, a Salesforce checkbox is never really considered blank..
The question for Pardot Admins is – how have you mapped your Salesforce checkbox fields with Pardot? The correct way is to map Salesforce checkboxes with Pardot radio button fields.
When a Salesforce checkbox field goes from checked → unchecked, Pardot will catch the ‘false’ value because it’s one of the options defined on the radio button.
Sometimes, when checkbox fields are incorrectly mapped, the unchecking can revert itself, cause confusion!
7. Null Exception – protected fields (email)
Email address is a field that receives special treatment.
To most people in the company, email address is just like any field – to a marketer, however, email is the golden key for a prospect. Pardot also shares this opinion, as a Prospect record cannot exist without an email address.
If a Salesforce user clears the email field, it kicks off a series of undesirable consequences:
- The email field is cleared on the Lead/Contact record.
- The prospect’s email address remains unchanged.
- As a result, the prospect becomes orphaned, which means that it no longer syncs with the Lead/Contact in Salesforce. The Prospect will be marked [[crm_deleted]] to show its tie with the CRM record has been severed.
Note: [[crm_deleted]] will appear at the bottom of their Prospect record, and you can use this as a criteria in automation rules, too).
Note: updating a Lead or Contact’s email address works differently – read the full story.
8. Null Exception – Mailability fields (Do not email, Opted out)
Both being checkbox fields, once marked as true, the Do not email and Opted out would remain that way.
Pardot then released the additional “Overwrite Prospect Opted Out” field sync setting that could be enabled for your Salesforce connector. This was the first stage in lifting the guardrails that dictated field sync behavior, enabling Pardot admins to deliberately override typical sync behavior, and therefore have more control over data management.
Now, Pardot has gotten rid of the ‘sticky to true’ sync behavior that was previously the case, meaning that checkbox field changes are not reverted back to ‘true’ unexpectedly.
Summary: Field Sync Behavior is Your Responsibility
There are always syncing considerations that you need to think through using your own use cases. I have shown you how field sync behavior works, but it’s your responsibility to consider the consequences of applying these behaviors to each of your fields.
The whole point is to protect your data and retain what makes sense – whether that’s the most up-to-date, the most accurate, or the best quality (think prospects entering dummy data into forms!) Knowing your sync through and through to protect your data becomes even more important when fields have null values.
This post promised to show you all you need to know about Pardot Field Sync Behavior and Null Value Sync. Using these 8(ish) scenarios, you should be fully clued-up and confident to take responsibility for your syncing data.
I may not have covered every single reason as to why you would choose a specific sync option. There’s no doubt plenty of other use cases are out there! If you’re ever in doubt, speak to a Pardot Specialist (which could save you data headaches down the line!).