# Syncing

Noloco offers two robust methods for syncing data from external sources to your custom applications: **Scheduled Syncing** and **Live Syncing**. Understanding how these processes work can help you maximize the efficiency and reliability of your data flow, ensuring your application always reflects the most current information in your data source.

| Data Source   | Live Syncing | Scheduled Syncing |
| ------------- | :----------: | :---------------: |
| Airtable      |       ✅      |                   |
| Google Sheets |              |         ✅         |
| Hubspot       |       ✅      |                   |
| MySQL         |              |         ✅         |
| PostgreSQL    |              |         ✅         |
| REST APIs     |              |         ✅         |
| SmartSuite    |       ✅      |                   |
| Stripe        |       ✅      |                   |
| Xano          |              |         ✅         |

## Scheduled Syncing

Scheduled syncing is enabled for data sources that require regular data updates;

* [Google Sheets](https://guides.noloco.io/data/google-sheets)
* [MySQL](https://guides.noloco.io/data/mysql)
* [PostgreSQL](https://guides.noloco.io/data/postgresql)
* [API Collections](https://guides.noloco.io/data/rest-apis)
* [Xano](https://guides.noloco.io/data/xano)

### How Scheduled Syncing Works

* **Frequency**: The frequency of scheduled syncing depends on your [Noloco subscription plan](https://guides.noloco.io/account/pricing#understanding-database-records-limits). Each plan offers different syncing intervals (priority or standard), allowing you to choose one that best fits your business needs.
* **Process**: On the set schedule, Noloco reads all of the data in your external data source. It checks for any new or updated data since the last sync. This includes additions, deletions, or modifications to the records in your tables.
* **Application Update**: Once the syncing process is complete, the changes are reflected in your Noloco application, ensuring your data remains current up to the latest sync. You can verify exactly which fields changed during a sync using [Record History](https://guides.noloco.io/data-management/record-history).

## Live Syncing

For businesses requiring their applications to reflect data changes almost instantly, live syncing is the ideal solution. This method is supported exclusively for [Airtable](https://guides.noloco.io/data/airtable) and [SmartSuite](https://guides.noloco.io/data/smartsuite), and [Stripe](https://guides.noloco.io/data/stripe) data sources with limited support for [Hubspot](https://guides.noloco.io/data/hubspot) too

### How Live Syncing Works

* **Real-time Updates**: Unlike scheduled syncing, live syncing listens for changes in your external data source in real-time. When a change occurs, it's immediately communicated to Noloco and reflected in your application.
* **Setup**: Live syncing is enabled by default for Airtable and SmartSuite, providing an effortless setup for instant data updates.

## Schema Syncing

In addition to syncing data content, Noloco also periodically syncs the schema (structure) of your external data sources. This ensures that any changes to the tables or fields in those tables are accurately reflected in your Noloco application.

* **Periodic Checks**: Noloco periodically reviews the schema of your connected external data sources for any changes every few minutes.
* **Automatic Updates**: If a change is detected, Noloco automatically updates your application to align with the new schema, ensuring structural consistency.

### Updating or creating data in Noloco

When you make changes to any data source in your Noloco app, or through our [Make](https://guides.noloco.io/integrations/make) or [Zapier](https://guides.noloco.io/integrations/zapier) integration or through the [API](https://guides.noloco.io/api-documentation/api-overview) the data will **instantly** be updated in your external data source too.

For example, if you use Airtable as an external data source and create a new record in your Noloco app, that record will be instantly created in Airtable and stored in Noloco.

## Manual Syncing

Despite the efficiency of scheduled and live syncing, there might be instances where an immediate update is necessary, or an inconsistency arises.

* **Immediate Action**: In such cases, Noloco allows for manual syncing. Users can initiate a manual sync for a specific table or the entire data source directly from the data table in their application.
* **Problem Resolution**: This feature is particularly useful for quickly resolving any discrepancies or ensuring data is up-to-date following unforeseen changes.

### How do I manually sync a table?

{% @arcade/embed url="<https://noloco.share.arcade.software/share/H5xGFiyzlaeZF4jjsw1B>" flowId="H5xGFiyzlaeZF4jjsw1B" %}

1. Click the Data tab to access data management features.
2. Select the table you want to sync in the sidebar
3. Open the Syncing menu to view or manage data synchronization options.
4. Click Sync Now to manually update the data and ensure the latest information is displayed.
5. This process might take a few minutes but you will be notified once it's complete

### How do I manually sync a data source?

{% @arcade/embed url="<https://noloco.share.arcade.software/share/likl1j4dCUMc17iZ7bcT>" flowId="likl1j4dCUMc17iZ7bcT" %}

1. Open the Data tab to begin managing and syncing your tables.
2. Click the more options icon next to the Data Source to access advanced table actions.
3. Select Queue data sync to start synchronizing all the tables in the connected source and ensure your data is up to date.
4. You'll receive an email when the process is complete

### How do I manually sync a data source schema?

{% @arcade/embed url="<https://noloco.share.arcade.software/share/xDd9T04Cuc5eUnUZjNrl>" flowId="xDd9T04Cuc5eUnUZjNrl" %}

1. Open the Data tab to access data management features in the portal.
2. Click the more options icon next to the data source you want to sync to reveal additional data actions or settings.
3. Select Queue schema sync to update your data schema and reflect structural changes.
4. You'll receive an email when the process is complete


---

# Agent Instructions: Querying This Documentation

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

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://guides.noloco.io/data/data-overview/syncing.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
