Integration guide

When marketing and sales data live in different worlds.

Every Monday our sales team says the pipeline is $200K and marketing says it is $340K. We waste the first 30 minutes of every meeting just agreeing on what is real.

This page gives you a practical path to keep both tools aligned so your team is not copy-pasting the same data twice.

Typical first rollout: 7-14 days for one high-value workflow.

HubSpotSalesforce

What this fixes for your team

When marketing and sales data drift between HubSpot and Salesforce, your pipeline meetings turn into arguments about which system has the right number instead of which deals to close.

Real-world failure scenario

Your marketing team runs a webinar campaign in HubSpot. Fifty new leads come in. The native connector pushes them to Salesforce, but three leads already exist with slightly different email addresses. Now you have duplicates in Salesforce, the sales team works both records, and two reps reach out to the same prospect within an hour. The prospect tells both reps they look disorganised. Meanwhile, the pipeline report shows $150K in double-counted opportunity value because both duplicate records have the same deal attached.

Quick decision check

Try DIY if this workflow is low-risk. If errors affect revenue, invoicing, or customer response speed, this usually needs a tested implementation with monitoring.

If you want to try DIY first

  • Native HubSpot-Salesforce connector
  • Workflow-based field sync rules
  • Custom API middleware

Where teams usually get stuck

  • A rep updates a deal stage in Salesforce. The native connector overwrites it from HubSpot ten minutes later because both systems think they own that field.
  • Lifecycle stage logic creates an infinite loop: HubSpot sets 'SQL', Salesforce resets to 'MQL', and the contact bounces back and forth until someone notices.
  • A lead owner changes in one system but the sync rule uses the old assignment. The new rep never gets notified and the lead goes cold.

How we implement HubSpot + Salesforce for reliability

  • Define system-of-record per object and field
  • Implement deterministic conflict resolution rules
  • Monitor sync health with daily exception reporting

Implementation details

  • We begin with a field-by-field ownership audit: which system controls contact status, deal stage, company data, and custom properties. This eliminates the tug-of-war where both systems overwrite each other.
  • Deduplication logic runs before any sync event, matching on email, domain, phone, and company name so new leads merge into existing records instead of creating duplicates.
  • Lifecycle stage transitions follow a single defined flow. HubSpot owns marketing stages. Salesforce owns sales stages. Transitions only move forward unless a human explicitly reverts.
  • A daily sync health report surfaces failed records, field conflicts, and orphaned contacts so your ops team catches issues before the Monday pipeline meeting.

FAQ

Should both systems be bidirectional?

Usually not. We design field-level ownership so each system updates only the fields it should control.

Can we keep existing workflows?

Yes. We map current processes first, then migrate safely with staged QA before changing production behavior.

How do you handle custom objects and properties?

We inventory every custom field in both systems during discovery, then build explicit mapping rules so custom data syncs without falling back to default values.

What if our teams use different lifecycle stage definitions?

We align lifecycle stages between systems before turning on sync, so the definition of MQL, SQL, and Opportunity is consistent across both platforms.

Last updated: February 7, 2026Partner links may include affiliate attribution