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

# Cache Tables for Faster Apps and Dashboards

Register your tables for caching so apps and dashboards load from WisdomAI-managed snapshots instead of querying the warehouse.

When you register a table, WisdomAI builds a compressed snapshot on a schedule and serves queries from it. Queries the cache can't serve run against the warehouse. Caching changes how fast users get answers, never the answers themselves. Row-level security and column masking still apply at query time.

> [!NOTE]
>
> Wisdom Smart Cache is in beta and is enabled per account. Contact your WisdomAI representative to turn it on.

## Register tables for caching

You can register every cacheable table in a database at once, or register one table at a time. Tables that can't be cached, such as uploaded files or tables over the size budget, are skipped. See [Cache status](#cache-status).

First, open the database:

1. Go to **Domains** and select a domain.
2. Open **Data Sources** and choose a database.

![Domains and Data sources steps](https://mintcdn.com/wisdomai/EhqsRbYZB7p8nMlp/images/first-steps-cache.png?fit=max\&auto=format\&n=EhqsRbYZB7p8nMlp\&q=85\&s=90f819a8cc6a2ff35fce0a2b5f171773)

Then choose how to register your tables.

### Register all cacheable tables

1. Select the cache button next to **Add table**.
2. Choose a rebuild interval: hourly, 3, 6, 12, or 24 hours, or Custom.
3. Select **Register**.

![Image showing how to register a cache](https://mintcdn.com/wisdomai/dr361whiLxfdnSgY/images/register-cache.png?fit=max\&auto=format\&n=dr361whiLxfdnSgY\&q=85\&s=54371a75d12c79191d782ea677fe3777)

All tables in the database use the interval you chose.

### Register a single table

1. Open the table's **...** menu and select **Cache Settings**.

   ![Image showing cache settings for a table](https://mintcdn.com/wisdomai/ybDViIeTjJhJvS9G/images/cache-settings.png?fit=max\&auto=format\&n=ybDViIeTjJhJvS9G\&q=85\&s=5118a159d6138ee029ad9c4cb3f7d214)

2. In the **Register Cache** dialog, choose a rebuild interval.

   ![Image showing cache schedule](https://mintcdn.com/wisdomai/dr361whiLxfdnSgY/images/select-rebuild-schedule-cache.png?fit=max\&auto=format\&n=dr361whiLxfdnSgY\&q=85\&s=715d1966a34aa45a71b44136435e8cc7)

3. Optional: Add sort columns. Choose the columns you filter on most often, so filtered queries scan less of the snapshot.

   ![Image showing Add sort column](https://mintcdn.com/wisdomai/uPZsg8Olbx7bx9EH/images/advance-settings-add-sort-column.png?fit=max\&auto=format\&n=uPZsg8Olbx7bx9EH\&q=85\&s=863ef92e3edde11e29a9773c1800d94a)

4. Click **Register** to confirm the registration.

> [!NOTE]
>
> **Build now** applies to both registration methods. Select it to build snapshots immediately instead of waiting for the first scheduled build.

### What happens next

A newly registered table shows the **Registered** status until its first build finishes. It then shows **Cached** and starts serving queries.

## Cache status

Registered tables show a status chip:

| Status | Meaning |
| - | - |
| **Cached** | The snapshot is serving queries. |
| **Stale** | The snapshot expired. Queries read from the warehouse until the next build. |
| **Registered** | The table is registered but not built yet. |
| **Not eligible** | The table is over the size budget. **Build now** retries it. |
| **Not cached** | The table is not cached. |
| **Unsupported** | The table can't be cached, for example uploaded files or connections that use per-user credentials. |

## How rebuilds work

A table rebuilds when its interval has elapsed and its source data changed. If the warehouse reports no change, WisdomAI keeps the existing snapshot at no warehouse cost. **Build now** forces a rebuild.

Cache rebuild cadence is separate from column-value crawl cadence. Column-value crawls default to every 7 days and you configure them per domain. Changing one setting doesn't change the other.

Cache builds run as jobs. Site admins and superusers can pause, resume, re-schedule, or cancel them from the **Jobs** page at `/jobs`.

## Turn caching off for a domain

To stop a domain from serving queries from the cache, turn off its table cache setting.

1. Go to **Domains** and select a domain.
2. Open **Advanced settings** > **Performance**.
3. Turn off **Materialized table cache**.

![Image showing cache performance](https://mintcdn.com/wisdomai/ybDViIeTjJhJvS9G/images/cache-performance.png?fit=max\&auto=format\&n=ybDViIeTjJhJvS9G\&q=85\&s=b19c6da31a3b1f0265b4cf604a37d60e)

WisdomAI keeps your registrations, and queries stop reading from the cache.

## Security

Caching never changes who can see your data.

* Row-level security and column masking always apply at query time. Caching never widens what a user can see.
* Data that depends on the querying user is never cached.

## Size limits

WisdomAI skips very large tables and marks them **Not eligible**. **Build now** retries them.

## Related articles

> [card] [The Smart Cache screen](https://docs.wisdom.ai/setting-up-wisdom-ai/smart-cache.md)
>
> Monitor cache usage and find the apps and dashboards that benefit most from caching.

> [card] [Cached data on dashboards and apps](https://docs.wisdom.ai/dashboards/cached-data.md)
>
> See how cached data appears to dashboard viewers and how Refresh Data behaves.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.