Outfunnel's Salesforce-HubSpot sync is designed for B2B companies who want two things from a sales-marketing integration:
Keep sales and marketing leads/contacts in sync, and
Automatically record marketing engagement in Salesforce so salespeople can see it.
With a 10-minute, no-code setup, marketing can use Salesforce lead/contact lists for their campaigns, and sales gets full visibility into engagement.
Are there alternatives for syncing Salesforce and HubSpot?
HubSpot offers a native Salesforce integration included on HubSpot Professional and Enterprise plans. It syncs standard objects (contacts, companies, deals, tickets) bi-directionally, but it only supports HubSpot's standard objects, has tight limits on custom objects, and polls on a 5 to 15 minute interval rather than updating in real time. Custom field mapping is also more restrictive than most Salesforce admins expect.
Zapier, Make, and Unito are the common 3rd-party options. Zapier works for simple flows but requires separate zaps for every object and state change, and maintenance gets painful at volume. Unito handles bi-directional sync well but can get expensive for mid-market teams. None of them record HubSpot email engagement back into Salesforce in the way a sales rep actually wants to see it.
Connect Salesforce and HubSpot, deeply and easily
Get started in 10 minutes. 14-day free trial. No credit card required.
Why Outfunnel is the best tool to integrate Salesforce with HubSpot
Bi-directional lead/contact sync. Make all leads/contacts or a subset available on either platform along with custom lead/contact and account fields, and keep them in sync going forward.
Sync email engagement to your CRM. Salespeople get full context on email opens, clicks, unsubscribes, and more, directly in Salesforce.
Comprehensive field mapping. Sync any default or custom field two-way or in a single direction. If conflicts arise, you pick the conflict winner.
Deduplication built-in. Outfunnel links leads/contacts by email. If a record already exists, we link it. If not, we create a new one.
Near-instant data sync. Most data syncs instantly. Some fields sync within 2 hours.
Monitor sync status. Clear overview of sync health with actionable error messages.
Historical sync. Sync all customer data, no matter when it was created.
Transparent pricing. Each lead/contact in sync counts once, regardless of how many updates happen or how many apps it's in.
Reliable and secure data. OAuth authentication and encryption in transit.
How to set up a 1-way or 2-way contact sync between Salesforce and HubSpot
1. Choose your apps
Head to App connector and select your apps.
2. Select the connection type
Click on Connect and choose Contact sync as the connection type.
3. Set the sync direction and database
Choose to sync data two-way or in a single direction.
4. Define contact sync rules
Salesforce: choose the leads/contacts filter in Salesforce.
If this is your first sync, we recommend syncing a small number of test contacts first to get a feel for how it works.
π Initial sync
Contacts are linked based on email address. If no existing contact is found, a new one is created. If multiple contacts share the same email, the link is made with the oldest one and no duplicates are created.
ββInitial sync actions in HubSpot.
Contacts are created in the database.
π Continuous sync
Contact changes. As long as the contact matches the rule, any changes to its profile in the source app sync to the destination app.
βWhen contact stops matching rules. Updates stop, but contacts are not deleted from the destination app.
β
π‘ Other things to keep in mind
Contacts don't get removed or unsubscribed from either app if you remove the contact sync rule or change the target segment.
βMultiple email addresses on a contact. Outfunnel creates a link with the first email address on a contact profile. Other addresses are ignored.
βMerging contacts. Outfunnel supports merging contacts.
5. Set up field mapping
Choose the default and custom fields you want to sync and in which direction. Then pick the app that wins on conflicts.
Data conflicts
Conflicts usually happen during the initial sync when a mapped field has different values in each app. For example, if the name is different for the same contact, Outfunnel uses the selected conflict winner. Most companies use their CRM as the system of record. Reach out to support if you want to talk through your setup.
π‘ Things to keep in mind
Email is a default field that's matched automatically and cannot be changed. Outfunnel uses it as the unique identifier to link contacts across apps.
βRead-only fields. Calculated fields and similar read-only fields can only be synced in one direction.
βAdding new fields. Create the field in the source app, then click "refresh fields" in Outfunnel.
βSingle/Multiple option fields. Pre-create the values in both the source and destination app.
β
6. Activate the connection
π Initial sync
After activating, Outfunnel runs an initial sync to merge your databases. Contacts should appear in the sync status page. The initial sync usually takes a few minutes, but can take a few hours depending on volume.
The status page also shows errored contacts and gives actionable feedback on how to fix them.
π Continuous sync
After the initial sync completes, Outfunnel starts a continuous sync where most data syncs instantly, and some fields are checked at regular intervals. Read more.
Coming soon:
Organization and deal fields
Instant webhook-based updates
How to sync HubSpot email engagement to Salesforce
Outfunnel supports recording engagement from HubSpot single email campaigns and automations.
π‘ You need to be on HubSpot Marketing Professional plan or above to use engagement recording.
1. Authenticate your apps
Head to Outfunnel > App connector, select your apps, and authenticate as per the on-screen instructions.
2. Select the connection type
Click on Connect and choose Engagement sync as the connection type.
3. Define how engagement gets recorded
Set how you want email activities like opens, clicks, bounces, or unsubscribes recorded in Salesforce, or use our default settings.
4. Choose the list(s). Choose the HubSpot list or automation you want to record email engagement for (opens, clicks, unsubscribes, etc.).
5. Set up field mapping
When Outfunnel syncs an engagement for a lead/contact that doesn't yet exist in Salesforce, a new lead can optionally be created with the defined field mapping. In the field mapping step, pick which fields or custom fields the sync should consider. You can also turn off creating leads/contacts from email engagements on the same page.
6. Activate
π Initial sync
After activating, choose whether to record engagement only from emails sent after activation, or also from the last 30 days. The initial sync usually takes a few minutes, but can take a few hours depending on volume.
The status page shows the number of engagements that have been synced.
π‘ We also offer retrospective sync on demand for an additional cost. See this article.
π Continuous sync
After the initial sync completes, Outfunnel starts a continuous sync that checks for updates every two hours.
You can trigger an instant sync anytime by clicking Sync now.
π‘ Things to keep in mind
Unsubscribe recording. Outfunnel only records end-user initiated unsubscribes in Salesforce. Manual unsubscribes in HubSpot Marketing are not recorded.
First unique URL click per email per lead/contact is recorded. For example, if a lead/contact clicks 2 unique URLs three times each, two click activities get created in your CRM.
Activities in the CRM. Email activities are linked to a lead/contact, account, and the oldest open opportunity.β
Using web forms to collect leads? See the following integrations to automate lead capture sync to Salesforce:
Don't see your preferred web form listed? Browse upcoming connections and sign up for early access.

