Jeff is a Senior Data Community Advocate at Census. He's a Modern Data Stack native, both as a builder and a practitioner. Ask Jeff for his thoughts on Redshift vs. Snowflake, but clear your calendar for the next 30 minutes.
When it comes to effective, memorable marketing, personalization is king.
We all get more and more messages from brands every day, and it’s only the most tailored and accurate outreach that we remember.
But in order to achieve gold-caliber personalization, marketing teams need fresh, accurate data. That’s where the data team comes in.
In my three-part series on HubSpot use cases, I’m breaking down how data teams can drive revenue by supporting marketing initiatives. We’re focusing on three key examples of what I call “right person, right message, and right time”:
First-party data that you’ve collected about your prospects and customers can make a big difference. The highest quality first-party data lives in your data warehouse.
The data team can make a meaningful impact on revenue by enabling marketing initiatives.
The more the data team ties itself to revenue, the easier it is to justify your company’s investment in data (and get a seat at the table)
Got it? Great - we’re ready to dive into our HubSpot, Snowflake, and Census use case.
Note: If you’re a marketer reading this who wants to build campaigns off of product usage data, send your data person this article.
Practical example: Personalizing emails with product usage data
For this use case, we’ll be acting as the data team for our fictitious example company from part one: Marker, a virtual whiteboard tool that lets users create and share canvases of their ideas with other users.
Marker has a 14-day free trial, and they want to create excitement with users who hit the end of the trial to encourage them to upgrade. To do this, they want to send each user an email summarizing all the awesome stuff they did during their trial - prompting them to upgrade to continue the momentum.
Email personalization in HubSpot can lean on three types of data points:
People (“Contacts” in Hubspot-speak), and attributes about them
Lists of people
Actions that people have taken (events)
For this use case, we’re concerned with Contacts in HubSpot, specifically Contact Properties to store data about a user’s free trial behavior.
To get users excited and feel like Marker knows them - the data has to be accurate, which means Marker must regularly sync their most accurate set of product data (in Snowflake) to HubSpot. Marker will keep properties about a user’s product usage up-to-date on a corresponding Contact record in HubSpot, so the marketing team can personalize emails with this data.
Setting up personalized emails will involve four steps:
Set up two custom properties in HubSpot on the Contact record
Create an email in HubSpot that uses a given contact’s properties in the email
Set up & create our sync in Census to supply data for these contact properties
Send highly-personalized messaging based on product usage
Let’s get into it.
Learn better by video? Here’s the full recording of how to set up this use case. 👇
Step one: Set up custom Contact Properties in HubSpot
Before touching our Snowflake data, we need to set up two custom properties on our HubSpot contacts. These two properties will house each contact’s number of canvases created and shared during the free trial.
To do so, we’ll go to Settings > Data Management > Contacts in HubSpot and click “create property”, saving properties called “Canvases Created” and “Canvases Shared”.
Step two: Create an email in HubSpot with dynamic custom properties
Now, we’ll work with our marketing team to set up an email in HubSpot that will excite users to continue their journey with Marker. We’ll have two dynamic, custom variables in the body of the email to insert a given HubSpot contact’s number of “Canvases Created” and “Canvases Shared”, the properties we created in Step One.
When we send this email to a given Contact, the Contact’s values for these two properties will be inserted in place of the variables.
Of course, these fields will need to be filled in with accurate metrics in order to motivate folks to upgrade. We’ll be populating them with data from Snowflake.
Step three: Set up & create our sync in Census
Now that we have the receiving end of HubSpot all set up - we can use Census’s Audience Hub features to sync product usage to our HubSpot contact records.
To start - we’ll connect Census to HubSpot and Snowflake, and then define our Entities. This lets us easily choose the users and events datasets we want Census to know about in Snowflake (joined by the user ID), so we can calculate “Number of Canvases Created” and “Number of Canvases Shared” in a point-and-click interface.
Note: In Census, you can also pre-model these product usage data points about a user directly in a SQL Query or data transformation (e.g. dbt model), and map this data directly to a HubSpot Contact. Audience Hub helps your less technical peers to accurately self-serve data based on data team-approved datasets like Users, Companies, and Events.
Then, we’ll create two calculated fields at the user level for the numbers of canvases created and shared. As you can see in the example below, I’m setting up a new user-level field “Number of Canvases Shared”, indicating that it should count each user's number of events with the name “share canvas” and saving.
Next - we’ll set up the sync to send this product usage data to HubSpot by going to the sync tab and selecting our users entities and telling Census to sync to the contact object in HubSpot. For this use case, we’ll just be updating, not creating net-new contacts.
We’ll then match our user data in the warehouse to HubSpot contacts based on email and map our two calculated fields to the Contact properties in HubSpot.
Now it’s time for some magic - set the sync to run.
While the sync is running, it’s a good idea to jump over to the “Configuration” tab and set up your sync schedule. We can easily set up our sync on an automatic schedule (hourly, weekly, daily, etc.), as well as create alerts to notify us if records get rejected by the HubSpot API.
Step four: Send highly-personalized messaging to all the right people 🔥
With our new sync up and running, we can check that our users’ product usage data is successfully landing in HubSpot.
When we view our Contacts page in HubSpot - we can now view how many canvases they’ve shared and created.
If we want to preview exactly how the new email will look to a specific end user (like Katlynn in the video below), we can go to the email we created in step one and preview it as our Katlynn to see her data populated into the body of the email.
This will go a long way to getting users like Katlynn excited about Marker (or any business that takes the time to personalize marketing communications to this degree). There is real revenue in driving personalization - and data people (you) are the key to making it possible.
Increase revenue with personalized emails & product data
Any company can send emails. It takes a truly data-driven one to reach the exact right person with the right message that speaks to them.
By helping your marketing team activate data in HubSpot - you’re directly impacting key business metrics by converting more users into revenue.
While the data team is a powerhouse of knowledge and insights for the business, driving revenue directly makes your work even more valuable.
So, as you walk away from this article with your newfound HubSpot knowledge, remember three things:
The data team can meaningfully impact revenue with the data already in the warehouse
Tying yourself to revenue-related activities makes it easier to justify your company’s investment in data, from people to tooling
Demonstrating the ability to impact business-level metrics elevates the data team as a strategic partner (not just a service or cost center)