There are two distinct git repositories that Hightouch communicates with. This functionality reads from a git repo to leverage your dbt models, which is entirely independent from the git repo used for Git Sync to version control your settings.
Syncing dbt models
At Hightouch, we use dbt to build most of our models for analytics and reporting. We've built a first class way to use dbt models as the source code for your Hightouch models. When your setup is complete, you'll be able to create Hightouch models with dbt models like this.

Connecting to your git repository
Navigate to your integration settings and save your git credentials. For regular username / token authentication, use your personal access token (ex: Github, Gitlab) rather than password.

If you would like to scope Hightouch's access to a specific repository, we suggest you use our Github App! Make sure you select the "Github App" authentication method.

Configuring dbt model selector
Under each source, you can enable using dbt models from your git repository in Hightouch.
The default schema is the schema where dbt would normally materialize your tables to unless otherwise specified in project file. Generally, this is something like
public
or production
or dbt_production
.
Hightouch allows you to optionally specify dbt selectors like
tag:hightouch
, but we will use *
by default and sync all dbt models to Hightouch by default.In addition, you can specify which version of dbt you would like to use. By default, Hightouch uses the most recent version available in the drop-down menu.
Hightouch will also automatically look for your
dbt_project.yml
file in the repository directory.
However, if your file is named something else like dbt_project.yaml
, or you have multiple dbt_project.yml
files, you can specify a relative path to your project file, like ./hightouch/dbt/dbt_project.yaml
.After saving your settings, it may take 1-2 minutes for Hightouch to sync your
dbt models and for the sync status to turn green.
Selecting a model
After setting up the dbt model selector, dbt models will be available in the Hightouch model creation process. Select the dbt model tab in the query explorer and view all your dbt models there!

The compiled SQL shown in the preview is only used for preview purposes. When we query the warehouse, we'll be querying the table that is built by dbt.
Versions
Hightouch supports all dbt versions >= 0.19, you can set the version in the
dbt setup page. If you need support for a version not listed, let us know!
Unsupported features
We does not currently support the following features:
- Private dependency packages
- Pre / post hooks (limited support, this may work depending on the hook)
Hightouch compiles the project using
dbt compile
to resolve the schema of your
data warehouse and to generate compiled SQL for preview purposes.
When running the model in Hightouch, we query the materialized table directly.- Connection issues with your data warehouse?
- Confusing API responses from destination systems?
- Unsupported destination objects or modes?
- Help with complex SQL queries?
Need help?
Our team is relentlessly focused on your success. We're ready to jump on a call to help unblock you.
or
Feature Requests?
If you see something that's missing from our app, let us know and we'll work with you to build it!
We want to hear your suggestions for new sources, destinations, and other features that would help you activate your data.