I need a way to auto associate companies to deals. Right now contacts are associated to the deals via Airtable. When this gets to Hubspot i need a workflow that will auto associates the contacts company to the deal. The issue we have is some contacts may have two associated companies and, in that case, we would need the company with associated label main firm to be associated to the deal. I thought of creating a property that copies the company record ID over to the contact and then have this go to the deal. Is this the best way to achieve this?
You can use a property sync property to copy the associated unique IDs to the contact (main company record ID synced ti contact). You can copy that value, via a workflow, to a deal property (e.g. main company record ID).
Then, you can use a workflow to associate the deal to the company record.
enrollment trigger = Deal record main company record ID = known
associate company record, match on property value, main company record ID (Deal) <> company ID
Before copying a company record ID onto the Deal, lock the conflict rule.
If a Contact can have two Companies, decide which one wins (label = main firm, primary association, or a deal-type map). Put that chosen company ID on Contact (or on a thin staging field from Airtable), then associate Deal → that Company only.
Copying “any” company ID first will create wrong Deal associations that Sales has to unwind later.
Is “main firm” already consistent in Airtable, or do you still get two plausible companies on the same Contact?
Using the company record ID in a contact property is a reasonable workaround, especially if Airtable can populate it with the “main firm” company ID. Then the HubSpot workflow can use that ID to associate the correct company with the deal. This also avoids ambiguity when a contact has multiple company associations.
Good news — you likely don’t need the property-ID workaround. HubSpot added a native workflow action called “Create associations between records” (available on Marketing/Sales/Service/Data Hub Professional or Enterprise, or Smart CRM Pro/Enterprise) that can do exactly this, including filtering by association label.
You don’t need the extra property field for this — HubSpot’s newer “Create associations” workflow action can handle the label filtering natively:
How it works:
- Build a deal-based workflow (trigger: deal created, or whatever fits your Airtable→HubSpot sync trigger).
- Add the Create associations action (Automation → Workflows → + → CRM section → “Create associations”).
- Set it to associate records for the deal’s associated contact’s company — the action lets you reach through the contact to their associated companies, not just the contact itself.
- Under the association filter, choose “Associated records with a specific label” and select your “Main Firm” label. This is the key part — it filters for the specific labeled company, ignoring any other companies the contact might be linked to.
- This creates the direct Deal↔Company association, filtered correctly, in one step.
If you’re not on a Pro/Enterprise hub (this action isn’t available below Professional), your instinct is basically the right fallback — you’d need a way to get the “Main Firm” company’s Record ID onto a property, then either:
- Use a native “Copy property value” workflow action to bring that ID onto the deal (this part is native, no issue), then
- Use a “Find and Associate”-style action from a marketplace app (Associ8, 0CodeTools/Resonate, or Integration Glue’s Workflow Associations Manager) to actually create the Deal↔Company association from that ID — native workflows alone can’t turn a property value into a new association without one of these tools or custom code (Operations Hub Pro).
So: check your hub tier first. If you’re Pro/Enterprise, skip the extra property entirely and use the native label-filtered “Create associations” action — cleaner, no redundant data to maintain. If you’re on Starter or below, your property-copy plan is a reasonable workaround, but you’ll still need a “find and associate by record ID” action (native or app-based) as the final step, since a property alone doesn’t create the association.
Could you please share a screenshot of how you configured step 3?
When I select “Specific records,” I can only choose the enrolled deal or records directly associated with it. There is no option to select a company associated with the deal’s contact. I checked this in both Professional and Enterprise portals.
This sounds like an association logic issue more than a deal creation issue.
Since a contact can legitimately be associated with multiple companies, I wouldn’t rely on the default company association alone. I’d make the “Main Firm” designation the rule that determines which company gets associated with the deal.
If possible, I’d also have Airtable pass a unique company identifier into HubSpot rather than relying only on company name or domain. That will make the automation much more reliable as the database grows.
We do a lot of this kind of HubSpot data architecture and automation work at Unlimited Tech Solutions, and the biggest thing is making sure the relationship logic is defined before you automate it. Otherwise, you can end up creating more cleanup later.
It’s not possible with the native workflow action for associations. If you want to associate records beyond 1 degree of separation, you can use the unique identifier method I mentioned above, or use a custom coded action to make API calls.
@Derek_Reynolds thanks, that was my understanding as well. I asked for a screenshot because the setup described above doesn’t appear to exist in the native action, and I didn’t want the original poster to get incorrect information.