Search documentation...


Creating Models

Navigate to the Models page and get started by choosing a Source. Next, choose one of our modeling methods. Check out our docs to learn more about building Hightouch models using existing dbt models or existing Looks. In this section, we will cover our SQL Editor and Table Selector methods.

Query with SQL Editor

With the SQL Editor modeling method, you can use the SQL Editor to create a new query and establish your model. The SQL Editor can execute whatever SQL is native to the warehouse or database that you are using.

Your query will depend on the data in your model. If you are using the Sample B2B SaaS Source, you can try:

SELECT * FROM public.users

Click Preview to see a preview of the data. By default, we limit the preview to the first 100 rows.

Next, click Continue and give the model a name. You will also need to pick the primary key for this table, usually id.

Note: It is not possible to save a model if the query does not return any results. If you need to save a model with a query because you expect there to be results in the future even if there are none now, try adding the following SQL to the end of your query. This SQL will add a row of 'ignore' values which will not match against anything in your destination but will always be present so you can save the query.

select 'ignore', 'ignore', 'ignore'

Table Selector

With the Table Selector modeling method, you can build Hightouch models using existing tables or views within your Source without writing any SQL.

The first time you use the Table Selector you may not see your tables populated. Click on the refresh button to the left of the search bar and your tables should appear.

Get started by selecting the table or view that you would like to use as your model. Next, click Preview to see a preview of the first 100 rows of the table.

After selecting your table or view, click Continue and give the model a name. You will also need to pick the primary for this table, usually id, before clicking Finish.

When using the SQL Editor or the Table Selector, each model needs a unique identifier. Hightouch uses this identifier to compare subsequent runs to only change rows where a value has changed for that particular entry.

    Need help?

    Our team is relentlessly focused on your success. We're ready to jump on a call to help unblock you.

    • Connection issues with your data warehouse?
    • Confusing API responses from destination systems?
    • Unsupported destination objects or modes?
    • Help with complex SQL queries?

    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.

On this page

Query with SQL EditorTable Selector

Was this page helpful?