Sync data from
Snowflake to Iterable
Connect your data from Snowflake to Iterable with Hightouch. No APIs, no months-long implementations, and no CSV files. Just your data synced forever.
Trusted by data teams at
Trusted by data teams at







Integrate your data in 3 easy steps
01
Add your source and destination
Connect to 15+ data sources, like Snowflake, and 150+ destinations, like Iterable.
Connect
Log in
02
Define your model
Use SQL or select an existing dbt or Looker model.
03
Sync your data
Define how fields from your model map to Iterable, and start syncing.
email
email
name
name
total_orders
all_orders
last_login
last_login
Model your Snowflake data using any of these methods
dbt Model Selector
Sync directly with your dbt models saved in a git.
Looker
Query using looks. Hightouch turns your look into SQL and will pull from your source.
SQL Editor
Create and Edit SQL from your browser. Hightouch supports SQL native to Snowflake.
Table Selector
Select available tables and sheets from Snowflake and sync using existing views without having to write SQL.
Customer Studio
For less technical users, pass traits and audiences from Snowflake using our visual segmentation builder.
Where can you sync your Snowflake data in Iterable
Users
Every email address you have in Iterable is a user or subscriber/contact. You can use Hightouch to update user information or delete, forget, or unforget users.
Events
An event is an action a user takes on your website or app. They are specific to your business. Use Hightouch to send shopping cart, purchase, or custom events to Iterable.
Catalogs
When sending messages to your users, it's almost always necessary to include information about your organization's products, places, events, or services. Use Hightouch to send this information directly to Iterable.
Segments
Iterable's segmentation tool allows you to segment across all of your subscribers and to make static or dynamic lists. Use Hightouch to add users to lists to create highly targeted customer segments, so you can deliver the most relevant marketing messages.
Does this integration support in-warehouse planning?
Yes, if you integerate Snowflake and Iterable using Hightouch, in-warehouse planning is supported.
Great, but what is in-warehouse planning?
Between every sync, Hightouch notices any and all changes in your data model. This allows you to only send updated results to your destination (in this case Iterable). With the baseline setup, Hightouch picks out only the rows that need to be synced by querying every row in your data model before diffing using Hightouch’s infrastructure.
The issue here is this can be slow for large models.
Warehouse Planning allows Hightouch to do this diff directly in your warehouse. Read more on how this works here.
Why is it valuable to sync Snowflake data to Iterable?
Lifecycle marketing platforms like Iterable are built on omnichannel experiences and multiple touch points. They allow marketers to experiment and iterate at a moment's notice. However, to build personalized experiences for your customers, you first need access to the rich behavioral data in your data warehouse.
This might include data models built around unique objects in your business like workspaces, subscriptions, playlists, or even custom audiences your data team has defined based on core metrics like items in cart, pages viewed, average order value, time spent in-app, etc.
To truly convert new users and retain existing customers, you need to build customized experiences that feel unique to each user. Usually, this includes sending custom emails, SMS messages, push notifications, or even web notifications.
For example, if you want to encourage users who abandoned their shopping cart in the last seven days to complete their purchase, you might want to send an email letting them know your stock is running low. Maybe you want to target new users with a special offer through an in-app/on-browser notification, or perhaps you simply want to send an SMS notifying your customers that their order has shipped.
Either way, the only complete 360-degree view of your customer lives in your warehouse. Your lifecycle marketing tool is only as good as the data you give it. If you want to offer the best possible experience to your customers, you need to take advantage of the data in your warehouse.
Why should you use reverse ETL to connect Snowflake and Iterable data?
Whenever your marketing team wants to launch a new campaign, the typical process is to request a specific data set from your data team (e.g., can you give a list of every user who's visited our pricing page over the last seven days?) One-off requests like these are frequent, and each one pulls away from high-value work your data team could be doing.
To facilitate this, your data engineers must download ad-hoc CSV files so your marketing team can upload that data into Iterable. Alternatively, your data team might build and maintain custom pipelines to consistently ingest that data into Iterable. The problem is CSV files aren't fresh, and data pipelines are prone to failure because integrating with third-party APIs is hard.
Ultimately, your marketers want to self-serve, and that's only possible with Reverse ETL. With Hightouch, you can leverage your existing data models (e.g., lifetime value, last-login date, workspaces, annual recurring revenue, etc.) in your warehouse and sync that data directly to fields in Iterable. You can schedule your syncs to run sequentially or define a set cadence (e.g., running your syncs while your marketing campaign is in progress.)
Hightouch has a visual audience builder so your marketers can self-serve and build custom audiences using the parameters your data team has set. If any of your rows fail, Hightouch will automatically retry them later in the next sync. You can easily view all of your API payload requests/responses in a live debugger, and your sync logs can be written back directly to Snowflake. Ultimately your lifecycle marketing tool is only as good as the data you give it.
How to integrate Snowflake and Iterable
If Snowflake is your source of truth for your business, why would you not want all of that data in Iterable where your marketing team is creating messages to send to your customers? It makes sense on paper, but sending Snowflake data to Iterable can be challenging and complicated. Don't worry, this is our specialty. We've outlined the 5 main options to integrate and move data between Snowflake and Iterable (or any other SaaS tool).
Option 1: Reverse ETL with Hightouch
For fully automated data syncs from Snowflake to Iterable, Reverse ETL is the best option because it's not only the easiest to set up, it's also the easiest to use, monitor, and train new employees on. Instead of dealing with manual CSV files, third-party APIs, or custom code, Reverse ETL syncs data directly from your warehouse to your operational tools like Iterable.
The other great benefit of reverse etl is that Hightouch never stores your data. If you go with a CDP, like Segment, you are paying to have your data stored in Snowflake and then again in Segment. This also creates multiple sources of truth — thus a headache for everyone involved. Hightouch is a SaaS platform, which means you don't have to install anything locally on your computer. Also, your first destination with Hightouch is free, so this is also the most economical option.
With Hightouch, you can leverage all of your existing Snowflake tables and data models and sync that data directly to over 125 different destinations. You can run your data syncs manually or schedule them on a set cadence that you define (e.g., after your transformation jobs finish running in Snowflake.) 90% of all Hightouch syncs finish within 30 seconds, and this includes millions of records. There’s even a visual audience builder for non-technical users.
We've outlined the 5 easiest options you have to activate your Snowflake data and get it into Iterable for targeting, suppression, and conversion tracking.
Step 1: Connect to Your Data Source

Step 2: Connect Hightouch to Iterable

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.


Step 4: Choose Your Primary Key
With Hightouch you can map on any unique key, not just users and accounts.

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.

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.
Option 2: Manual CSV Files
The easiest way to move data from Snowflake to Iterable is to simply download a manual CSV file. This poses two main challenges though. Firstly, it’s not a one-time data pull. Your data team has to download a new data set every time your marketing team wants to target a different audience or run a different experiment.
On top of this, data stored in a CSV file becomes stale and unusable really quickly. In almost every scenario your marketing team wants the real-time data or the closest thing to it, so they can iterate at a moment’s notice and make better business decisions. When your engineering team is forced to fulfill constant Adhoc requests it pulls away from the jobs they should actually be doing.
Option 3: Custom Integrations
In most cases moving data from Snowflake to Iterable requires you to build a custom in-house data pipeline. Like with any SaaS platform, the APIs for Snowflake and Iterable are constantly changing, so maintaining a homegrown data integration pipeline can be quite challenging, and even getting a modern data pipeline up and running takes a substantial amount of time and resources.
Depending on the size of your organization, this could be doable, but maintaining this at any sort of scale quickly becomes an impossible feat, especially if you need to build more pipelines to additional platforms in the future (ex: Tiktok, Facebook, Twitter, Salesforce, Amplitude, etc.).
Option 4: iPaaS (Integration Platform as a Service)
Another way to move data from Snowflake to Iterable is through the usage of iPaaS solutions. Tools like Workato and Tray provide you with a relatively simple platform where you can build custom workflows to move data from one tool to another.
The problem is, these tools are really designed to handle simple use cases and automate repetitive tasks, so if you go beyond simple use cases, you will be stuck building complicated workflows with numerous if/then branches, all with various dependencies within each step.
Option 5: CDPs (Customer Data Platform)
CDPs do a decent job at moving your data from point “A” to “B” because they are marketing platforms that consolidate all of your customer data into a centralized platform, where that same data can be ingested in various other tools like Iterable. There is a problem though, CDPs don’t necessarily play nicely with your existing technology stack and create another source of truth.
Additionally, CDPs own your data since it is no longer in your own cloud environment. Figuring out how to move your data into a CDP can be equally as challenging as building an in-house data pipeline. In addition to this, the typical implementation time for a CDP can take well over a year.
Sync data about users and accounts into Iterable to build hyper-personalized campaigns
Automatically update your Iterable segments with fresh data from your warehouse
Deliver better experiences by bringing in data from other customer touchpoints into Iterable
Monitor campaign revenue from purchases or cart-additions
Why sync data from
Snowflake to Iterable?
Marketing automation tools, like Iterable, are only as valuable as the data you pass to them. In order to truly personalize workflows and emails, you need to first populate the user profile with the most relevant traits and audiences and populate your catalog with your up-to-date product information. To do this, you need to have a source of truth. Snowflake is that source of truth. With Hightouch, you can sync your data directly from Snowflake to Iterable without the intermediaries, data silos, and multiple sources of truth.
About Snowflake
Snowflake is a managed cloud data warehouse that helps you consolidate and aggregate your data into a single, centralized platform to tackle analytics use cases. These workloads include data warehousing, data lakes, data engineering, application development, data sharing, and business intelligence.
Learn more about SnowflakeAbout Iterable
Iterable is an integrated, cross-channel platform—built for marketers, trusted by engineers, designed with intelligence.
Learn more about IterableOther Snowflake Integrations
Other Iterable integrations
Hightouch Playbooks: Best practices to leverage reverse ETL
Read more about Iterable
Read more about Hightouch
What is Operational Analytics & Why You Should Use It
Operational Analytics shifts the focus from simply understanding data to taking action on it in the tools that run business processes. Instead of using dashboards to make decisions, Operational Analytics is focused on turning insights into action – automatically.
Read
This might be one of the greatest inventions for technical marketers since the advent of legacy CDPs back in 2015.
Austin Hay
Head of Marketing Technology
•
Ramp
Your data is always secure
SOC 2 Type 2 compliant
Your data stays secure, available, and confidential. To see our report, .
GDPR compliant
If you’re in the EU, your data is only processed on EU data centers.
HIPAA compliant
Healthcare companies like ThirtyMadison, Chapter Health, and Headway trust Hightouch.
CCPA compliant
To see our DPA (Data Processing Addendum), .
52%
increase in return on ad spend
20%
improvement in email engagement
60%
lift in customer acquisition