Hubspot (CRM)
How Spara syncs lead data with HubSpot CRM using Push and Pull Rules.
Spara integrates with HubSpot to keep your CRM in sync with lead activity. Once connected, Spara can write conversation data and field values to HubSpot Contacts (Push), and import existing HubSpot Contacts into Spara as Leads (Pull).
For step-by-step setup instructions, see Guide: Connecting HubSpot.

Contact
Any mapped property
Any mapped property
Company
None (read-only)
Firmographics; see Company Data below
Owner
None (read-only)
Name and email; see Owner Data below
Deal
None (read-only)
Deal fields; see Deal Data below
Push Rules
Push Rules control how Spara writes data to HubSpot when a Spara Lead interacts with your agents. This is the primary sync direction: Spara pushes conversation insights and field values into matching HubSpot Contact objects.
Choose one of two sync modes:
Create or update: Update a matching, pre-existing HubSpot Contact when one is found by email address or HubSpot ID; create a new Contact when no match is found.
Update only: Update matching Contacts, but never create new ones. Use this when you want HubSpot record creation to stay under your team's control.
How the sync operates
Spara's sync is event-driven, not scheduled:
A Contact is created or matched as soon as Spara knows an email address. The first time an email is captured, whether in chat, on a call, or via a webform, Spara looks for a matching Contact (by stored HubSpot ID first, then email address) and, depending on your Push Rules, updates it or creates a new one. Spara does not wait for other fields like name or company to be gathered first.
Property updates push immediately. Every time a mapped Spara field changes (a new answer in conversation, a booked meeting, an enrichment result), Spara writes it to HubSpot right away.
Conversation transcripts push shortly after the conversation goes quiet. Transcript syncs are batched, so HubSpot receives one consolidated update a few minutes after the last message rather than one write per message.
Pull Rules run every few minutes. New and modified HubSpot Contacts matching your Pull Rules are imported continuously.
Deal data syncs nightly.
Pull Rules
Pull Rules control which existing HubSpot Contacts are imported into Spara as Leads. This is useful for leads that exist in HubSpot but have not yet interacted with a Spara agent. Spara can pull them in so your agents and workflows can proactively reach out. Pull Rules can filter on any HubSpot Contact property; by default, Spara only pulls Contacts that have an email address.
Data Model Sync
The Data Model Sync section maps individual Spara Lead fields to HubSpot Contact fields. Each row in the mapping table defines:
Spara Lead Field: the field Spara gathers during conversations (e.g., First name, Company size, or any custom field)
HubSpot Contact Field: the corresponding HubSpot Contact property to write to
Write rule: whether Spara should overwrite any existing value, or only write when the HubSpot field is empty
The Email field is always mapped automatically and cannot be removed. You can add as many additional field mappings as needed.

Field mappings apply to both Push and Pull syncs. For a full list of available Spara fields, visit your Data Model or click View your Data Model within the HubSpot settings page.
Company Data
When company syncing is enabled, Spara reads the Company associated with each matched Contact, including name, domain, website, industry, employee count, annual revenue, and city. Synced companies appear on the Accounts page, and their fields are available in workflow conditions and agent personalization.
Company data is read-only: Spara never creates or updates HubSpot Companies.
Owner Data
When owner syncing is enabled, Spara reads the assigned owner from matching HubSpot Contact records. If an owner is found and active, their details are available in Spara, including name and email, and appear in the lead's detail view and on the Owners page.
Owner data is available as fields in workflow conditions and agent personalization, so you can reference a lead's assigned rep by name in emails, chat messages, or routing logic.
Deal Data
Spara reads HubSpot Deal data nightly to power pipeline and revenue reporting in Analytics, including which deals Spara-engaged leads influenced. Spara reads each Deal's name, amount, stage, close date, currency, and open/closed/won status. Deal data is read-only: Spara never creates or updates HubSpot Deals.
Limitations
Writes are Contact-only. Companies, Owners, and Deals are read-only. Spara cannot update them when it learns something new. HubSpot Lead objects are not synced; Spara Leads map to HubSpot Contacts.
Records are created as soon as an email is known. Requiring additional fields before creation is available as Enterprise custom work.
Spara Events are not synced as structured activity. Conversation transcripts sync through a mapped Contact property, and emails Spara exchanges with a lead are logged as HubSpot email engagements, but individual events (page visits, calls, meetings) are not written as HubSpot activities.
Unsupported objects require custom mapping. Fields from HubSpot objects Spara doesn't model can be mapped onto Spara's Lead, Account, and Owner objects by Spara's engineering team, available for Enterprise customers.
For practical workarounds, see Guide: Working Around CRM Sync Limitations.
Sync Logs
The Logs tab on the HubSpot settings page shows every sync between Spara and HubSpot, newest first. Each entry records what happened (a contact created or updated, fields that didn't sync, a sync skipped because of your Push Rules, or a connection problem like an expired token) along with the Lead it affected, the HubSpot record, and how many fields synced.

Filter the list by status (Synced, Needs attention, or Failed), direction, or timeframe. Search covers the technical detail behind each entry as well as its summary, so you can look up a HubSpot error code or a property name and find every record hitting the same problem.
Select an entry to see its details:
A plain-language explanation of what happened, and what to do about it, with a link to the setting that fixes it
The Lead and the HubSpot record involved
Every field the sync moved, shown as the Spara field, the HubSpot property it maps to, and the value
For any field HubSpot rejected, the reason HubSpot gave. For example, a property that no longer exists, or a value that isn't one of its defined options
Each Lead also has a CRM sync row in its details showing that Lead's most recent sync outcome, which opens the same view. That answers "did this Lead reach HubSpot?" without leaving the Lead.
FAQ
How does Spara match a Lead to a HubSpot Contact?
Spara matches by stored HubSpot Contact ID first, then by email address. As soon as a lead provides their email in a conversation, Spara attempts to find a matching Contact and begin syncing.
Will Spara overwrite existing data in HubSpot?
By default, yes. Spara uses the "Overwrite existing value" write rule for new field mappings. You can change individual mappings to "Update if field is empty" to protect existing HubSpot data.
Can Spara update HubSpot Companies or Deals?
No. Spara only writes to Contacts. If you need Spara data written to other objects, use Developer: Webhooks with your own automation. See Guide: Working Around CRM Sync Limitations.
What happens if HubSpot is disconnected?
Syncing stops immediately. Your field mappings are preserved so you can resume with the same configuration after reconnecting. To reconnect, go to Settings > Integrations and click Authorize on the HubSpot card.
Last updated