This page describes how to use Census with HubSpot.

🏃‍♀️ Getting Started

In this guide, we will show you how to connect HubSpot to Census and create your first sync.


1. Connect HubSpot

  • Once you are in Census, Navigate to Connections​
  • Click the Add Service button
  • Select HubSpot in the Add Destination menu and click Connect
Follow HubSpot OAuth flow to connect HubSpot. Your end state should look something like this below.

2. Create your first Sync

Before you create your first sync, you'll also need to connect your data source. Once you've done that, head to the Sync page and click the Add Sync button
In the " What data do you want to sync?" section
  • For the Connection, select the data warehouse you connected in step 2
  • For the Source, select the model you created in step 3
Next up is the "Where do you want to sync data to?" section
  • Pick HubSpot as the Connection
  • For Object, pick the one you want to sync data to; Contact or Company.
For the " How should changes to the source be synced?" section
  • Select your desired Sync Behavior from Update or Create, Update Only, or Mirror
  • Pick the right mapping key, it could be Email for Contacts, Domain for Companies but we recommend you use your own internal id if possible
Finally, select the fields you want to update in the Mapper in the "Which Fields should be updated?" section
  • Here simply map the field from your HubSpot instance to the column from your model.
The end result should look something like this
Click the Next button to see the final preview which will have a recap of what will happen when you start the sync

3. Confirm the data is in HubSpot

Now go back to your HubSpot and go view a record type (Contact or Company) that should have been updated. If everything went well, you should see your data in HubSpot
That's it, in just a few steps, you've connected Census to HubSpot and started syncing data from your warehouse to HubSpot 🎉

🏎 Sync Speed

Census connects to HubSpot using their "Connected App" model, which are not subject to the daily HubSpot API call limit, only to the burst limit (100 requests/10 sec). Your Census syncs will not impact your HubSpot daily API limits or nor any other HubSpot integrations. For more information, see HubSpot docs.
The choice of your sync identifier and behavior can have very drastic** ** performance impacts to your sync.
Using a HubSpot Object ID or Contact Email as identifiers in HubSpot is fast, but using all other fields as identifiers is very slow. That means that any syncs that create new records in HubSpot (other than Contacts by Email) will be slow. We're working with HubSpot to try and increase the speed of their APIs in order to improve our HubSpot sync speed.
Public API rate limit
Records sync / Minute
HubSpot (Free & Start Plan)
600 calls / min
HubSpot (Pro & Enterprise)
900 calls / min
API Boost Add-on
1,200 calls / min
Please be aware that with Custom Objects require extra API calls and are even slower as a result (about 1/3 the speed).

🗄 Supported Objects

​Contact us if you're looking for Census to support other HubSpot objects!
Object Name
Object ID, any Text/Number
Object ID, Email, any Text/Number
Contact & Static List
Object ID, any Text/Number
Object ID, any Text/Number
Line Item
Object ID, any Text/Number
Custom Object
Object ID, any searchableProperty
Custom Behavioral Event
Unique Event ID

Custom Objects

Custom Objects are available on HubSpot Enterprise plans.
As of March 2021, only properties in the searchableProperties set are usable as sync identifiers to HubSpot Custom Objects. This is a bit confusing as this label only appears in the HubSpot API. A searchable property can be added to a Custom Object via HubSpot's API. The calls to make this update can be found in HubSpot's Custom Objects API Docs > Object Schema Tab > searchableProperties.
Additionally, HubSpot has some apps available in their marketplace like Dotsquares that can assist with Custom Object management.
If you need a hand making one of your existing Custom Object fields as searchable, please contact Census's Support team and we can walk you through it!

Managing Object Associations

HubSpot supports an advanced method of defining relationships between objects they call Associations. Associations have a number of different properties:
  • They're supported between all HubSpot object pairs, including custom objects.
  • They can represent one-to-many and many-to-many relationships.
  • Associations can be labeled or unlabeled. HubSpot Professional and Enterprise plans also support custom labels.
Many-to-many associations can be updated in Census syncs on either side of the associations, while one-to-many associations can only be set on the child or many side.

Labeled Associations

Labels in HubSpot are a bit strange and Census provides some advanced configuration to make updating and removing labels a bit more straightforward.
When creating a labeled association between two objects in HubSpot, HubSpot will also automatically create an unlabeled association. Additionally, when creating an association from a contact to a company, HubSpot will create another association labeled Primary. That means that adding a labeled association with a Census sync may actually create up to three actual associations.
Unfortunately, HubSpot does not offer a way to remove these default associations when they're no longer necessary when removing the labeled association Census created. These associations may have actually been created intentionally so Census also cannot delete them automatically.
To navigate this, Census provides an advanced configuration for HubSpot syncs: Automatically clean up orphaned default associations when removing any associations.
When this behavior is enabled and a Census sync removes a labeled association, we'll also check to see if the remaining associations are only the unlabeled and Primary labeled associations, if so, we'll automatically remove those associations as well.
By default, this feature is not enabled to avoid accidentally deleting associations that were created outside the sync and should still exist.

Custom Behavioral Events

Custom Behavioral Events require a little bit of prep work. You'll first need to jump into HubSpot and create your Custom Behavior Event (see HubSpot's instructions for how to do that).
You'll need to both create the event AND add all of the custom properties beforehand. Once you've done so, copy and paste HubSpot's internal name for object, you'll need to provide that to the Event Name property during the Census sync.
Note: The custom fields you've added will not show inside Census, you'll need to use the New Custom Field option to create the matching fields on Census, make sure they're named exactly the same (keep in mind, names are case sensitive!).

🔄 Supported Sync Behaviors

Learn more about what all of our sync behaviors on our Core Concept page.
Update or Create
All except Email
Update Only
All except Email
All except Email
​Contact us if you want Census to support more Sync Behaviors for HubSpot.

🔑 Require Permissions

Census requires that the connecting HubSpot user have Super Admin permissions in order to access all supported HubSpot objects. If you have limited permissions and still want to connect Census to HubSpot, contact the contact the Census support team.

🚑 Need help connecting to HubSpot?

​Contact us via [email protected] or start a conversation with us via the in-app chat.