Whether you click Push to HubSpot on a contact in the dashboard or use a Workflow to push contacts automatically, the exact same fields are synced and the process works the same way. This article is a complete reference of everything Knock2 writes to HubSpot when a contact is pushed.
Three things happen in order: a company record is created or updated, a contact record is created or updated, and the contact is associated with that company.
Step 1: Company Record — Create or Update
Knock2 looks up the company in HubSpot by domain. If no matching company exists, a new one is created. If a match is found, only fields that are currently blank in HubSpot will be filled in — Knock2 never overwrites data you already have.
Field | What gets populated |
Company Name | The company's name |
Domain | The company's website domain |
About Us | A short description of the company |
Annual Revenue | Estimated annual revenue |
Number of Employees | Estimated employee count |
Phone | Company phone number |
City | Company city |
State / Region | Company state or region |
Country | Company country |
Postal Code | Company zip / postal code |
Street Address | Company street address |
Founded Year | Year the company was founded |
Timezone | Company timezone |
HubSpot Owner | Assigned HubSpot owner (if configured) |
Step 2: Contact Record — Create or Update
Knock2 checks whether a contact with this email address already exists in HubSpot. If not, a new contact is created. If a match is found, any blank fields in the existing record are filled in — your existing contact data is always preserved.
Sales Properties
Contact owner
Owner assigned date
Contact Activity
Message (e.g. "Knock2 - Website Visitor")
Contact Information
Field | What gets populated |
Contact's email address | |
First Name | Contact's first name |
Last Name | Contact's last name |
Company | Company name |
Job Title | Contact's job title |
Website | Company domain |
City | Contact's city |
State / Region | Contact's state or region |
Country | Contact's country |
Phone | US phone number (mobile prioritized) |
Twitter / X Handle | Twitter / X profile URL |
Seniority | Seniority level (e.g. Director, VP, C-Suite) |
Photo | Profile photo URL |
Record Source | Set to "Integration" |
Record Source Detail 1 | Set to "Knock2" |
HubSpot Owner | Assigned HubSpot owner (if configured) |
Web Analytics History
Latest Traffic Source (Offline sources)
Latest Traffic Source Date
Latest Traffic Source Drill-Down 1 (INTEGRATION)
Latest Traffic Source Drill-Down 2 (Knock2)
Original Traffic Source (Offline sources)
Original Traffic Source Drill-Down 1 (INTEGRATION)
Original Traffic Source Drill-Down 2 (Knock2)
Time first seen
Contact Lifecycle Stage
Date entered "Lead (Lifecycle Stage Pipeline)"
Knock2 Attribution Fields
These are optional custom properties that must be created in HubSpot before they will populate. See the HubSpot Advanced Attribution Properties Setup Guide for instructions.
Field | What gets populated |
| Set to "true" to mark this contact as Knock2-sourced |
| "created_by_knock2" for new contacts; "enriched_by_knock2" for existing ones |
| Timestamp of when Knock2 first detected this visitor (new contacts only) |
| Timestamp of this contact's most recent activity |
| Total number of pages viewed on your site |
| Recent pages visited, with timestamps |
Step 3: Contact-to-Company Association
After the contact and company records are ready, Knock2 automatically associates the contact with the company in HubSpot. The contact will appear under the company record and vice versa — no manual linking required.
How Knock2 handles existing records
Knock2 is non-destructive. For both companies and contacts, if a field already has a value in HubSpot, Knock2 will not overwrite it. Only blank fields get filled in. You can safely push contacts — manually or via workflow — without worrying about losing data your team has already added.
Questions? Reach out via the chat bubble in the dashboard or at support@knock2.ai.