Skip to main content
Log in


How to send data from Snowflake to Hubspot

Learn how you can move data from Snowflake to Hubspot in 6 easy steps

Luke Kline.

Luke Kline

February 4, 2022

6 minutes

How to send data from Snowflake to Hubspot.

If you are using Hubspot as your CRM, then every interaction with your customers or prospects is captured directly within the platform. In most cases, Hubspot acts as a sales platform and an inbound marketing platform. Chances are you are probably even using Hubspot for content management and marketing automation. You might even be using it for some email marketing and social media marketing.

The problem is, Hubspot only shows one view of your customers and prospects. To truly target your highest value leads and create a good customer experience, your sales teams and marketing teams need to enrich this data with additional information that only exists in your warehouse, Snowflake.

As the analytics platform for all of your data, Snowflake already has a complete 360-degree view of customers. After all, this is where you build all of your unique data models, capture your product usage data, store your event data, and perform business intelligence.

  • Data models: (customer health score, product qualified lead, LTV, ARR, etc.)
  • Product usage data: (new integrations, new users, workspaces created, last login date, etc.)
  • Event data: (items in cart, shopping cart abandonment, pages viewed, session length, etc.)

On top of this, you are probably even already storing your Hubspot data in your Snowflake environment, so the question is: how can you sync your Snowflake data to Hubspot? Generally, this can be quite challenging, but luckily you have a wide range of options.

Option 1: Manual CSV FIles

One of the easiest ways to move data from Snowflake to Hubspot is to simply download a specific data set as a CSV file and then upload that file directly to Hubspot. Generally, this only takes a few minutes and is relatively easy to do. There are a couple of challenges to this approach though. Firstly, you have to ensure that your file has the proper columns/rows before uploading it to Hubspot, otherwise, you risk ruining the data that already exists in Hubspot (the last thing you want to do is accidentally mess up the sales pipeline).

As you're probably already aware, there is no rollback or undo button in Hubspot. On top of this, data stored in a CSV file becomes stale really quickly. Generally, your business teams need to act on fresh data in order to be effective. Going this route also means that your engineering team will be fulfilling constant ad-hoc data requests.

Option 2: Custom Integrations

Building a custom integration directly to Hubspot is one way to address manual CSV downloads/uploads. However, building a custom data pipeline directly to Hubspot can pose equal challenges. Firstly, Snowflake and Hubspot are constantly changing and updating their APIs.

On top of this, building and maintaining an entirely new data pipeline for Hubspot can be extremely time-consuming to build and this is not even accounting for the maintenance involved with keeping it up and running. If you have a relatively small amount of data this could be doable, but scaling this approach and building more data pipelines for additional SaaS applications in the future is nearly impossible.

Option 3: iPaaS (Integration Platform as a Service)

If you have a relatively simple use case an iPaaS solution like Tray or Workato could suit your needs for sending data from Snowflake to Hubspot. These types of tools provide you with a platform where you can build low-code intuitive workflows. You can use these workflows to move data from one system to another.

Generally, iPaaS tools are designed to be a one-size-fits-all solution and you can easily find yourself neck-deep in complex if/then statements and numerous dependencies within each individual step. In most cases, iPaaS solutions are best suited for automating tasks and business processes rather than moving complex data from one system to another.

Option 4: CDPs (Customer Data Platform)

CDPs are probably the most well-known and popular solution for moving data from one system to another. CDPs help you consolidate all of your customer data into a centralized location and let you push it out to nearly any destination of your choosing. CDPs take an extremely long time to implement because they typically come with long and drawn-out sales cycles.

On top of this, CDPs don’t necessarily play nicely with your current technologies. To be specific, CDPs simply create a second source of truth. They are also extremely rigid and in many cases they only let you map columns/rows based on users and accounts, which makes it really difficult to leverage your own unique custom objects or data models. In addition to this, you don’t own the data since it is no longer in your own cloud environment.

Option 5: Reverse ETL (Hightouch)

Reverse ETL works completely differently from all of the other options because you can use the power of Snowflake to move data directly to Hubspot. Reverse ETL tools like Hightouch integrate with your current technology stack, providing built-out integrations to let you sync data from Snowflake to Hubspot in real-time.

All you have to do is define your data using SQL or your own existing data models. Better yet, Hightouch doesn’t actually store any of your data, so you never have to worry about compliance issues. Getting started with Reverse ETL is extremely simple if you follow these steps.

Step 1: Connect to Your Data Source

Data Source.png

Step 2: Connect Hightouch to Your Destination


Step 3: Create a data model or leverage an existing one

You can use SQL to define your data directly in the Hightouch UI or even leverage your existing data models.

Data Model.png

Step 4: Choose Your Primary Key

With Hightouch you can map on any unique key, not just users and accounts.

primary key.png

Step 5: Create Your Sync

Once you have created your sync, you simply have to choose the appropriate columns and map them to the fields in your end destination.

column mappings.png

Step 6: Schedule Your Sync

Once your sync is created you can run it manually, define a set interval, or schedule it to run after a dbt job is completed.


The first integration with Hightouch is completely free so you can actually get started today. If you want to learn more about Reverse ETL, download our guide.

More on the blog

  • What is Reverse ETL? The Definitive Guide .

    What is Reverse ETL? The Definitive Guide

    Learn everything there is to know about Reverse ETL, how it fits into the modern data stack, and why it's different than ETL.

  • The CDP As We Know It Is Dead: Introducing the Composable CDP.

    The CDP As We Know It Is Dead: Introducing the Composable CDP

    Learn why CDPs are dead and how you can take advantage of the data warehouse.

  • What is Data Activation?.

    What is Data Activation?

    Learn everything to know about Data Activation, what it is, why it matters, and how you can get started activating your data today.

Table of contents

Option 1: Manual CSV FIlesOption 2: Custom IntegrationsOption 3: iPaaS (Integration Platform as a Service)Option 4: CDPs (Customer Data Platform)Option 5: Reverse ETL (Hightouch)


Sign up for our newsletter

Ready to activate your data?

Get startedBook a demo