The HubSpot integration connects one Userflow environment to one HubSpot account. It syncs HubSpot contacts, companies, deals and custom objects with Userflow users and companies in both directions, and it streams Userflow events to HubSpot as timeline events on contacts and companies.
What does the HubSpot integration do?
The HubSpot integration does three things:
Brings HubSpot data into Userflow. HubSpot contact, company, deal and custom object properties sync to Userflow, so you can target flows by segment, industry, or any other HubSpot property.
Sends Userflow data to HubSpot. Userflow attributes you choose, such as NPS scores, sync to HubSpot properties.
Streams Userflow events to HubSpot. Userflow-generated events, such as Flow Started, Checklist Task Completed and survey responses, appear as timeline events on HubSpot contacts and companies. You can use them in HubSpot workflows, for example to send a follow-up email when a user completes an onboarding step.
The HubSpot marketplace listing has a demo video.
How the HubSpot integration matches and syncs records
The HubSpot integration works through object mappings. Each mapping pairs a HubSpot object type with a Userflow object type, for example HubSpot contacts with Userflow users, or HubSpot companies with Userflow companies.
Supported HubSpot objects: contacts, companies, deals, and custom objects.
Records are matched by ID fields you pick when you set up the mapping, usually an email address or a shared ID from your own database. The HubSpot integration only syncs records that exist in both systems and never creates new ones. For example, HubSpot contacts who only receive your newsletter won't become Userflow users.
Syncing is near real time. Changes in Userflow reach HubSpot in under 1 second. Changes in HubSpot usually reach Userflow in 3 to 10 seconds. On top of that, a full sync runs about every 24 hours to catch anything missed.
Where HubSpot data shows up in Userflow and HubSpot
In Userflow: HubSpot properties appear on user and company profiles with the HubSpot sprocket icon.
.png)
In Userflow targeting: use HubSpot properties in auto-start conditions.
.png)
In HubSpot: streamed Userflow events appear on the Activity tab of contacts and companies. To see them, click Filter activity and turn on Userflow.
.png)
.png)
In HubSpot workflows: use streamed events as triggers, for example to send an email when a user completes a checklist task. You can filter on event details, such as the checklist task name.
.png)
.png)
Can I send a Userflow segment to HubSpot?
The HubSpot integration doesn't sync Userflow segments. It syncs objects (users, companies) and the fields you map, and it streams Userflow events to HubSpot.
To build a HubSpot list from the same people as a Userflow segment:
In the HubSpot integration's object mapping, add the Userflow attributes your segment filters on to the fields synced from Userflow to HubSpot. Create the matching
userflow_properties in HubSpot first.In HubSpot, create an active list that filters on those properties.
If your segment is based on what users did, such as finishing a flow, turn on Stream events and build the HubSpot list or workflow from the streamed Userflow events instead.
Correcting an NPS score that synced to HubSpot
A submitted survey response can't be edited in the Userflow interface, but it can be updated through the API — or you can hold the corrected value in a separate CRM property mapped into Userflow as its own attribute. See Correcting an answer a user has already submitted.
Do I need a separate HubSpot integration for Staging and Production?
Yes. Each HubSpot integration connects one HubSpot account to one Userflow environment, so you set it up separately for each environment.
Connect your main HubSpot account to your Production environment only. If you want to test the HubSpot integration in a Staging environment, use a separate test HubSpot account. Connecting your main HubSpot account to Staging puts test timeline events on your real customer records.
Connect HubSpot to Userflow
Sign in to Userflow and use the company and environment menu in the top-right corner to pick the environment you want to connect.
Go to Settings → Integrations and click Add integration.
Find and click HubSpot in the list.
Click Add HubSpot. If you don't see it, the HubSpot integration may not be included in your plan. Check your billing settings.
Click Connect with HubSpot. In the popup, pick the HubSpot account to connect to this environment. You need Admin or Super Admin access in HubSpot.
Click Set up a new mapping between HubSpot and Userflow objects.
.png)
Pick the HubSpot object type and the Userflow object type, for example HubSpot contacts and Userflow users, and click Continue.
.png)
Choose how records are matched:
HubSpot contacts with Userflow users: match by Email (pick Email in both dropdowns), or by a HubSpot property that holds the same user ID your Userflow.js snippet passes to
userflow.identify(userId). The second option needs your back end to store that ID on HubSpot contacts.With Userflow companies: your Userflow.js installation must call
userflow.group(companyId), and the HubSpot company property you pick must hold that samecompanyId.
Choose the fields to sync from HubSpot to Userflow. You can also pick fields from associated records. For example, when syncing contacts, you can pick company fields, and the HubSpot integration takes the value from the contact's company.
Choose the fields to sync from Userflow to HubSpot. Userflow writes them to HubSpot properties named
userflow_<object>_…. These properties must already exist in HubSpot. Userflow doesn't create them, and a sync to a missing property fails without an error. Create them in HubSpot under Settings → Properties first.To post Userflow events to HubSpot's Activity tab, turn Stream events on, then choose Stream all events or Select events to stream and pick the events. Only some HubSpot objects can receive events.
.png)
Click Save mapping.
.png)
Click Run full sync. New and changed records sync from now on, but existing records only sync after a full sync. The page shows progress and a green check mark when it's done.
.png)
If you change a mapping later, run a full sync again. You can add more than one mapping, for example contacts to users and companies to companies.
Why can't I connect HubSpot to Userflow?
If the connection fails when you click Connect with HubSpot:
Check your HubSpot role in HubSpot under Settings → Users & Teams. Connecting needs Admin or Super Admin. If you're not an admin, ask one to connect it.
If the popup didn't open, allow popups from Userflow and try again.
Why aren't Userflow attributes showing in HubSpot?
The field isn't in the mapping. Open the HubSpot integration in Settings → Integrations, edit the object mapping, and check that the Userflow attribute is in the list of fields synced from Userflow to HubSpot.
The HubSpot property doesn't exist. Userflow only writes to properties that already exist. A missing property fails without an error. Create it in HubSpot under Settings → Properties, then run a full sync.
The property types don't match. A Userflow date can't sync into a HubSpot text property. Match the types: text to text, number to number, date to date.
HubSpot rate limits. Sending a lot of data at once can delay some syncs. The HubSpot integration's log in Userflow shows sync jobs and their errors.
Why aren't Userflow events showing on HubSpot contacts?
Streamed Userflow events only appear in HubSpot when all of these are true:
Stream events is on in the mapping, and if you chose Select events to stream, the event you expect is selected. Only selected events stream.
The HubSpot contact is matched to a Userflow user by the object mapping. Events for users who don't match a HubSpot contact have nowhere to go.
Userflow is turned on in the contact's Activity filter. On the contact's Activity tab, click Filter activity and turn on Userflow. Events are hidden until you do.
The HubSpot integration's log in Userflow only shows contact sync jobs. It's empty for streamed events, so an empty log doesn't mean events failed.
The HubSpot connection says "Not connected" or "Authorization expired"
HubSpot authorization can expire, or the HubSpot admin who connected it may have been removed from the HubSpot account. To fix it, open the HubSpot integration in Settings → Integrations, click Reconnect, and complete the HubSpot sign-in again.
Still stuck with the HubSpot integration?
Contact support@userflow.com with your HubSpot account ID, any error message from the integration's log, and which events or properties aren't syncing.
How do I disconnect HubSpot?
Open the HubSpot integration in Settings → Integrations.
Click the three-dot button in the top right and click Disconnect. Event streaming and property sync stop immediately.
Uninstall the Userflow app in HubSpot by following HubSpot's instructions.