Note: This feature is in beta. Beta Program participants can enable
features here. To join the Beta
Program, fill out this form. For beta questions or feedback, email
beta.admin@domo.com.
Intro
This article explains how to create a Data Model, add DataSets to the canvas, define relationships between DataSets, configure schema metadata, and use a Data Model as a data source in Analyzer.Required Grants
To create and manage Data Models, you must have an Editor or Admin role, or a custom role with access to data tools. The DataSets you want to relate must already be available in your Domo instance.Create a Data Model
-
From the navigation menu, go to Features and select Data Models under Semantic Layer.

- Select Create Model in the top menu. A new model is created, and you are taken to the Data Model Editor canvas.

- Enter a Name and an optional Description for your model.

Add DataSets to the Canvas
The Data Model Editor is a visual canvas where you add DataSets and define the relationships between them.- In the Editor, select Add DataSet.

-
Search for and select the DataSet you want to include. You can add tables from the following sources:
- Domo DataSets — any DataSet already in your Domo instance.
- Data Model outputs — tables that are outputs of other Data Models.
- Snowflake tables — tables connected directly from Snowflake.
Note: All tables in a Data Model must come from the same warehouse. You cannot mix Domo DataSets and Snowflake tables within a single model.


-
The DataSet appears as a card on the canvas, showing all of its available columns.

- Repeat to add any additional DataSets that should be part of the model.


Define Relationships Between DataSets
After your DataSets are on the canvas, connect them by dragging from a key column in one DataSet to the matching key column in another.- Hover over the join key column in one DataSet.
- Drag from that column to the corresponding key column in the related DataSet. A relationship line appears connecting the two tables.
-
Select the relationship line to review or edit its settings:
- Relationship Keys — the columns on each side of the join (for example,
Account UIDon the Accounts table joined toAccount UIDon the Orders table). - Cardinality — the nature of the relationship between the two tables:
- One-to-Many — one record in the first table relates to many records in the second (for example, one Account can have many Orders).
- Many-to-One — many records in the first table relate to one record in the second.
- One-to-One — each record in the first table relates to exactly one record in the second.
- Relationship Keys — the columns on each side of the join (for example,
Note: You can relate DataSets from disparate source systems through shared keys in a single model. There is no need for a separate DataFlow per combination.
- Preview table data and search for columns by selecting a table in the canvas.
-
Select Save Model to preserve your relationship configuration. The following actions are available:
- Save Model — saves your configuration without exiting the Editor canvas.
- Save and Close — saves your configuration and exits the Editor canvas.
- Save As — makes a copy of your model.

Delete Relationships and Objects
To delete all relationships for a table:- Select the three-dot menu in the top-right corner of a table, then select Break All Relationships.

- Select Delete to confirm, or Cancel to cancel.
- Select the table.
- Navigate to the Relationships tab in the preview modal.
- Select the relationship you want to delete.
- Select Delete Relationship.
- Select Delete to confirm, or Cancel to cancel.

View the Data Model Landing Page
Each Data Model has a landing page. The landing page displays the model’s name, description, and model’s attributes such as author,last updated timestamp.
- Edit Data Model — opens the Data Model Editor canvas.
- Explore — opens the model in a Worksheet for ad-hoc data exploration.
- Open With > Analyzer — opens the model in Analyzer.
- Create Visualization — creates a visualization card based on the model.
- Create App — creates an App Studio app using the model.
- Share This Dataset — shares the model with other users.
- Add to Workspace — adds the model to a Workspace.

Configure the Domo Schema
The Domo Schema lets you enrich each field in your Data Model with metadata. This helps downstream users understand the data and improves the accuracy of AI-assisted features.- Open your Data Model and select the Schema tab.

-
For each dataset and column, you can set the following:
- Reorder — control how columns appear in the dataset schema.
- Description — document what the field represents.
- More Options — additional configuration options for each field.
- Tags — help users search and discover fields.
- AI Enabled — enable columns to be discovered by Domo AI.
- Add AI Synonyms and AI Context to improve how Domo AI interprets natural language queries against this model.


- Select Save after making your changes.
Use a Data Model in Analyzer
After a Data Model is created, it is available as a data source in Analyzer—just like any standard DataSet. Columns from all related tables appear together with no additional joining required.- Navigate to the dashboard where you want to build a new card.
- Select New Card and select Visualization.
- In the DataSet picker, search for your Data Model by name and select it.
- Build your card normally. All columns from the model’s related DataSets are available in a single view.
Note: Because joins happen at query time, card performance may vary depending on the size of the underlying DataSets and the complexity of the relationships in the model.
Troubleshoot
My card in Analyzer is returning unexpected or duplicate rows.
My card in Analyzer is returning unexpected or duplicate rows.
Review the cardinality settings on your relationship lines in the Editor. A one-to-many or many-to-many relationship can produce multiple rows if the join key is not unique. Verify that the correct key columns are selected on both sides of the relationship.
Schema tab changes are not showing in existing cards.
Schema tab changes are not showing in existing cards.
Schema metadata updates—descriptions, tags, and AI fields—may require a card refresh or re-open to reflect. The underlying data is not affected by Schema tab changes.
I can't find my Snowflake table when adding DataSets.
I can't find my Snowflake table when adding DataSets.
Confirm that your Snowflake Cloud Integration is connected and authenticated in your Domo instance. Snowflake tables are available in the DataSet picker only after a successful connection is established.