Search documentation...

ChangelogBook a demoSign up

Model configuration

Identity resolution is only available on Business tier plans. You can use it with or without Customer Studio.

To set up identity resolution rules, you must first configure your input models. Then, you can define match rules.

This page goes through model configuration steps.

Model selection

Hightouch supports two types of models:

  1. Profile models
  2. Event models

Profile models represent a User, for example users, contacts, or people. When configuring your profile models, you need to select a column to sort the models table. This column could be a date, for example created_at, or an id like user_id

Event models are for timestamp ordered events, for example transactions or clicks.

You may use as many models as required in your identity graph, and depending on your use case, you may need a combination of profile and event models.

For example, you may use a users table, a Salesforce contacts table, a transactions table of events and a table of "identify" events.

Model order columns

You'll notice that both model types require you to select a column to determine the ordering of rows in the model.

For profile models, the order by column is used when you have limit rules configured.

For example, if you configure a limit rule to prevent merging more than 10 different user_id identifiers into a single record, the order of your profile model is used to determine which 10 users are merged.

This is, the first 10 users are merged and the subsequent users aren't.

Event models are similar, but the order column is also used for incremental processing. Hightouch will only pull in new events on subsequent runs to prevent re-processing rows that have already been processed. This significantly improves performance of the identity resolution process and reduces cost on your warehouse.

Identifier selection

After you select your model, you need to configure which identifiers are present on this model. You can choose from some defaults, or you can create your own by typing anything into the identifier text box.

Custom identifier

You must map the identifier to a column in one or more models to use it in a merge or limit rule.


The order in which you sequence your models may be important. For example, if you have a limit rule that prevents more than 3 users merging together, Hightouch merges the first two users based on the sequence provided here. More users won't merge in to the same record.

If you don't have any limit rules, then the sequence doesn't have any impact on your identity graph.

Sequence vs model order

Models are ordered via the model sequence and rows ordered within models based on the model order by column.

Hightouch imposes a "total ordering" on all rows in the identity resolution process by using the model order, then the order by column within each model.

Based on the data and limit rules you configure, rows of higher priority models may merge together while rows of lower priority models may not be.

Ready to get started?

Jump right in or a book a demo. Your first destination is always free.

Book a demoSign upBook a demo

Need help?

Our team is relentlessly focused on your success. Don't hesitate to reach out!

Feature requests?

We'd love to hear your suggestions for integrations and other features.

Last updated: Jul 11, 2023

On this page

Model selectionModel order columnsIdentifier selectionSequencingSequence vs model order

Was this page helpful?