HubSpot and Salesforce are two of our favorite tools, but they don't always play nice, right out of the box.
Sync errors, bad data quality, and too much maintenance are the most common complaints we hear about the Salesforce + HubSpot Integration.
One of the most important parts of a successful integration between HubSpot and Salesforce is ensuring each object has only the necessary fields and properties mapped together with the correct sync rules.
Unfortunately, HubSpot and Salesforce don't make it easy on us. The default integration setup is extremely prone to sync errors and can require a lot of on-going maintenance.
Getting the mappings and sync rules setup correctly can save you a lot of time and headache down the road.
Before we get started, let's make sure we're on the same page. As a very basic explainer, to get data from Salesforce to HubSpot (or vice versa):
- A Salesforce field must be mapped to HubSpot property
- A sync rule must be selected
- Sync must be "Turned On" for the associated object
With that knowledge, let's get started to get this integration working!
Turn on Sync
Once you've initially installed the Salesforce integration inside of HubSpot, the next step is to "Turn on" the sync for each object (Contacts, Companies, Deals, Activities, Custom Objects).
Be aware that there is no customization for the "Activities" object. You are unable to control field mappings and sync rules entirely for Salesforce Tasks/Events or HubSpot activities.
***One more note, you DO NOT have to turn on the sync for every object. For example, some of our clients don't use "Deals" in HubSpot and so we only enable the "Company" and "Contact" sync. Only enable sync for the objects you need.
Now, be aware that once you click you "Turn On" for each object (except for the Activity object), HubSpot will do the following:
- View the available fields on the object
- Create new, corresponding properties that match your Salesforce fields
- The integration then automatically maps the new HubSpot properties with your existing Salesforce fields.
While all this sounds convenient and cool, it can actually cause lots of data sync errors down the road.
Think about how many old, rarely-used, irrelevant fields you might have on the Account, Contact, or Opportunity object in Salesforce.
At first, most people are tempted to sync everything in sight. But the truth is, you don't need to sync every single sync field and property. Only map the fields and properties you really need.
Many times we've seen clients spend hours cleaning up sync errors, only to realize that the errors are triggered from fields you no longer use or contain data you simply don't need to map to HubSpot.
***One last thing to note about "Turning On" sync. If you ever "Turn Off" the sync for an object, when you "Turn it On" again, it will re-create properties and re-map them for all available fields in Salesforce. So try not to turn it on and off, if you can help it.
Delete Unnecessary Mappings
Ok, you've now got sync turned on for each object, now we go mapping by mapping.
For each syncing object: Go through every single mapping and delete any and all mappings for fields/properties you don't need syncing between HubSpot and Salesforce.
Now, how do you know if you "need" the mapping or if you should delete it? Ask yourself and your team, "How are we going to use this field/property?". If you don't have an answer, delete it. If you're ever unsure, just know you can always come back and add more mappings later.
As you go through each mapping you may notice that if the Mapping Type is "Standard", it won't allow you to delete it. Don't worry about those for now, we'll get to them later.
As you go through each object and delete all unnecessary mappings, you may start to feel nervous. You may be deleting the majority of the mappings in there. Don't worry, this is pretty normal. Remember, HubSpot maps every single standard and custom field that it possibly can. We're going to sync only what we need.
Ok, so you've gone through and deleted the unnecessary mappings. The only mappings left should be the ones you need. You're more than half-way done! Now get ready to go through all the remaining mappings one more time.
Select Sync Rules
Ok, we're in the home stretch. The only thing left is to select a Sync Rule for each mapping. Sync Rules determine how the data flows between HubSpot and Salesforce.
There are four types of Sync Rules:
- Prefer Salesforce unless blank
- Always use Salesforce
- Two-way
- Don't sync
The sync rule you pick has big implications for how your data flows between the two tools and how data quality is maintained. Picking the right rule can also prevent nasty sync errors.
Every time you pick a Sync Rule, HubSpot will provide you with definitions. These are good at explaining how the data will flow, but how do you know which sync rule to use in each situation? Here are our recommendations for each sync rule.
Prefer Salesforce unless blank
- Use this rule when the data in Salesforce shouldn't ever be overwritten by HubSpot, but you wouldn’t mind adding data from HubSpot if Salesforce is blank. We typically use this sync rule for properties that have data enrichment from HubSpot. For example, Website, State/Region, or Country. HubSpot will auto-populate this data if it can find it, but you may not want it to overwrite what is already in Salesforce. Use this sync rule for fields/properties that can be edited by either tool, but where you don't want anything to overwrite Salesforce.
Always use Salesforce
- This sync rule is a good way to be able see and access field values in HubSpot, without worrying about HubSpot ever overwriting these values. If you have Roll-Up Summary, Formula, or any other fields that only use Salesforce to provide the data, you want to make sure you use this sync rule. Use this sync rule for fields/properties that should only be edited/calculated in Salesforce and never changed by HubSpot.
Two-way
- Because you've already cleaned up all the unnecessary mappings, you should feel good about using Two-Way for most mappings. Two-way ensures the most recent update to a field/property is up-to-date and accurate in both HubSpot or Salesforce. Again, this works well in most situations and gives you the most updated data. Use this sync rule for fields/properties that can be updated by both HubSpot and Salesforce.
Don’t sync
- The “Don’t Sync” sync rule should only be used in situations involving a Standard field from Salesforce. If you have a custom field that you do not want to sync to HubSpot, just delete the mapping. Like we mentioned above, standard fields are mapped by default and cannot be deleted. In situations where you don't want a Standard field to sync, this sync rule is a good way to protect data quality. For example, you may only want Account Ownership changes made in Salesforce and never HubSpot. You can't delete the Owner Id <-> Company Owner mapping, but you can select "Don't Sync". Use this sync rule for standard fields that should only be updated by Salesforce.
Now that you know when to use each sync rule, go object by object and select the right sync rule for each mapping.
Alright, that's it. You're done!
Deleting unnecessary mappings and reviewing each sync rule does take some time upfront, but it will make maintaining the integration MUCH easier over time. You should see improved data quality between HubSpot and Salesforce and a big drop in the sync errors you encounter.
*** One thing to note once you have completed your mapping cleanup. If you create new fields or properties that need to sync between HubSpot and Salesforce, you will need to manually map them. Make sure you create a corresponding field/property in both HubSpot and Salesforce, select the correctly sync rule, and then sync.
Hope this helped!