> For the complete documentation index, see [llms.txt](https://docs.jetadmin.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.jetadmin.io/user-guide/synced-tables.md).

# Synced tables

Bring a table from another database and keep it up to date automatically. One source of truth, used in as many Jet Databases as you need.

Bring a table from another database into Jet Databases and keep it up to date automatically. The original database remains the source of truth, so you can reuse its data across Jet Databases without maintaining separate copies by hand.

{% embed url="<https://www.youtube.com/watch?v=l1jrrwlj0eU&list=PLSkzi9eq0vBnUGMnwXrRRVo9TXUjZ7uSj&index=25&ab_channel=JetAdmin>" %}

## How synced tables work

A **sync connection** brings data from a supported source into Jet Databases. Jet Admin refreshes the synced data from the source, and your app uses that data to display records and run queries.

A **direct connection** accesses the source directly. To join data through synced tables, connect each source using a sync connection.

{% hint style="info" %}
Sync connections are available for a limited number of integrations. Check the connection options for your data source. If sync is unavailable, contact support to request it.
{% endhint %}

## Connect a source

When adding a supported data source, choose **Sync connection**. Follow the setup guide to connect the source and sync its structure.

{% content-ref url="/pages/bbS1W7bYiZf17RHRb1qb" %}
[Create a sync connection](/user-guide/synced-tables/create-a-sync-connection.md)
{% endcontent-ref %}

## Keep tables up to date

Updates from the source arrive on the external sync schedule. Updates between Jet Databases and the app interface happen in real time.

Open **Sync options** from the three-dot menu on your data source page to check the sync status and last sync time. You can pause syncing, run **Sync now**, and view sync events.

To change the external sync interval, contact Jet Admin support.

{% content-ref url="/pages/iti3224FBjxs3r8qB24T" %}
[Refresh data and manage sync](/user-guide/synced-tables/refresh-data-and-manage-sync.md)
{% endcontent-ref %}

## Join data from synced tables

Once your sources are synced, you can combine their data using SQL, including data from supported non-SQL sources. Create a **Virtual Collection** to define the query and use its results in your app.

For example, sync an `Orders` table from Airtable and a `Customers` table from Google Sheets. Join `Orders.Customer ID` to `Customers.ID` to display each order alongside the customer’s name and country.

{% content-ref url="/pages/4sDiPhQCHqPVL6EG31ls" %}
[Join data from multiple sources](/user-guide/synced-tables/join-data-from-multiple-sources.md)
{% endcontent-ref %}

{% hint style="warning" %}
A Virtual Collection is a read-only query result. It supports SELECT queries; it does not write changes back to the original sources. Syncing a source table and joining synced tables are separate operations.
{% endhint %}

## Follow the setup sequence

1. [Create a sync connection](/user-guide/synced-tables/create-a-sync-connection.md).
2. [Sync schema changes](/user-guide/synced-tables/sync-schema-changes.md) when source tables or fields change.
3. [Refresh data and manage sync](/user-guide/synced-tables/refresh-data-and-manage-sync.md).
4. [Join data from multiple sources](/user-guide/synced-tables/join-data-from-multiple-sources.md).
5. [Troubleshoot syncing](/user-guide/synced-tables/troubleshoot-syncing.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.jetadmin.io/user-guide/synced-tables.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
