Salesforce Lead and Contact Association

Am I missing something in the Salesforce–HubSpot sync behavior?

I’m trying to make sure I fully understand how Leads and Contacts sync between Salesforce and HubSpot — and whether there’s a gap I’m overlooking.

When a Salesforce Lead is converted to a Contact, it’s often because an Opportunity is being created. At that point, the Contact is associated with a new or existing Salesforce Account. On the HubSpot side, that record now has a Salesforce Contact ID, Salesforce Account ID, and often an updated Lifecycle Stage (Opportunity) and # of Open Deals = 1.

Here’s my question:
If there are other Leads in Salesforce (which appear in HubSpot as Contacts, but without Salesforce Contact IDs), and they belong to the same Account/Company — why don’t they get converted as well?

From a Marketing perspective, this creates a problem: lead gen campaigns could keep running against people at companies that are already engaged in an active opportunity or are closed-won customers.

To complicate things further, automatic company/contact association is turned OFF in HubSpot (per HubSpot’s recommendation), so there’s no built-in way to use workflows to update all Contacts at the same Company based on a Deal being created.

:backhand_index_pointing_right: Is this expected behavior?
:backhand_index_pointing_right: Is there a workaround to help us prevent marketing from continuing to target Contacts at accounts that already have active Opportunities?

Would love any insights or best practices here — thank you!

Hey @bjonesmarketing I’m curious as to the recomendation for turning off automatic company/contact association to be honest, most of my customers use this. If you’re running ABM campaigns and/or a b2b business then companies are generally the universal source of truth for lifecycle stage. I’d just have the companies update to an opportunity which can in turn automatically turn every contact into an opportunity then if they’re associated.

Hi @Tom - In other cases, yes, I have my clients turn automatic association on as well. To your point, Companies are viewed as buying centers in the B2B world, so all associated Contacts should have the same lifecycle stage. However, with the Salesforce integration, having this setting enabled seems to interfere with Salesforce’s association rules -- it creates duplicate records. Here’s the article where HubSpot recommends against this. I was curious if I’m missing something or if there are workarounds.

Hi @bjonesmarketing,
When a Lead is converted in Salesforce, only that Lead becomes a Contact and syncs to HubSpot with the new Salesforce Contact ID, Account ID, and updated lifecycle stage. Any other Leads tied to the same Account in Salesforce don’t automatically convert or sync as Contacts so in HubSpot, they stay as standalone Contacts with no deal association or context.
You could review your lead conversion process some teams create automation in Salesforce to convert related Leads once a primary Contact is created and linked to an Account.

If a new deal is created for Company X, and other Contacts exist at Company X → update their lifecycle stage or subscription status.” (You may need to rely on custom properties or ops hub workflows to make this scalable.)

Periodically check for HubSpot Contacts missing Salesforce Contact IDs these are your “unconverted” leads and assess if they need to be updated or removed from campaigns.

Thanks @Wesimplifi_ . It sounds like you’re saying we first need to create automation in Salesforce to convert the other associated Leads. That conversion would then create the Company/Contact association in HubSpot.

Once that association exists, we’d be able to sync Lifecycle Stages, Lead Statuses, etc. But without that initial Salesforce automation, the other automations (like updating Lifecycle Stage when a new Deal is created) won’t work — is that right?