Skip to content

Field notesHubSpotSalesforceCRM sync

HubSpot–Salesforce sync audit: 14 checks and the problems each one catches

Audit the HubSpot–Salesforce sync in six parts: what is allowed to sync, how each field is mapped, owners, lifecycle and stage mapping, where duplicates come from, and the Sync health error log.

Short answer: to audit the HubSpot–Salesforce sync, check six things in order: what is allowed to sync (inclusion segment and selective sync), how each field is mapped and which system wins, how owners map, how lifecycle stages and opportunity stages line up, where duplicates come from, and what the Sync health error log says. Most sync problems are silent: records do not fail loudly, they just stop agreeing.

Last reviewed September 2026 against HubSpot’s knowledge base. Setting names below are HubSpot’s.

How the sync works, in one paragraph

The HubSpot–Salesforce integration needs a Professional or Enterprise HubSpot subscription. HubSpot checks Salesforce for new or updated records approximately every 15 minutes. Syncs from HubSpot to Salesforce are triggered by events such as contact creation, property updates covered by a mapping, form submissions and email activity, ownership changes and (if the setting is on) lifecycle stage transitions. Syncs from Salesforce to HubSpot are triggered by new leads and contacts, value changes on leads, contacts, accounts and opportunities, and ownership changes. One caveat worth knowing before you audit: changes to Salesforce formula fields do not trigger a sync on their own.

Before you start

Work read-only. Take screenshots of every settings page you review and export the field mappings before you change anything. You will need:

  • Super Admin (or equivalent) read access in HubSpot to Settings → Integrations → Connected apps → Salesforce.
  • A Salesforce user who can run reports on leads, contacts, accounts and opportunities.
  • Two exports: HubSpot contacts with their Salesforce ID, and Salesforce leads and contacts with email and ID.

Part 1: Scope — what is allowed to sync

Check 1. The inclusion segment. HubSpot uses an inclusion segment (the UI still calls it an inclusion list in places) to decide which HubSpot contacts can sync to Salesforce. If none is set, all HubSpot contacts sync. Records that fall out of the segment stop syncing in both directions until they meet the criteria again. What it catches: marketing-only contacts (students, competitors, job seekers) flooding Salesforce; or, the reverse, real prospects excluded by a stale filter.

Check 2. Selective sync. Limiting what comes from Salesforce into HubSpot is a separate control, selective sync. The inclusion segment does not do it. What it catches: the common assumption that one filter governs both directions.

Check 3. Record creation and deletion settings. Review what happens when a Salesforce lead or contact is created or updated (Create or update the contact or Do nothing), whether HubSpot creates Salesforce leads or contacts, and what a deletion in Salesforce does in HubSpot (Delete the contact or Do nothing). What it catches: contacts disappearing from HubSpot because a sales rep cleaned up Salesforce.

Part 2: Field mappings and sync rules

Check 4. Export every mapping with its sync rule. Each mapping has one of four rules:

Sync rule What it does
Prefer Salesforce unless blank HubSpot writes to Salesforce only when the Salesforce field is empty; otherwise Salesforce wins
Always use Salesforce HubSpot never writes to Salesforce; Salesforce values always overwrite HubSpot
Two-way The most recent value overwrites the other side, in either direction
Don’t sync Nothing passes either way

Annotate each mapping with the system that should own the field. Any mismatch between intended owner and actual rule is a finding. What it catches: sales edits being overwritten by form submissions (Two-way on a field sales owns), or enrichment never reaching Salesforce (Always use Salesforce on a field marketing owns).

Check 5. Field type compatibility. HubSpot property types must match Salesforce field types (for example a dropdown select to a picklist, a number to a number field, a date picker to a date field). Check that picklist values match exactly, including state and country picklists, which have their own settings. What it catches: values that fail to sync because the picklist on the other side does not contain them.

Check 6. Unused and orphaned mappings. HubSpot allows up to 500 field mappings per object; most portals need far fewer. Compare mapped fields against fill rates on both sides. What it catches: mappings to fields nobody reads, which still consume API calls and add error noise. Only custom mappings can be deleted; standard mappings are switched off with Don’t sync.

Part 3: Ownership

Check 7. Owner mapping. Owner mapping is always two-way. Confirm every active Salesforce user who owns records has a matching HubSpot user, and check for records owned by deactivated users on either side. What it catches: round-robin or territory rules in Salesforce being overwritten by a HubSpot workflow, or leads assigned to people who have left.

Check 8. Which system routes? Write down whether lead assignment happens in HubSpot workflows or Salesforce assignment rules. If both, find the order of operations. What it catches: owners flipping between two values every sync cycle.

