How do I copy a property from company to contact in HubSpot?
Build it as a company-based workflow, not a contact-based one, and use the Copy property value action across the primary association. Turn re-enrollment on for both Company owner is known and Number of associated contacts is known, or the value copies once and then goes stale. The native copy action sits at Operations Hub Professional. First build takes about 25 minutes, plus the association cleanup underneath it.
The 5 specs, in build order
Each spec states its minimum tier. Free ones open in full; the others show their public preview and the date their full spec lands.
What a spec looks like
Every spec follows the same nine sections, so a team reads one and knows how to read all of them.
- Outcome, when to use it and when not to
- Prerequisites: properties, lists, tiers, with the JSON to create them
- Enrollment and re-enrollment, then every step with its parameters
- Known pitfalls, a test plan, variants, and the YAML build spec
What breaks, and how the specs prevent it
The copy action runs on enrollment, not continuously. If re-enrollment is off, or if it only watches the destination property, a later edit on the company never reaches the contact. Wire re-enrollment to the source side, then check the workflow history for a second enrollment after you change the company value.
The copy action reads a single primary association. A contact linked to a former employer as well as a current one mirrors whichever company holds the primary flag, silently. Run the primary-company check first and park the ambiguous records in a review list rather than letting the copy pick for you.
Industry is an enumeration on the company and often a plain text field on the contact. The copy succeeds, but a later change to the company picklist options leaves the contact value orphaned and your reports drift apart. Mirror the same option set on the destination property when the field feeds reporting.
What this bundle builds
You have a value that lives on the company, industry, employee count, owner, and you need it on the contact or on the deal, because the list, the view or the export you actually work from only reads that object. This is the most repeated mechanical request in the whole HubSpot Community, and the answers you find in threads are usually half of one.
The five specs here build the whole chain, not just the copy step. First the association has to exist, so there is a company to read from. Then it has to be unambiguous, because a contact sitting on two companies copies from whichever one carries the primary flag. Only then does the copy itself make sense, once down to the contact, once across to the deal. The last spec covers the awkward case where the value you want is an owner rather than a field.
It fits an in-house admin cleaning a portal that grew by import, and an agency setting up account-level segmentation on a client portal where nobody ever enforced the company link. Four of the five specs assume Operations Hub Professional for the native copy action.
How the pieces fit together
Build in this order, because each step is the prerequisite of the next. Start with the domain match, which creates the contact to company association and parks multiple matches in a review list rather than picking one. Then run the primary-company check, which only looks at contacts carrying two or more companies and writes a status property saying whether a primary exists. Those two together mean the copy action always has exactly one source record.
The two copy specs come next and are close to identical: one writes a company field onto the contact, one writes it onto the deal. Each needs its own destination property created ahead of time, matching the source field type. The owner spec is last because it depends on your pipeline stages, not on the association work: it branches on how many open deals the company has and only copies the owner when there is exactly one.
What you get
- 5 specs, each as PDF and Markdown, with the enrollment criteria, the step list, a diagram, a test plan and the known pitfalls written out.
- Properties JSON: 5 property definitions across contacts, deals and companies, including the status properties that keep these workflows from looping on their own output.
- Workflow JSON in Automation API format, switched off, so you review before anything runs.
- Custom coded actions: 2, for the domain match and the labeled-association read, with the scopes each token needs.
- 3 static lists named and specified, for the review queues that catch what should not be automated.
- Test plans that include the negative cases: no association, two associations, no primary.
- Install in one click for Full and Agency buyers.
- The deal to contact spec is not in the library yet. It is planned for this bundle and lands as a free update.
Who it is for, and who should skip it
Buy this if you have a specific field stuck on the wrong object and a re-enrollment problem you have already hit once. You will have the first copy running inside half an hour, and the association hygiene underneath it the same afternoon.
Skip it if your portal runs on Starter or on Sales Hub Professional alone: the native copy action across an association is the whole point and it is not in your action list. Skip it too if you want the broad data cleanup rather than this one job, since duplicates, formatting and required fields sit in the data quality category, and the full library costs less than three packs.
Questions admins ask
Why does my copy workflow only fire once?
Because re-enrollment is either off or pointed at the wrong property. A workflow enrolled on the destination being unknown stops matching the moment it writes a value. Set re-enrollment on the source side, on the company property or the association change, and accept that some portals only expose that as a company-side trigger.
Should the workflow be contact-based or company-based?
Company-based, for the company to contact direction. This is the single detail people get wrong most often. Re-enrollment then needs two criteria together: Company owner is known, and Number of associated contacts is known. Without the second one, contacts added to the company later never receive the value.
Can I copy a company property to a contact without Operations Hub Professional?
Not with the native Copy property value action across an association, which is where the tier gate sits. The workarounds are a custom coded action, which needs the same tier, or an integration that writes the value from outside. Verify the action list in your own portal first, since this has moved between tiers before.
How do I copy a deal property to the associated contact?
That spec is not written yet. It is the most-asked direction in the Community and it is on the list for this bundle, so buyers get it as a free update when it lands. The deal to company version exists today and uses the same mechanics.
Does copying the company owner to the contact owner work the same way?
Owner is an owner-type property, not text, so confirm your portal lets the copy action write it before you plan around it. The pattern in this bundle takes the safer route: read the owner from an associated open deal, write it to the record, and send anything ambiguous to a manual queue.