How to Configure HubSpot to Ensure Data Quality when Syncing to Salesforce
You're using HubSpot and Salesforce together and want to transfer data between them, but you don't want to replicate bad data across CRMs. You need to make certain that the data is clean, standardized, and duplicate and spam-free.
With Insycle templates, you can create pre-defined processes for fixing common data issues with HubSpot records. Templates can be added to Recipes that can be inserted directly into HubSpot workflows. Then, by setting up a HubSpot inclusion list to be populated by the workflow, you can control what records are synced to Salesforce.
This article lays out the HubSpot steps so you can include Insycle Recipes in workflows and ensure that only deduplicated and cleansed contacts are being synced to Salesforce.
Process Summary
- Create a new property in HubSpot that will indicate what records have gone through the cleanup process.
- Set up a HubSpot workflow that includes Insycle cleanup Recipes and add action to set property value.
- Create a list.
- Set the inclusion list so only records on the list will be sent from HubSpot to Salesforce.
Step-by-Step Instructions
To let HubSpot know which contacts are ready for sync, you'll need to create a field in HubSpot that indicates when the cleanup process has been completed on a record.
In HubSpot, navigate to Settings > Data Management > Properties.
Select the Contacts object from the dropdown, then click Create property.
On the Details step of the New Property flow, give the field a Label like "Cleanse Complete."
On the Field Type step, select the Single Checkbox field type. When creating the workflow, this will be set to Yes as the last step.
When finished, click Create.
Learn more from HubSpot's Create and Edit Properties article.
In HubSpot, create a contact-based workflow and set up the trigger. Make sure it isn't too broad; a filter like "Create Date is known" would run the workflow on the whole database.
Click the + on the workflow to add a new action.
In the Actions panel, search for "Insycle," then select "Insycle - Run Contact Recipe."
Select a Recipe from the list.
Add a workflow step for each Insycle Recipe you want to run, such as Cleanse Contacts, Deduplicate Contacts, and Associate Contacts to Companies. Put them in an order that makes sense; you wouldn't want to associate junk or duplicate contacts that may later change or be removed.
After the Recipe actions, add a CRM action to 'Set property value'. Select the "Cleanse Complete" property you created and select the value "Yes."
When you Review, don’t enroll existing contacts. See the Best Practice below for more details.
Learn more about integrating Insycle Recipes into HubSpot workflows.
Now you need to create the list for contacts that are ready to sync to Salesforce.
In HubSpot, under the CRM menu, select Lists, and click Create list. Create a contact-based list, leaving the kind as Active.
Add a filter for the property created earlier with a value of Yes. In this example, the property, Cleanse Completed “is any of,” "Yes."
When finished, click Save list.
In HubSpot, navigate to Settings > Account Management > Integrations > Connected Apps, and click the Actions button for Salesforce.
On the Salesforce integration page, click the Contacts tab. Scroll down to the Limiting What Syncs section, and in the Select an inclusion list dropdown, choose the list created in the previous step and Save.
Now, HubSpot will only sync contacts that have been added to this list.
Learn more about creating a Salesforce inclusion list.
HubSpot Company Sync
HubSpot advises against enabling automatic association while the HubSpot–Salesforce sync is active. To sync new HubSpot companies to Salesforce and create an account, companies must be associated with contacts added to the inclusion list. You'll need to include this association step in your workflow. Once the company is associated with a contact that has gone through the cleanse workflow and been added to the inclusion list, it will sync with Salesforce.
- Learn how to associate records in HubSpot workflows using Insycle Recipes.
- See HubSpot's article about how companies sync to Salesforce.
When your workflow is set, and you click Review and Publish, you'll be asked if you want to enroll the contacts when the workflow is turned on. It's best practice to select "No" here because you don’t want to process every contact that is already in your CRM. Workflows are meant for incoming streams of data, not large batch updates. To make bulk changes to existing data, run templates or recipes in Insycle.
Frequently Asked Questions
There are a couple of common reasons for a Recipe not running as intended:
-
The Recipe was saved in Preview mode. Preview mode is for analysis purposes, so no data is modified in the CRM. This can even show as "Successful" in HubSpot because its job was to run without making changes. Go to Operations > Recipes and select the Recipe from the drop-down. The mode appears next to the Recipe name in the grey bar.
If your Recipe shows "Mode: Preview," click the Review button and change the mode to Update, then click Next, and on the When tab, click Save.
Note that Recipe-level modes override template-level modes—so a template saved in Preview mode added to a Recipe set to Update mode will make changes in the CRM.
-
The data sync to HubSpot may not have finished processing yet. Give it a few more minutes to complete the batch, then check again. The sync usually takes 5 minutes or less, but in rare cases can take up to an hour.
To force the sync, in Insycle, navigate to Settings > Accounts, and next to the account name, click the Sync changes from last day button (lightning bolt icon).
If you have your Recipe integrated into a HubSpot Workflow, you can find additional troubleshooting help here: Troubleshooting HubSpot Workflow Issues.
Yes. HubSpot waits for Insycle to complete the Recipe. In the example below, Insycle will finish cleansing the contact data before the welcome email is sent.
Insycle processes events in batches every 5 minutes, though depending on the size of the operation and other things running at the same time, it could take up to an hour for the process to complete.
Yes, you can use HubSpot's Enroll button to manually enroll a single contact. Learn more in HubSpot's Manually enroll records in workflows article.
In HubSpot workflows, simply remove the Recipe action from the workflow and re-publish it.
In HubSpot, open the History tab and look for when this action was initiated. Within a few minutes of that event, the tab should also show a "Successfully executed" event.
In Insycle, you can review the audit trail in the Activity Tracker.
When working with HubSpot, for every Insycle operation that updates or creates a record, the Run ID will be updated in the custom property, Insycle Run ID.
If the Insycle Run ID doesn't already exist in your HubSpot database, add it as a custom property with the label "Insycle Run ID" to each object type as needed.
This object label is the only requirement for the integration to work properly. It's not dependent on the internal name or underlying API field name.
When using an Insycle Recipe that includes templates for more than one object type, such as companies and contacts, the same Run ID will appear in both HubSpot records.
Additional Resources
Related Help Articles
- Integrate Insycle with HubSpot Workflows
- Solve Salesforce and HubSpot Sync Issues
- Deduplicate HubSpot and Salesforce While Keeping the Sync Active
- Deduplicate HubSpot Companies and Salesforce Accounts
Related Blog Posts