Part 4: Lifecycle and stage mapping

Check 9. Lifecycle stage direction. The integration can update HubSpot lifecycle stage from Salesforce (Update the contact’s lifecycle stage in HubSpot) and can sync on lifecycle transitions if automatic lifecycle stage transitions is on. Remember that HubSpot’s default lifecycle stage only moves forward through HubSpot’s own tools; setting an earlier stage requires clearing it first. What it catches: recycled leads in Salesforce that stay as SQLs in HubSpot forever, inflating funnel reports.

Check 10. Lead status and lifecycle agree. Compare Salesforce lead status against HubSpot lifecycle stage for a sample of records. Build a crosswalk table: each Salesforce status and the HubSpot stage it should imply. What it catches: “Disqualified” in Salesforce while HubSpot still counts the record as an MQL.

Check 11. Deal pipelines and opportunity record types. With the current deal sync, HubSpot deal pipelines map to Salesforce opportunity record types, and only deals in mapped pipelines are eligible to sync. Direction can be two-way or one-way. Check that every opportunity record type in use has a mapping, and that stages within each pipeline correspond. What it catches: opportunities that never appear in HubSpot pipeline reports, and closed-won deals whose amount or close date differ between the two systems.

Part 5: Duplicates

Check 12. Duplicate Salesforce leads and contacts. When several Salesforce leads or contacts share an email, HubSpot syncs with whichever was most recently updated. The HubSpot record can then be overwritten by the wrong Salesforce record, repeatedly. How to test: count emails that appear on more than one Salesforce lead or contact. Fix at the source: merge in Salesforce, or use selective sync to keep duplicates out.

Check 13. Which system mints the duplicates? Compare created-by source on duplicate pairs: forms, imports, list uploads, integrations or the sync itself creating leads from HubSpot contacts. HubSpot’s duplicates tool (Professional and Enterprise) shows suggested pairs; the audit question is where they come from. What it catches: the “clean-up every quarter” loop that never ends because the source is never fixed.

Part 6: The error log

Check 14. Read Sync health. Go to Settings → Integrations → Connected apps → Salesforce → Data sync → Sync health. Record each error type, the number of impacted records, and a sample of five records per type. Also check API call use, where you set how many Salesforce API calls the integration may consume. What it catches: errors that have been accumulating for months, usually from Salesforce validation rules, required fields, picklist mismatches or permissions on the integration user. Trend the counts weekly after the audit; a sync is healthy when the error count is stable and explained, not when it is zero once.

Turning the checks into findings

For each failed check, write the finding, attach the export or screenshot, state what it breaks (routing, reporting, deliverability, compliance) and estimate the fix. Rank by what corrupts numbers leadership already uses. This is the format of our read-only GTM Systems Audit (three weeks, from USD 1,500, credited in full against the fix). See a sample report, or start with the HubSpot audit checklist.

FAQ

How often does HubSpot sync with Salesforce?

HubSpot checks Salesforce for new and updated records approximately every 15 minutes, according to HubSpot’s documentation. Changes in HubSpot sync to Salesforce when a trigger event occurs, such as a mapped property update. Changes to Salesforce formula fields do not trigger a sync by themselves.

What are the HubSpot–Salesforce sync rules?

Each field mapping uses one of four rules: Prefer Salesforce unless blank, Always use Salesforce, Two-way, or Don’t sync. Owner mapping is always two-way. Audit each mapping against the system that should own the field.

What does the HubSpot Salesforce inclusion list do?

It limits which HubSpot contacts can sync to Salesforce; HubSpot now calls it an inclusion segment. If none is set, every HubSpot contact syncs. It does not limit what comes from Salesforce into HubSpot; that is controlled separately by selective sync.

Where do I find HubSpot–Salesforce sync errors?

In HubSpot, go to Settings, Integrations, Connected apps, Salesforce, then the Data sync tab and the Sync health section. It lists error types and impacted records, and shows the API call allocation for the integration.

Why do duplicate Salesforce records cause sync problems?

When more than one Salesforce lead or contact has the same email, HubSpot syncs with whichever was most recently updated. That can overwrite the HubSpot record with the wrong values. Merge duplicates in Salesforce or exclude them with selective sync.

Which HubSpot subscription is needed for the Salesforce integration?

A Professional or Enterprise subscription of a HubSpot hub (such as Marketing Hub, Sales Hub, Service Hub, Data Hub or Content Hub) or Smart CRM, per HubSpot’s knowledge base as of September 2026.

Want this read against your own portal?

A three-week, read-only audit of the automation platform, the CRM and the seams between them — evidence attached to every finding. From USD $1,500, credited in full against the fix.