> ## Documentation Index
> Fetch the complete documentation index at: https://docs.omni.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Cross model tabs

> Query a different shared model from a tab in your workbook, and build dashboards that span multiple models and connections.

<Note>
  Cross model tabs are currently in beta and enabled on request. To try them, contact Omni support through your usual support channel, or email [support@omni.co](mailto:support@omni.co).
</Note>

A cross model tab is a workbook tab that queries a different [shared model](/modeling) than the rest of the workbook. Add one when the answer you need lives in another model — often on another database connection — and you want it alongside the work you're already doing.

Because each tab carries its own model, a single dashboard can present tiles from several models and connections at once.

## Requirements

To create a cross model tab, you'll need:

* Cross model tabs enabled for your organization
* Permission to edit the workbook
* **Restricted Querier**, **Querier**, **Modeler**, or **Connection Admin** [permissions](/administration/users/permissions) on the connection of the model you want to query

## Create a cross model tab

You can create a cross model tab two ways. Both open the same list of models, grouped by connection when more than one is available.

### Switch model from a new workbook tab

<Steps>
  <Step noAnchor>
    Click **+** to add a tab.
  </Step>

  <Step noAnchor>
    Click **Switch model**, then select the model you want to query.
  </Step>

  <Step noAnchor>
    Choose a starting point — a topic or view from that model — the same way you would on any new tab.
  </Step>
</Steps>

While the tab is still empty, **Switch model** stays available. Use it to try a different model, or to return the tab to your workbook's own model by selecting the entry marked **(default)**. Choosing a starting point makes the tab a cross model tab, and **Switch model** no longer applies.

### Add a new tab from the Edit menu

When you're already working in a tab and want data from another model alongside it, add a cross model tab without leaving what you're doing.

<Steps>
  <Step noAnchor>
    In your workbook, click **Edit > New cross model tab**.
  </Step>

  <Step noAnchor>
    Select the model you want to query. Omni adds a new tab pointed at that model.
  </Step>

  <Step noAnchor>
    Choose a starting point from that model.
  </Step>
</Steps>

Once a tab is pointed at another model, the field browser shows a **Cross model** label naming that model, and the starting points, topics, views, and fields all come from it.

## Work in a cross model tab

A cross model tab behaves like any other query tab. You can:

* Build queries point-and-click, run them, and visualize the results
* Save the tab to a dashboard alongside tiles from your workbook's own model
* Duplicate, rename, and reorder the tab
* Create a linked tab from it
* Preview a view from the model it queries
* Ask the [workbook agent](/ai/queries) questions — it answers from the model the tab queries

Cross model tabs support point-and-click queries. SQL, blank table, and spreadsheet tabs use your workbook's own model, so create those on a regular tab.

## Add fields

You can create fields on a cross model tab:

* [Custom fields](/analyze-explore/custom-fields) and [calculations](/analyze-explore/calculations)
* Bins, groups, and level of detail calculations
* A duplicate of an existing field

These land in the tab as **Tab-only fields**, and you can edit them in place.

The fields that come from the model itself stay as that model defines them. Select **View field definition** on any of them to see how it's built, or **Go to definition** to open it in that model's IDE, where it can be edited and shared with everyone using it.

## Use cross model tiles on a dashboard

Save the workbook as usual. Each tab becomes a dashboard tile, regardless of which model it queries.

### Filters

A dashboard filter applies to a cross model tile once you map it. Open the filter's settings and choose the field on that tile to map to — see [mapping filters to tiles](/visualize-present/dashboards/filters#mapping). Explicit mapping keeps a filter built for one model from landing on a field it wasn't meant for.

### Dashboard agent

The [dashboard agent](/ai/chat) works across a mixed dashboard, querying each tile against that tile's own model.

### Scheduled deliveries and downloads

Deliveries and downloads include cross model tiles. Each tile is checked against its own model for the person the delivery runs as, so a delivery sends the tiles that person can query.

## Preview branch changes from another model

A cross model tab follows your own branch on the model it queries, so you can preview in-progress changes to that model from inside your workbook. The branch picker follows whichever tab you have open, and switching branches there leaves your workbook's own branch untouched.

Your branch selection is part of your session rather than part of the saved document. Two people opening the same dashboard see it through their own branch selections, so publish model changes to the shared model when everyone should see the same result. See [Branch Mode](/content/develop/branch-mode).

## Limitations

* **Embedded Omni.** Cross model tabs aren't supported in embedded workbooks, which continue to use a single model.
* **Cross model analysis.** Filtering one tab by another tab's query and [`XLOOKUP`](/analyze-explore/calculations/position#xlookup) aren't available on a cross model tab.
* **Promoting fields.** Fields you add stay in the tab. To share a field with other users, add it in that model's IDE.

<Tip>
  Tell us which of these matters most for your use case — through your usual support channel, or at [support@omni.co](mailto:support@omni.co). That feedback shapes what we build next.
</Tip>

## Troubleshooting

<AccordionGroup>
  <Accordion title="A model you expect isn't in the list">
    The list shows models you can build workbooks on, minus the one your workbook already uses. If a model is missing, ask your admin for access to it — see [permissions](/administration/users/permissions).
  </Accordion>

  <Accordion title="A tile shows an access error on a dashboard">
    Access is checked per tile against the model that tile queries. Someone viewing the dashboard needs access to every model on it to see every tile; the tiles they can access still load.
  </Accordion>

  <Accordion title="A tile is empty in a delivered dashboard">
    Access is checked per tile for the person the delivery runs as. If that person can't query one of the models, the rest of the dashboard still delivers.
  </Accordion>

  <Accordion title="A filter isn't affecting a cross model tile">
    Map the filter to a field on that tile. See [mapping filters to tiles](/visualize-present/dashboards/filters#mapping).
  </Accordion>

  <Accordion title="The model list looks out of date">
    The list is loaded once per session. Refresh the page after your model access changes.
  </Accordion>
</AccordionGroup>

## Next steps

* Build queries with [point-and-click](/analyze-explore/point-click-queries) or [topics](/analyze-explore/queries/topics)
* [Map dashboard filters](/visualize-present/dashboards/filters) to your cross model tiles
* Preview model changes with [Branch Mode](/content/develop/branch-mode)
