Salesforce HubSpot Integration Guide | 2V Automation
You can sync Salesforce and HubSpot three ways - native connector, iPaaS, or custom. Here's what each one syncs, what breaks, and how to choose.
Jump to a section
You can sync Salesforce and HubSpot in three ways: HubSpot’s native Salesforce integration, a third-party iPaaS platform like Zapier or Make, or a custom build against both APIs. For 90% of teams, the native connector is the right answer - it’s built and maintained by HubSpot, free on most tiers, and handles two-way sync of contacts, companies, and deals out of the box.
This guide walks through all three paths, what data actually flows in each direction, the field mapping gotchas that bite teams in month two, and how to choose.
The 60-second answer
If marketing lives in HubSpot and sales lives in Salesforce, you want HubSpot’s native Salesforce connector. It’s the most-supported path, and it covers most realistic use cases without writing code.
You’d reach for an iPaaS or custom build only when:
- You need to sync objects the native connector doesn’t handle (tickets, products, custom objects with weird relationships)
- You need transformation logic between the two systems (deduplication rules, complex routing, calculated fields)
- You’re running a one-off historical migration rather than ongoing sync
- One side is on a tier that doesn’t support the native integration
The three integration paths
Path 1: HubSpot’s native Salesforce integration
HubSpot built and maintains this connector. It’s the path most teams should start with.
What you get:
- Two-way contact sync (HubSpot Contact ↔ Salesforce Lead or Contact)
- Two-way company sync (HubSpot Company ↔ Salesforce Account)
- Two-way deal sync (HubSpot Deal ↔ Salesforce Opportunity)
- Lead score and lifecycle stage propagation from HubSpot to Salesforce
- Inclusion lists (which HubSpot contacts get synced to Salesforce - useful if you don’t want every form-fill to create a Lead)
- Activity timeline events (form submissions, email opens, page views) pushed to the Salesforce contact
Pros: Free on most tiers, two-way bi-directional sync, maintained by HubSpot, fast setup, no per-record charges.
Cons: Doesn’t cover tickets, custom objects with complex relationships, or arbitrary transformations. Initial sync of large databases can take hours to days. Conflict resolution rules are limited - you pick one side as the source of truth per field, but can’t easily do conditional logic.
Pricing: Available on HubSpot Professional and Enterprise (Marketing or Sales Hub). The Salesforce side needs API access - that’s Professional Edition and above on Salesforce, with API access enabled.
Path 2: iPaaS - Zapier, Make, n8n, or Workato
Use a platform that has both Salesforce and HubSpot connectors. The platform handles auth, polling/webhooks, and the actual data movement.
What you can do that native can’t:
- Sync objects native doesn’t touch (HubSpot Tickets to Salesforce Cases, custom objects, products)
- Apply transformation logic (route deals based on size, deduplicate against a third source, calculate fields)
- One-way sync only (sometimes you want this - push HubSpot form fills to Salesforce as Leads but never sync back)
- Loop in other systems in the same workflow (e.g. when a deal closes in Salesforce, update HubSpot AND notify Slack AND create a Stripe customer)
Pros: Full flexibility, can include third systems, handles transformation logic.
Cons: You’re building and maintaining workflows. iPaaS pricing scales with volume - Zapier per task, Make per operation, n8n per execution. At meaningful scale this can outpace the value vs. native.
Pricing: Zapier starts useful around $30-$70/month for low volume. n8n self-hosted is $30-$100/month for infrastructure regardless of volume. See our n8n vs Zapier comparison for the cost breakdown.
Path 3: Custom integration via APIs
Both Salesforce (REST API, Bulk API, Streaming API, Platform Events) and HubSpot (CRM API, Webhooks API) have well-documented APIs. You can build a service that talks to both.
When to do this:
- You have engineering capacity and a long-term integration that doesn’t fit native or iPaaS
- You need ultra-low-latency sync (sub-second) that polling-based iPaaS can’t deliver
- You’re doing one-time data migration with complex business rules
- You need extreme reliability with custom retry/backoff and observability
Pros: Full control, no vendor lock-in, no per-execution costs.
Cons: You’re now a maintainer. APIs change, auth tokens rotate, edge cases multiply. Budget engineering time for support indefinitely.
What data flows in each direction
This is where teams get tripped up. The directionality of the native connector is not symmetric.
| Object | HubSpot → Salesforce | Salesforce → HubSpot |
|---|---|---|
| Contact | Yes (creates Lead or Contact) | Yes (creates Contact) |
| Company / Account | Yes | Yes |
| Deal / Opportunity | Yes (with stage mapping) | Yes |
| Email activity | Yes | No (HubSpot tracks its own) |
| Form submissions | Yes (as activity) | N/A (Salesforce doesn’t have forms in the same way) |
| Lead score | Yes | No |
| Lifecycle stage | Yes | No (HubSpot owns this) |
| Tickets / Cases | No (native) | No (native) |
| Custom objects | Limited | Limited |
| Attachments | No | No |
| Tasks | Configurable | Configurable |
A few things to know:
- HubSpot Contacts can map to either Salesforce Leads or Salesforce Contacts, depending on your routing rules. Most teams map new contacts to Leads, then convert to Contacts when the Lead converts.
- Deal stages aren’t 1:1 between systems. You map each HubSpot deal stage to a Salesforce opportunity stage in the integration setup.
- Custom field sync is supported but you have to map each field manually. The mapping interface is in HubSpot under Settings → Integrations → Salesforce → Field mappings.
Step-by-step: Setting up the native Salesforce integration
Assuming you’re using the HubSpot-native path. Both systems must already exist with admin access.
1. Pre-flight checks
On the Salesforce side:
- Confirm API access (Professional Edition+ with API access enabled, or Enterprise/Unlimited)
- Have admin or System Administrator profile credentials ready
- Decide your Lead vs. Contact strategy upfront
On the HubSpot side:
- Confirm you’re on a paid Professional or Enterprise tier
- Have a list of contacts ready (you’ll pick which segments sync)
- Document your deal pipeline stages so you can map them to Salesforce opportunity stages
2. Install the connector
In HubSpot, go to Settings → Integrations → Connected Apps → Visit App Marketplace. Search for Salesforce. Click “Install app.” HubSpot redirects you to Salesforce to authorize.
You can choose between Salesforce production and sandbox during install. Start in sandbox if you have one - verify behavior, then redo in production.
3. Run the setup wizard
The wizard walks you through:
- Connection - OAuth authorization with Salesforce admin credentials
- Contact sync rules - inclusion list (which HubSpot contacts sync to Salesforce). Most teams pick “all contacts in active marketing lists” or a specific list, not “every single contact”
- Lead or Contact - whether new HubSpot contacts become Salesforce Leads or Contacts. Most B2B teams pick Leads
- Field mappings - standard fields auto-map. Custom fields you map manually. Pick the “source of truth” for each: HubSpot wins, Salesforce wins, or always use whichever is most recently updated
- Deal sync - enable if you sync deals. Map HubSpot pipelines and stages to Salesforce opportunities and stages
- Activity sync - pick which HubSpot activities flow to Salesforce (page views, form fills, email opens, etc.)
4. Initial sync
The connector kicks off a full sync. Depending on the size of your databases, this takes anywhere from minutes to a day or two. Monitor the sync health page in HubSpot - it’ll show errors per record.
5. Watch the first week
The first week is when you find the field mapping mistakes. Common issues:
- Picklist values don’t match (HubSpot has “United States”, Salesforce has “USA”) - leads to sync errors per record
- Required fields on Salesforce that HubSpot doesn’t populate
- Duplicate contact creation because email matching isn’t strict enough
- Lifecycle stage gets overwritten unexpectedly because both sides are trying to own it
Triage errors daily for the first week. Most settle into a routine after that.
Common pitfalls
Duplicate records
The single most common issue. Causes:
- A new form submission in HubSpot creates a contact that already exists as a Lead in Salesforce, because email matching is case-sensitive or has a trailing space
- Marketing imports a list to HubSpot that creates duplicates of existing Salesforce Contacts
- The same person is both a Lead and a Contact in Salesforce
Mitigation: enable strict email matching, run a deduplication pass before turning on sync, use a tool like DemandTools or DupeBlocker on the Salesforce side for ongoing dedupe.
Field mapping mismatches
Picklist values are the big one. If HubSpot has free-text “Lead Source” and Salesforce has a picklist, you’ll get sync errors for every value that doesn’t match.
Mitigation: convert HubSpot fields to dropdown lists with the same values as Salesforce picklists. Or use the iPaaS path with a transformation step.
Sync timing
The native connector syncs near-real-time for most fields but isn’t truly instant. Plan on 1-10 minute delay for most updates, longer during high volume. If your workflow assumes “the moment a deal closes in HubSpot, Salesforce updates and triggers downstream automation,” build in a check.
API rate limits
Salesforce has daily API call limits (typically 15,000-1,000,000 depending on edition and license count). A large initial sync can chew through these. Schedule big imports during off-hours and watch consumption.
HubSpot also has rate limits (100 requests / 10 seconds typical, more on higher tiers). Less commonly hit but worth knowing.
Custom object handling
The native connector handles HubSpot’s standard objects (Contact, Company, Deal) and Salesforce standard objects. Custom objects on either side aren’t fully supported - you’ll need iPaaS or custom.
Pricing and cost
| Path | Setup cost | Ongoing cost |
|---|---|---|
| Native HubSpot connector | Included in HubSpot Pro/Enterprise | Included (no extra fee) |
| Zapier | Free to start | $30-$500+/month depending on volume |
| Make | Free tier exists | $10-$300+/month |
| n8n Cloud | Free trial | $25-$500+/month per execution tier |
| n8n self-hosted | Infrastructure setup | $30-$100/month VM + ops time |
| Custom build | 2-6 weeks engineering | Maintenance: 2-10 hours/month |
For a typical mid-market team, native is free, iPaaS runs $50-$200/month, and custom adds up to thousands monthly when you fully load engineering time.
Decision matrix
| Situation | Recommended path |
|---|---|
| Standard CRM sync (Contacts, Companies, Deals) | Native |
| Need tickets or custom objects synced | iPaaS (Zapier, Make, n8n) |
| Complex transformation rules required | iPaaS or custom |
| One-time migration with cleanup logic | iPaaS or custom |
| 20,000+ records syncing actively | Native (or custom for sub-second SLAs) |
| Need to involve a third system in the workflow | iPaaS |
| Want sub-second latency | Custom |
| No HubSpot Pro/Salesforce API access | iPaaS |
When to involve specialists
If you’re untangling a multi-system stack - HubSpot, Salesforce, plus a billing system, plus a data warehouse, plus marketing tools - and trying to figure out where each piece of data should live, that’s a strategy question before it’s an integration question. Our Efficiency Scorecard walks you through it in about 15 minutes.
For estimating what an automation project actually costs to build and maintain, the workflow cost calculator compares iPaaS pricing across Zapier, Make, and n8n at your specific volume.
Related reading
- Best CRM for AI automation: HubSpot vs Salesforce vs Zoho
- Sales automation services - the pillar covering the full sales stack
- Slack and Salesforce integration - companion guide if you also push Salesforce activity to Slack
- HubSpot and Gmail integration - companion guide for the email side
- Google Sheets and Salesforce integration
- n8n automation guide - if you go the iPaaS route
- AI automation guide - broader context on AI-driven workflows on top of synced CRM data
If you’re untangling a HubSpot/Salesforce stack that’s drifted out of sync - or scoping a new integration before turning it on - start with the Efficiency Scorecard. It’s the fastest way to figure out which path makes sense for your specific setup.